Digital Read
Last updated
Last updated
Tento příklad ukazuje, jak monitorovat stav stisknutí tlačítka přes sériovou linku mezi IODA a PC.
IODAG3E
tlačítko
kabely
10kΩ rezistor
nepájivé kontaktní pole
Tlačítko SW1 připojíme mezi pin X01 a zem GND, dále připojíme pullup rezistor R1 o nominální hodnotě 1K mezi pin X01 a pin 3V3.
Ve stavu, kdy je tlačítko rozepnuto, z pinu 3V3 do pinu X01 neprotéká teoreticky žádný proud (prakticky velmi malý proud). To z toho důvodu, že pin X01 je nastaven jako Digital Input a má velmi vysoký vstupní odpor. V takovém případě je na napětí na pinu X01 rovno napětí 3V3. V případě, že stiskneme tlačítko, začne protékat proud z pinu 3V3 přes rezistor R1 do země (pinu GND). V takovém případě je na X01 stejný potenciál jako na pinu GND, tedy napětí rovno 0V.
V hlavičce programu je nutné importovat knihovny Byzance Hardware API a Mbed API. pomocí
Poté nasledují dva konstruktory definující objekt sériové linky a objekt digitálního vstupu.
Při každém spuštění programu se nejprve provede funkce init(), která primárně slouží k inicializaci všech objektů a proměnných.V tomto případě pouze inicializujeme rychlost komunikace sériové linky.
V samotném programu, tedy v nekonečné smyčce loop(), poté kontrolujeme stav stisknutí tlačítka pomocí funkce read() a na základě toho rozhodujeme, kterou zprávu vypsat do sériové linky.
V poslední části kódu je vlákno programu uspáno na 100 milisekund.