python aall about

100% Fact :What exactly is MicroPython?

100% Fact :What exactly is MicroPython? Micropython logo.
microphyton

What exactly is Micro Python?

Micro Python is written specifically for the Python 3 programming language and was designed for microcontrollers and microcomputers. It is a contender for Python 2, in that it implements high-level language features into low-level firmware environments. Micro Python is optimized to work within operating systems and smaller shells while bringing in a smaller subset of standard Python 3 libraries.

The Micro Python firmware has one of the highest memory-to-RAM footprints of any low-level programming language, with 256 K and 16 K of space. MicroPython provides users with high-level programming tools like arbitrary precision integers, object-oriented programming, generators, closures, exception handling, and list comprehension, even in limited code space and memory. Typically, such features are not available in typical microcontroller programming. These features are available with access to low-level hardware by way of the Micro Python firmware.

In addition to the Micro Python compiler, the runtime code includes a prompt called REPL, which allows users to execute instructions directly from a personal computer as-is on an embedded system. The instructions correspond to the extent it is downloaded via UART from the PC into the target microcontroller board. COM ports are used to communicate with the host PC.In quickening and dynamic testing and defect analysis of embedded systems, this function is advantageous.

One of the notable high-level programming languages offered in Python is multiprocessing. Normally, bare metals are devoid of multiprocessing ability. The multiprocessing feature of Python firmware enables embedded programs to be sped up by completing several tasks from a single microcontroller and permits out-of-the-ordinary program procedures.

Micro Python is open source

Micro Python is available for downloading as a closed-source executable without restrictions. It’s available for all users as the Fourth Amendment; many modules and libraries are available from the MIT license, which is technically modified. MicroPython can be used as a learning aid or teaching tool, and you are able to modify and use it freely for your own needs. It’s an open-source project with source code available on Github. Being an open-source project, Micro Python is predominantly open for community contributions. If you are interested in a specific version of the firmware, microcontroller, port, or feature when targeting a different hardware platform, microcontroller, port, or feature, visit the official website for Micro Python and download the appropriate edition.

Micro Python versus Python

Micro Python is mostly an adaptation of Python 3.4 with some dynamic only Python 3.5 and above functions. A lot of classic Python-based libraries were rewritten in C99 to function in bare-metal environments of microcontrollers and microcomputers (without an OS) as a part of MicroPython. MicroPython is based on the re-implementation of only a subset of standard Python libraries. It is also a subset of Python. The libraries selected for re-implementation are those that can be useful for programming embedded systems or programmatically improving embedded applications.

Micro Python may deviate in syntax and characteristics with that of comparable operators, functions, and libraries of customary Python in quite a few scenarios. Many of those discrepancies are explained at the following link. Except for a small number of differences in syntax and programming noted in the post above, most of the MicroPython syntax and programming is in conformity with the documentation of customary Python.

A microcontroller board, RTOS, or operating system provided by MicroPython is called a MicroPython Port. It is important to be aware that some elements of core MicroPython may not be accessible on a particular port, i.e., it may not be supported in a given microcontroller, RTOS, or operating system. Also, a particular port may possess additional PMs and extend the functionality of Micro Python.

Supported Boards and Micro Python ports

Micro Python is supported on a vast assortment of platforms, including x86, x86-64, ARM-Thumb, and Xtensa. It is remarkably fast, with code execution possible at speeds up to 168 MHz. The official microcontroller board supported by MicroPython is the pyboard. The pyboard has the following distinctive characteristics.

> STM32F405RG microcontroller

-> 168 MHz Cortex M4 CPU with hardware floating point

-> 1024KiB flash ROM

-> 192KiB RAM

-> Micro SD card slot

-> Micro-USB port

-> On-board 3-axis accelerometer and RTC

-> 29 GPIO; 3x 12-bit ADC available on 16 pins 4 with analog ground shielding and 2x 12-bit DAC available on pins X5and X6.

Micro Python is an extensive tool that’s compatible with the MicroPython firmware of STMicroelectronics. Discussed here are some of such boards.

-> Espruino Pico (STM32F401CD)

-> BLACK STM32F407VET6 (STM32F407VE)

-> BLACK STM32F407ZET6 (STM32F407ZE)

-> BLACK STM32F407ZGT6 (STM32F407ZG)

-> FEZ Cerb40 II (STM32F405RG)

-> G30HDR Module (STM32F401RE)

-> FEZ Lemur (STM32F401RE)

-> Netduino Plus 2 (STM32F405RG)

-> OpenMV (STM32F765)

-> HY-STM32F4xxCore144 Core/Dev Board (STM32F407ZGT6)

-> HydraBus V1.0 (STM32F405RG)

-> Olimex STM32-405STK (STM32F405RG)

-> Olimex STM32-E407 (STM32F407ZG)

-> NUCLEO F401RE (STM32F401RE)

-> STM Discovery STM32F401 (STM32F401VC)

-> STM Discovery STM32F407 (STM32F407VG)

-> STM Discovery STM32F429 (STM32F429ZI)

-> STM Discovery STM32F746G (STM32F746NG)

-> STM32F407VET6 Mini (STM32F407VE)

In addition to the aforementioned microcontrollers of STMicroelectronics, MicroPython supports the following platforms for embedded systems.

-> ESP32

-> ESP8266

-> Micro:Bit

-> WiPy and CC3200

-> Pyboard D-Series

-> Teensy 3.X

-> Adafruit Circuit Playground Express

-> Arduino Due

-> Cypress FreeSOC

-> Raspberry Pi Pico

100% Fact :What exactly is MicroPython? h h lqCeirxAnNFdXVFxZG2LAlhFauFX5fCS fs8smfQNGT8jqxYkYHpqmGeRLeQrJOF1t

python- STMicroelectronics —
Some STMicroelectronics microcontrollers listed above may also be supplemented by MicroPython.

Micro Python libraries

The core Micro Python includes usage of several standard Python 3.4 libraries, which contains an array, binascii, builtins, cmath, collections, errno, gc, hashlib, heapq, io, json, math, os, random, re, select, socket, ssl, struct, sys, time, uasyncio, zlib, and _thread. Other libraries incorporated within MicroPython are hardware-specific. These are classified as micro-libraries.

Port-specific libraries

Popular microcontroller boards and real-time operating systems give you additional functions and core microcontroller functions. MicroPython includes libraries specific to particular microcontroller boards and real-time operating systems to take advantage of their exclusive features. For example, the port of MicroPython for pyboard includes libraries like pyb, stm, and lcd160cr. The port-specific version of MicroPython for WiPy includes wipy library and additional classes like ADCChannel, TimerChannel, TimerWiPy, and ADCWiPy. The port-specific version of MicroPython for ESP8266 and ESP32 boards includes esp and esp32 packages. The rp2 package is additionally included in the MicroPython version for Raspberry Pi Pico. An additional module, zephyr, comes packaged in the MicroPython version for Zephyr RTOS.

More libraries from micropython-lib Python include

The core Micro Python modules are called umodules in the MicroPython language. Apart from the standard Python libraries rewritten to form core MicroPython, many other standard Python libraries have been rewritten as core MicroPython projects. These libraries can be accessed as a separate distribution in the form of micropython-lib.

Most operated by these libraries/modules use the FFI API to suit their OS-specific needs. That’s why micro python-lib is usable only on hosts with POSIX-compliant operating environments like Linux, FreeBSD, Solaris, macOS, etc. Although it does not support Windows, micro python-lib modules require package or zip extraction done using the upip or upzip commands.

Extending MicroPython libraries

It is possible to extend the built-in modules of micro Python beyond available in the standard library. Users may implement modules named module.py instead of using the standard MicroPython umodule which they import directly. Many customs the functionality of many of these libraries are written in a similar way.

Conclusion

Technology enthusiasts are enthusiastic about Micro Python, which follows the success of the Arduino. One reason for this is that Micro Python It helps developers of networked apps as well as backing big artificial intelligence (AI) functions in Python.

resource video :What is micro phyton? https://youtu.be/YyQk2Vj1zZw