Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
Detta projekt är gjort för mac -användare men det kan också implementeras för Linux och Windows, det enda steget som borde vara annorlunda är installationen.
Steg 1: Programvaruinstallation
- Ladda ner och installera Arduino ->
- Ladda ner och installera Python 2.7 ->
- Ladda ner Python -biblioteket "pyserial -2.7.tar.gz" ->
- Packa upp pyserial-2.7.tar.gz
- Öppna terminalen och skriv:
cd /users/"Your-User-Account"/Downloads/pyserial-2.7
sudo python setup.py installera
Programinstallation klar!
Steg 2: Kabeldragning
- Arduino Uno
- Sparkfun 12 -knapps knappsats
Ledningarna görs utan externa motstånd, istället använde jag mikrokontrollerens interna pullup-resistorer (interna pullup-resistorer i Arduino har ett värde på 20K-Ohm till 50K-Ohm)
För att aktivera de interna pullup-resistorerna, sätt INPUT-Pins HIGH i koden
Om du använder en annan knappsats, titta på databladet för rätt kabeldragning, annars kan det skada din mikrokontroller
Steg 3: Arduino -kod
- Först definierar vi en tecken-matris för nycklarna
- Knappsatsen använder normala switchkontakter som är arrangerade i 4 rader (stift 7, 2, 3 och 5) och 3 kolumner (stift 6, 8 och 4), definieras som Arrays rowPins och colPins
-
Setup () -funktionen
- Öppna serieporten med Serial.begin ();
- Ange kolumner som OUTPUT-Pins HIGH
- Aktivera pullup-resistorerna, för att göra de här raderna som INPUT-Pins HIGH;
-
Getkey () -funktionen
- Ställ in varje rad LÅG och testa om en av kolumnerna är LÅG. På grund av pullup-resistorerna är alla rader HIGH tills en tangent trycks ned. Den tryckta nyckeln genererar en LÅG-signal vid INPUT-stiftet. Denna LÅG anger den tryckta nyckeln i den här raden och kolumnen
- Vänta tills nyckeln släpps och returnerar tangenten för nyckelkarta-Array eller 0 om ingen nyckel har tryckts in
- Använd en fördröjning (debounceTime) för att stabilisera signalen
Steg 4: Python_2.7 -kod
- Importera seriebiblioteket
- Definiera en variabel ansluten = FALSK, senare används denna variabel för att testa om den seriella anslutningen är tillgänglig eller inte
-
Öppna Serial Port med serial. Serial ("Namn på din Serial Port", baud)
- För att få namnet på din seriella port klickar du på -> Verktyg/Seriell port i Arduino IDLE
- baud bör vara samma som i Arduino -koden
- I ett stund -loop -test om anslutningen är tillgänglig eller inte läser den seriella signalen och ställer in variabeln ansluten = TRUE, slingas den tills den får seriell anslutning
- Efter anslutningen läser du serien i en stundslinga och lägger denna ingång i en ny variabel "var"
- stäng porten med ser.close ()
Rekommenderad:
Raspberry PI 3 - Aktivera seriell kommunikation till TtyAMA0 till BCM GPIO 14 och GPIO 15: 9 steg
Raspberry PI 3 - Aktivera seriell kommunikation till TtyAMA0 till BCM GPIO 14 och GPIO 15: Jag hade nyligen intresse av att aktivera UART0 på min Raspberry Pi (3b) så att jag kunde ansluta den direkt till en RS -232 signalnivåenhet med en standard 9 -nål d-sub-kontakt utan att behöva gå via en USB till RS-232-adapter. En del av mitt intresse
Arduino seriell kommunikation: 5 steg
Arduino seriell kommunikation: Många Arduino -projekt är beroende av att överföra data mellan flera Arduinos. Oavsett om du är en hobbyist som bygger en RC -bil, ett RC -flygplan eller designar en väderstation med en fjärrkontroll, måste du veta hur du på ett tillförlitligt sätt överför serier
PIC MCU och Python seriell kommunikation: 5 steg
PIC MCU och Python seriell kommunikation: Hej killar! I detta projekt kommer jag att försöka förklara mina experiment med PIC MCU och Python seriell kommunikation. På internet finns det många självstudier och videor om hur man kommunicerar med PIC MCU över virtuell terminal vilket är mycket användbart. Howev
Trådlös seriell kommunikation med Bluefruit: 4 steg
Trådlös seriekommunikation med Bluefruit: Här är en enkel steg -för -steg -guide för att byta ut dina ledningar med en Bluetooth -lågenergianslutning: Det tog mig ett tag att ta reda på det eftersom det knappast finns någon dokumentation om hur man gör detta med modern Bluetooth -lågenergiteknik som t.ex. som Bluefrui
Webbaserad SmartMirror med seriell kommunikation: 6 steg
Webbaserad SmartMirror med seriell kommunikation: Den här instruktionen levereras med all kod redo att användas. Utvecklingen var mycket komplicerad men när den väl är inställd är den väldigt enkel att anpassa. Ta en titt och njut;)