Please note: Even though I'm specifically talking about an RTOS called Embox here, and even though I'm talking about AVR/ARm, I think this question can be answered by anybody whose ever done a fair amount of C-based MCU programming.
I'm interested in building Embox locally on my machine and seeing if I can flash/deploy it to an AVR/ARM-based MCU. Unfortunately I'm on Windows 7, and so I had to install MinGW to get access to things like GCC (g++
, make
, etc.) I have written a simple "Hello World" C program and got it building successfully into a helloworld.exe
executable.
I cloned Embox and followed their instructions for buildig their ARM-STM32_V1 template, but ran into a slew of errors that I'm still wading through. Don't worry, that's not my question here. What I am wondering, since I'm currently blocked, is much more basic and fundamental to the understanding of RTOSes and MCU programming:
- What is the deployable unit(s) of Embox? That is, when its all said and done, what file(s) will I be flashing on to the MCU, effectively deploying the RTOS to it?
- How do you deploy these files to an MCU? Can I assume SPI, UART, USART, JTAG, etc. are the usual suspects? How can I tell what approach is compatible with Embox and/or the MCU?
- How do you configure the MCU to start Embox when the chip powers on? Or does that happen for you as a result of flashing the files to the MCU?
If someone could help answer these, I think I'll have a much better understanding of the "big picture" behind MCU-based programming.