This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:iot-open:scriptingprogramming:micropythonfundamentals [2023/10/01 18:07] – ToDo checked: Intro to Micropython, explain the idea, installation concept (e.g. RP2040), compare to regular one (move "note" from hardware section) and present sample coding using terminal (GKTerm). pczekalski | en:iot-open:scriptingprogramming:micropythonfundamentals [2024/05/24 09:54] (current) – [Installation] pczekalski | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | === === | + | ======Micropython====== |
- | <box # | + | {{: |
- | <box # | + | |
- | ===Micropython=== | + | |
- | <box # | + | |
- | <box # | + | |
MicroPython implements the Python programming language optimized for microcontrollers and embedded systems that are resource-constrained devices. It is simple and enables rapid prototyping. | MicroPython implements the Python programming language optimized for microcontrollers and embedded systems that are resource-constrained devices. It is simple and enables rapid prototyping. | ||
Line 16: | Line 11: | ||
- MicroPython has a growing community, shared libraries and sample projects. A package manager called " | - MicroPython has a growing community, shared libraries and sample projects. A package manager called " | ||
- MicroPython is released under an open-source license (typically the MIT License). | - MicroPython is released under an open-source license (typically the MIT License). | ||
- | - MicroPython is designed to be power-efficient, | + | - MicroPython is designed to be power-efficient, |
- While Micropython is not a real-time operating system (RTOS) itself, it can be used in conjunction with RTOSes to build real-time systems, if only needed. | - While Micropython is not a real-time operating system (RTOS) itself, it can be used in conjunction with RTOSes to build real-time systems, if only needed. | ||
- MicroPython is a popular choice for educational purposes: thanks to REPL, the setup of the SDK is simple and quick. | - MicroPython is a popular choice for educational purposes: thanks to REPL, the setup of the SDK is simple and quick. | ||
- | == Installation == | + | ===== Installation |
- | Installation of the Micropython usually involves flashing firmware, specific | + | Installation of Micropython usually involves flashing firmware specific |
- | A website that is a starting point for Micropython is micropython.org((https:// | + | A website that is a starting point for Micropython is Micropython.org ((https:// |
The installation procedure is specific to the hardware platform and sometimes differs slightly from flashing C++-based solutions or burning an OS, as in the case of the RP2040. The main steps to prepare a working environment are presented below: | The installation procedure is specific to the hardware platform and sometimes differs slightly from flashing C++-based solutions or burning an OS, as in the case of the RP2040. The main steps to prepare a working environment are presented below: | ||
* Download a Micropython binary image suitable for your hardware. | * Download a Micropython binary image suitable for your hardware. | ||
* Switch the MCU into the bootloader mode that exposes a flash drive: in the case of the RP2040, the easiest way is to hold down the //Bootsel// button and power on the device while holding. | * Switch the MCU into the bootloader mode that exposes a flash drive: in the case of the RP2040, the easiest way is to hold down the //Bootsel// button and power on the device while holding. | ||
- | * Move the firmware file into the flash drive; the device will flash and reboot. | + | * Move the firmware file into the flash drive; the device will flash the file to the memory |
* Connect to the serial port exposed. | * Connect to the serial port exposed. | ||
- | == Development == | + | ===== Development |
- | Once Micropython is installed in the device, it exposes a terminal (REPL) via serial port, either on the dedicated GPIOs for serial or via serial over USB. Developing directly inline is possible (samples are presented in the following chapters), but is not convenient for complex code. Complex and multi-file solutions can benefit from uploading files (even multiple) to the device. A file named '' | + | Once Micropython is installed in the device, it exposes a terminal (REPL) via serial port, either on the dedicated GPIOs for serial or via serial over USB. Developing directly inline is possible (samples are presented in the following chapters), but it is not convenient for complex code. Complex and multi-file solutions can benefit from uploading files (even multiple) to the device. A file named '' |
IDEs use those features to simplify development and enable remote code authoring and execution. | IDEs use those features to simplify development and enable remote code authoring and execution. | ||
- | <todo @pczekalski # | + | |
+ | Sample | ||
+ |