AINA: Fältet Lab med Edison IoT (9 / 12 steg)
Steg 9: Lägga till UI för att anropa Bluetooth
AINA har en inga mänskliga gränssnittet hittills, men nu behöver vi ett sätt att interagera med den för att aktivera Bluetooth.
Enklaste gränssnittet är att lägga till en knapp och LED Bar. När knappen trycks, kommer edison vända på bluetooth och börja kant. Under denna tid kommer att LED Bar cykla, sortera av en Larson Scanner effekt, som tillhandahåller visuell feedback.
Knappen enhetstest-
- grundläggande Läs testet
- åberopar yttre skal/ansökan
LED Bar Larson skannertestet
Denna python kod instansierar ett LED Bar objekt och implementerar Larson Scanner effekten...
Importera tid, sys, signal, atexit
importera pyupm_my9221 som upmMy9221
# Skapa en instans av en MY9221, vi använder D2 för data och D3 för den
# data klocka. Detta testades med Grove LED bar.
myLEDBar = upmMy9221.MY9221 (6, 7)
# Exit hanterare
def SIGINTHandler (signum, ram):
höja SystemExit
def exitHandler():
myLEDBar.setBarLevel (0, True)
skriva ut "Avslutar"
sys.Exit(0)
# Den här funktionen kan du köra kod på exit
atexit.register(exitHandler)
# Den här funktionen slutar python från utskrift en stacktrace när du trycker Ctrl-C
signal.signal (signal. SIGINT, SIGINTHandler)
directionBool = sant
Level = 1
x = 0
While(1):
# Om det är mindre än 10
# tänds lampan nu
# call show_LED igen i 50 ms
om (nivå < = 10):
myLEDBar.setBarLevel (nivå, directionBool)
nivå + = 1
# Byta LED-belysning mellan belysning cykler
annat:
directionBool = inte directionBool
Level = 1
Time.Sleep(1)
Time.Sleep(.05)
x += 1
Start/Monitor Bluetooth åkallan
I avsnittet Bluetooth setup för detta. För närvarande undersöker vi fortfarande hur till vända på/av/par bluetooth-funktionaliteten från ett skript.