micropython/ports/bare-arm
Damien George 43a8c8178e bare-arm: Switch to use MICROPY_ERROR_REPORTING_NONE to reduce size.
Reduces size of this port by about 3300 bytes, and demonstrates how to use
this feature.

Signed-off-by: Damien George <damien@micropython.org>
2021-04-27 23:52:40 +10:00
..
Makefile bare-arm: Switch to use MICROPY_ERROR_REPORTING_NONE to reduce size. 2021-04-27 23:52:40 +10:00
README.md bare-arm: Switch to use MICROPY_ERROR_REPORTING_NONE to reduce size. 2021-04-27 23:52:40 +10:00
lib.c bare-arm: Clean up the code, make it run on an F405, and add a README. 2021-03-19 14:20:26 +11:00
main.c bare-arm: Clean up the code, make it run on an F405, and add a README. 2021-03-19 14:20:26 +11:00
mpconfigport.h bare-arm: Switch to use MICROPY_ERROR_REPORTING_NONE to reduce size. 2021-04-27 23:52:40 +10:00
mphalport.h ports: Make new ports/ sub-directory and move all ports there. 2017-09-06 13:40:51 +10:00
stm32f405.ld bare-arm: Clean up the code, make it run on an F405, and add a README. 2021-03-19 14:20:26 +11:00
system.c bare-arm: Clean up the code, make it run on an F405, and add a README. 2021-03-19 14:20:26 +11:00

README.md

The bare-arm port

This port is intended to be the bare-minimum amount of code and configuration required to get MicroPython compiling and running on a bare-metal ARM-based target. No external dependencies or libraries are needed for this build and it shows exactly what hardware and system functionality MicroPython needs to run.

To build, simply run make in this directory. The output will be build/firmware.elf (and also corresponding .bin and .dfu files). This firmware can run on an STM32F405-based board (eg a PYBv1.x) and make deploy will program it to such an MCU when put in USB DFU mode. The output is a UART at 115200 baud, with TX on PA0.

There are some simple demonstration code strings (see main.c) which are compiled and executed when the firmware starts. They produce output on the system's stdout.

The size of the firmware (the machine code that is programmed to the microcontroller's flash/ROM) is currently around 57900 bytes.