edu-kit1-examples

V kořenovém adresáři připraveného ESP32 jsou soubory boot.py a main.py.
Právě soubor main.py je určen pro naše programy (které se spouští po nastartování ESP)

Aktuální kód je na: https://github.com/octopusengine/octopuslab-edu-kit1/blob/master/examples/edu_kit1/main01.py
Tento výchozí main.py je velmi jednoduchá úkázka spráce mikrokontroléru s hardware. Zároveň také provede základní test celého hw modulu.

...
led = Led(2) # ukázka hardcode nastavení na PIN 2
led.blink()

# ukázka použití konfigurace k nastavení na PIN WS 
ws = Rgb(pinout.WS_LED_PIN,io_conf.get('ws'))
ws.simpleTest()

d7 = disp7_init()  # 7segment (8digit) display init

ws.rainbow_cycle()
ws.color((0,0,0))

for i in range(9):
    d7.show(10-i)
    sleep(0.3) 

Další ukázky jsou pak v adresáři /examples a také opět na githubu:
https://github.com/octopusengine/octopuslab/tree/master/esp32-micropython/examples


Ukázky můžeme spouštět různým způsobem. Nejčastěji to bude z prostředí emulátoru linuxového shellu, který vyvoláme:
>>> shell()
Pokud běží nějaký program, musí se před tím jeho běh přerušit pomocí CTRL+C

$ run examples/blink.py
Prostředí Micropythonu neumožní plnohodnotnou práci, využíváme ho v jistém omezeném režimu, s tím je nutno při práci počítat.

Předchozí spuštění je blokující a je nutno ho ukončit CTRL+C
Program můžeme spouštět i jako samostatný proces ve vlastním "threadu" (vlákně) - následujícím způsobem:
$ run examples/blink.py &
Je to určeno znakem & na konci příkazu.

Pokud máme napsaný program tak, že přijímá i parametry, dá se předat parametr klasicky:
$ run examples/blink_param.py 100
Parametr "100" zde určuje rychlost blikání.

Led

Pro sítivou Led diodu, máme napsanou třídu Led. Při vytváření instance je parametrem PIN, na kterém Led má být. V základní ukázve využíváme toho, že na modulu ESP32-DoIt je vestavěná malá modrá SMD, dostupná na pinu 2.

from util.led import Led
led = Led(2) # ukázka hardcode nastavení na PIN 2
led.blink() 

Základní ukázka:
https://github.com/octopusengine/octopuslab/blob/master/esp32-micropython/examples/blink.py 

WS-RGB Led

Barevná RGB dioda

ws = Rgb() 
ws = Rgb(pinout.WS_LED_PIN,io_conf.get('ws'))
ws.simpleTest() 
ws.rainbow_cycle()
ws.color((0,0,0)) 

Disp7

Sedmisegmentový displej (osmiznakový)

d7 = disp7_init()  # 7segment (8digit) display init 

Wifi, BLE, …