yueqing ling

yueqing ling

  • NA
  • 2
  • 540

Embedded Linux-picking the right microcontroller

Jan 20 2018 3:14 AM
I am having trouble picking a microcontroller/processor for a robotics project in C++. I have a program working on my computer that is 1.5+ KLOC and relies on data in twenty other files to function, so please do not suggest I use another language. I tried translating it to C, but could not get it to work, perhaps because of the program's heavy reliance on fstream and strings. The program is about 1 MB on my computer right now and takes up 3 MB while running, so I suppose the microcontroller/processor would need either to be capable of supporting 4 MB of ram if it is von-Neumann( https://en.wikipedia.org/wiki/Von_Neumann_machine ) /MHA and 1 MB of flash and 3 MB of ram for Harvard. I need PWM, SPI and UART/USART on the processor to communicate with other sensors, and I plan to use a hard drive for the other files and external ram for the program and its data. I will need at least 90 IO pins (40 IDE + 40 servos + sensors).
 
Summary:
  • >90 IO pins
  • PWM
  • SPI
  • UART/USART
  • if von-Neumann/MHA, capable of supporting >4 MB of ram
  • if Harvard, >1 MB program flash and >3 MB of ram
  • supports C++
What do you suggest? Please also provide information on how to program the processor, if possible.
 
So far, I have found Freescale’s i.mx25, but I am not sure how to connect this processor to my computer for programming, if it uses C++, or the details of how to turn my current Windows .exe program into a .hex compatible with this processor.