zephyr/README: Update for the current featureset, add more info.
This commit is contained in:
parent
938c693948
commit
aee6483536
|
@ -6,12 +6,20 @@ This is an initial port of MicroPython to Zephyr RTOS
|
||||||
|
|
||||||
The port integrates well with Zephyr build system, using the latest
|
The port integrates well with Zephyr build system, using the latest
|
||||||
features which will be available in 1.6.0, and thus requires Zephyr
|
features which will be available in 1.6.0, and thus requires Zephyr
|
||||||
master to build against. All boards supported by Zephyr should be
|
master to build against. All boards supported by Zephyr (with standard
|
||||||
supported (but not all were tested).
|
level of feature support, like UART console) should work with
|
||||||
|
MicroPython (but not all were tested).
|
||||||
|
|
||||||
At this time, only basic interactive prompt (REPL) over UART connection
|
Features supported at this time:
|
||||||
is supported. Over time, bindings for various Zephyr subsystems may
|
|
||||||
be added.
|
* REPL (interactive prompt) over Zephyr UART console.
|
||||||
|
* `utime` module for time measurements and delays.
|
||||||
|
* `machine.Pin` class for GPIO control.
|
||||||
|
* "Frozen modules" support to allow to bundle Python modules together
|
||||||
|
with firmware. Including complete applications, including with
|
||||||
|
run-on-boot capability.
|
||||||
|
|
||||||
|
Over time, bindings for various Zephyr subsystems may be added.
|
||||||
|
|
||||||
|
|
||||||
Building
|
Building
|
||||||
|
@ -36,10 +44,33 @@ supported boards.
|
||||||
Running
|
Running
|
||||||
-------
|
-------
|
||||||
|
|
||||||
To run the resulting application in QEMU (for BOARDs like qemu_x86,
|
To run the resulting firmware in QEMU (for BOARDs like qemu_x86,
|
||||||
qemu_cortex_m3):
|
qemu_cortex_m3):
|
||||||
|
|
||||||
make qemu
|
make qemu
|
||||||
|
|
||||||
For deploying/flashing the application on a real board, follow Zephyr
|
For deploying/flashing a firmware on a real board, follow Zephyr
|
||||||
documentation for a given board.
|
documentation for a given board.
|
||||||
|
|
||||||
|
|
||||||
|
Quick example
|
||||||
|
-------------
|
||||||
|
|
||||||
|
To blink an LED:
|
||||||
|
|
||||||
|
import time
|
||||||
|
from machine import Pin
|
||||||
|
|
||||||
|
LED = Pin(("GPIO_1", 21), Pin.OUT)
|
||||||
|
while True:
|
||||||
|
LED.value(1)
|
||||||
|
time.sleep(0.5)
|
||||||
|
LED.value(0)
|
||||||
|
time.sleep(0.5)
|
||||||
|
|
||||||
|
The above code uses an LED location for a FRDM-K64F board (port B, pin 21;
|
||||||
|
following Zephyr conventions port are identified by "GPIO_x", where *x*
|
||||||
|
starts from 0). You will need to adjust it for another board (using board's
|
||||||
|
reference materials). To execute the above sample, copy it to clipboard, in
|
||||||
|
MicroPython REPL enter "paste mode" using Ctrl+E, paste clipboard, press
|
||||||
|
Ctrl+D to finish paste mode and start execution.
|
||||||
|
|
Loading…
Reference in New Issue