Embedded programming

Group assignment

  • compare the performance and development workflows for other architectures

The Arduino IDE offers a more convinient environment to develop and flash boards. The complexity may vary depending on the microcontrollers used and boards. Any Arduino board should just work and users can focus on the implementation by using C language and higher level libraries to program the microcontroller.

But if you need a more detailed controll of the microcontroller, lower code memory footprint and you can use C language with specific microcontroller libraries that allow to program the microcontrollers in more detail (while reading the datasheet).

Besides the toolchain in use that goes along with the microcrontroller you are using there is the need to select the platform that suits better what you need for your project. There are the Xtensa microprocessors that are used in the ESP32. These provide more memory, cpu speed and even allow to connect to wifi at a relative low cost.

For a still low budget you have RaspberryPi computer that uses a ARM processor. This is more close to a home computer and allows to run an operating system on it and use different programming languages to use i/o and interact with the physical world. It has event more cpu speed, memory and allows to have external storage.

Individual assignment