I have an Pro MX7 that I want to use as a development platform for a project and have a question on performance differences between MPIDE and MPLAB X. From what I understand, MPIDE is an Arduino-like environment that works with a lot of Arduino libraries. I like the sound of that because it could make things "easier" to just use a library than create it all myself and Arduino seems to be the "go to" platform for hobbyists.
However, I wonder if MPIDE suffers from poorer performance than I'd get trying to do the same thing in MPLAB. A classic example with arduino being digitalwrite() being "expensive" in terms of performance versus directly working with the I/O port. But there are more direct ways right?
I've tried messing with MPLAB Harmony, which has libraries to cover most things I need, but to be honest I'm finding it a big confusing. I also don't know if they'd be any better/worse than arduino libraries?
The project I'm wanting to tackle is a complex one (at least for me) although on the MCU side it isn't too complex. It's a pinball machine. So, in essence it has to do the following:
Play background music
Play sound effects mixed with the music/other effects
Display animated graphics on a 128x32 dot matrix display (these need constantly refreshed at ~70Hz like a video interface, they do not store a 'frame' locally)
Read all the above from a microSD card
Control an LED matrix, probably at least two shift registers for 8x8 = up to 64 LEDs
Read from a switch matrix, again probably 8x8 = up to 64 switches
Control open drain FETs for solenoids (probably again via shift registers). Around 10-12 or so. However, I'm toying with the idea of using PWM to control the power of solenoids.
The first 3 I worry about consuming a lot of cycles because switch closures for #6 can not be missed. So my question is, would using MPIDE be viable, or do I need to work at a lower level to get enough performance? Is it doomed regardless and a second MCU would be needed to handle the A/V functions?
Question
Geomancer
Greetings!
I have an Pro MX7 that I want to use as a development platform for a project and have a question on performance differences between MPIDE and MPLAB X. From what I understand, MPIDE is an Arduino-like environment that works with a lot of Arduino libraries. I like the sound of that because it could make things "easier" to just use a library than create it all myself and Arduino seems to be the "go to" platform for hobbyists.
However, I wonder if MPIDE suffers from poorer performance than I'd get trying to do the same thing in MPLAB. A classic example with arduino being digitalwrite() being "expensive" in terms of performance versus directly working with the I/O port. But there are more direct ways right?
I've tried messing with MPLAB Harmony, which has libraries to cover most things I need, but to be honest I'm finding it a big confusing. I also don't know if they'd be any better/worse than arduino libraries?
The project I'm wanting to tackle is a complex one (at least for me) although on the MCU side it isn't too complex. It's a pinball machine. So, in essence it has to do the following:
The first 3 I worry about consuming a lot of cycles because switch closures for #6 can not be missed. So my question is, would using MPIDE be viable, or do I need to work at a lower level to get enough performance? Is it doomed regardless and a second MCU would be needed to handle the A/V functions?
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Archived
This topic is now archived and is closed to further replies.