Innehållsförteckning:
- Steg 1: Skriva ut till seriemonitorn med block
- Steg 2: Arduino -kod för seriell bildskärm förklarad
- Steg 3: Kodfelsökaren
- Steg 4: Grundläggande seriella kretsstartare
- Steg 5: Graf seriell data
- Steg 6: Prova med en fysisk Arduino -krets (tillval)
- Steg 7: Testa sedan …
Video: Arduino seriell bildskärm i Tinkercad: 7 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:43
Tinkercad -projekt »
Att hålla reda på allt som händer i ditt program kan vara en uppförsbacke. Seriell bildskärm är ett sätt att lyssna på vad som händer i din kod genom att rapportera tillbaka till datorn via USB -kabeln. I Tinkercad Circuits -simulatorn finns seriemonitorn längst ner på kodpanelen och kan också användas för att rita variabler när de ändras. Använd Serial Monitor för att "prata" med datorn som ett sätt att kontrollera om Arduino -koden gör vad du tänkt dig. Detta kan vara mycket användbart för att lösa problem med din kod (kallad "seriell felsökning").
De två kretsarna i den här lektionen använder samma konfigurationer som de två föregående lektionerna om digital ingång med en tryckknapp och analog ingång med en potentiometer. De enda skillnaderna är att dessa kretsar är ledade (inga brödbrädor) och inte har någon extern LED ansluten. Åh, och de kör kod för att generera seriella meddelanden, som vi lär oss om i den här lektionen.
Du kan följa med praktiskt taget med hjälp av Tinkercad Circuits. Du kan till och med se den här lektionen från Tinkercad (gratis inloggning krävs)! Utforska provkretsen och bygg din egen bredvid den. Tinkercad Circuits är ett gratis webbläsarbaserat program som låter dig bygga och simulera kretsar. Det är perfekt för lärande, undervisning och prototyper.
Steg 1: Skriva ut till seriemonitorn med block
Låt oss använda kodblockredigeraren för att lyssna på en Arduino -ingångsstift och sedan skriva ut värdet (analogt) eller tillståndet (digitalt) för ingången i seriemonitorfönstret. Klicka på knappen "Kod" för att öppna kodpanelen.
Klicka på Serial Monitor längst ner på kodpanelen.
Klicka på "Start Simulation" för att köra provet på Arduino -koden och observera siffrorna i Serial Monitor när du interagerar med potentiometern. Du kan klicka fram och tillbaka mellan de två Arduinos medan simuleringen körs i Tinkercad Circuits, men bara den analoga kretsen visas i den inbäddade modulen ovan.
Efter att du har kopierat provkretsen till ditt Tinkercad -konto kan du ändra koden. Navigera till kategorin Utmatningskod, dra sedan ut ett "skriv ut till seriell bildskärm" -block och placera det strax före det serieblock som redan finns i programmet.
Ändra standardtexten för att märka dina seriella data, till exempel "sensor:" (glöm inte utrymmet efter kolon) och justera rullgardinsmenyn för att skriva ut utan en ny rad.
Starta simuleringen och observera förändringen i seriemonitorn. Du kan stapla seriella block så här för att skapa användbara feedbackmeddelanden samtidigt som du utvecklar en projektkod.
Steg 2: Arduino -kod för seriell bildskärm förklarad
När kodredigeraren är öppen i Tinkercad Circuits kan du klicka på rullgardinsmenyn till vänster och välja "Block + Text" för att avslöja Arduino -koden som genereras av kodblocken (finns inte i den inbäddade modulen i det första steget). Denna kod skickar data från Arduino till seriell bildskärm, men i en senare lektion kan du också lära dig hur du tar emot data från den seriella bildskärmen och tvåvägs seriell kommunikation.
/*
DigitalReadSerial Läser en digital ingång på stift 2, skriver ut resultatet till den seriella bildskärmen. Denna exempelkod är i allmän egendom. */
Innan
uppstart()
kan vi se en kommentar med flera rader som börjar med
/*
och slutar med
*/
int buttonState = 0;
I början av vårt program skapar vi en variabel för att hålla inmatningens tillstånd.
void setup ()
{pinMode (2, INGÅNG); Serial.begin (9600); }
Inuti installationen, precis som i de analoga och digitala ingångslektionerna, är stiftet som är anslutet till omkopplaren eller sensorn konfigurerat för att vara en ingång med hjälp av
pinMode ()
fungera. För att kunna skicka meddelanden måste Arduino öppna en ny kommunikationskanal med
Serial.begin ()
. Det är som att trycka på samtalsknappen på en telefon-från det ögonblicket öppnar du en kommunikationslinje för samtalet. Argumentet berättar för Arduino hur snabbt det ska kommuniceras, till exempel 9600 bitar per sekund (aka baud).
void loop ()
{// läs inmatningsknappen buttonState = digitalRead (2); // skriva ut tillståndet för knappen Serial.print ("sensor:"); Serial.println (buttonState); fördröjning (10); // Fördröj lite för att förbättra simuleringsprestanda}
Koden inuti slingan läser inmatningens tillstånd med digitalRead () och lagrar den i buttonState -variabeln. Då kallades en funktion
Serial.println ()
skickar data till bildskärmen (över USB -kabeln vid ett fysiskt Arduino -kort). Om du gjorde blockets ändringar av programmet i föregående steg kommer du också att ha en
Serial.print ()
kodrad.
println
skickar en ny rad efter meddelandet och
skriva ut
gör inte. Använd citat runt texttiketter, till exempel
Serial.print ("sensor:");
. Om du vill skapa en enda rad med seriell felsökning kan du använda flera
Serial.print ()
kommandon följt av en enda
Serial.println ()
Steg 3: Kodfelsökaren
Det finns en speciell funktion i Tinkercad Circuits som kallas Debugger. Den går igenom din kod och låter dig titta in på dina variabler och mer.
Med kodredigeraren öppen hittar du felsökaren genom att klicka på knappen med buggikonen.
I läget Block + Text (eller endast textläge, om du föredrar), klicka på ett radnummer för att lägga till en brytpunkt, där felsökaren stannar varje gång genom loop.
Starta simuleringen.
Håll muspekaren över variabler medan den är pausad för att se deras värden.
Steg 4: Grundläggande seriella kretsstartare
Dessa kretsar finns som kretsstartare. Du kan använda dessa kretsstartare när som helst när du vill läsa en digital eller analog ingång och skriva ut dess tillstånd till seriemonitorn.
Ta Arduino -kretsstartare från komponentpanelen (rullgardinsmeny -> Förrätter -> Arduino).
Steg 5: Graf seriell data
Tinkercad Circuits har också inbyggt diagram över dina seriella data, förutsatt att strömmen inte har någon text i den. Detta är praktiskt för att visualisera förändringar i sensoravläsningar och andra ingångar, samt för att spåra variabler i ditt program.
Med seriell bildskärm öppen, klicka på grafknappen för att öppna diagrampanelen. Ta bort sensoretikettblocket som du har lagt till tidigare, eller använd en ny Arduino seriell starter för att skapa en seriell dataström utan text.
Starta simuleringen och interagera med ingången för att se hur grafvärdena ändras.
Steg 6: Prova med en fysisk Arduino -krets (tillval)
Du har möjlighet att bygga en fysisk krets för att följa med den här eller den digitala ingången eller analoga ingångslektioner, och sedan använda datorns Arduino -programvara för att se de seriella data som kommer in via USB -kabeln. För att programmera din fysiska Arduino Uno måste du installera den kostnadsfria programvaran (eller plugin för webbredigeraren) och sedan öppna den.
Koppla upp Arduino Uno -kretsen genom att ansluta komponenter och ledningar för att matcha anslutningarna som visas här i Tinkercad Circuits. För en mer ingående genomgång av arbetet med ditt fysiska Arduino Uno-kort, kolla in den kostnadsfria Instructables Arduino-klassen (en liknande krets beskrivs i den tredje lektionen).
Kopiera koden från kodfönstret för Tinkercad Circuits och klistra in den i en tom skiss i din Arduino -programvara, eller klicka på nedladdningsknappen (pil nedåt) och öppna
den resulterande filen med Arduino. Du kan också hitta dessa exempel i Arduino -programvaran genom att navigera till Arkiv -> Exempel -> 03. Analog -> AnalogInOutSerial eller Fil -> Exempel -> 02. Digital -> DigitalInputPullup.
Anslut din USB -kabel och välj ditt kort och port i programvarans meny Verktyg.
Ladda upp koden till ditt kort och klicka sedan på förstoringsglasikonen i det övre högra hörnet för att öppna den seriella bildskärmen. Dubbelkolla att överföringshastigheten matchar den i din installation
Serial.begin (9600)
Tryck på tryckknappen eller vrid på ratten och se hur siffrorna ändras i fönstret Serial Monitor.
Steg 7: Testa sedan …
Nu när du har lärt dig att skriva ut på seriell bildskärm är du redo att testa nya typer av digitala och analoga sensorer och också lära dig att läsa inkommande seriell data (tangentbordets ingång).
Kan du komponera en enda krets och ett program som skriver ut både de analoga och digitala ingångarna som visas i den här lektionen?
Här är en länk till kretsen på bilden och dess Arduino -kod:
int int buttonState = 0;
int sensorValue = 0; void setup () {pinMode (2, INPUT); pinMode (A0, INPUT); Serial.begin (9600); } void loop () {// läs input pin buttonState = digitalRead (2); // läs ingången på analog pin 0: sensorValue = analogRead (A0); // skriva ut värden till seriell bildskärm Serial.print (buttonState); Serial.print (","); Serial.println (sensorValue); fördröjning (10); // Fördröj lite för att förbättra simuleringsprestanda}
Fortsätt med att prova en ny sensor och kombinera in- och utgångar, till exempel i temperatursensorns LED -stapeldiagramlektion, PIR -rörelsesensorlektion eller fotoresistorlektion. (kommer snart). Använd datorns tangentbord för att skicka seriell data till din Arduino och tolka den med
Serial.read ()
(lektion kommer snart).
Du kan också lära dig mer elektronik med de kostnadsfria Instructables -klasserna om Arduino, grundläggande elektronik, lysdioder och belysning, 3D -utskrift och mer.
Rekommenderad:
DIY Transparent sidopanel från en återvunnen bildskärm !: 8 steg (med bilder)
DIY Transparent sidopanel från en återvunnen bildskärm !: Jag såg en riktigt cool video av ett PC -fodral med namnet " Snowblind ", som hade en transparent LCD -skärm som sidopanel. Jag blev förvånad över hur coolt det var. Det enda problemet var att det var riktigt dyrt. Därför försökte jag göra min egen! I detta jag
Lär dig hur du gör en bärbar batteridriven bildskärm som också kan driva en Raspberry Pi: 8 steg (med bilder)
Lär dig hur du gör en bärbar batteridriven bildskärm som också kan driva en Raspberry Pi: Har någonsin velat koda python, eller ha en displayutgång för din Raspberry Pi Robot, på språng, eller behövde en bärbar sekundär skärm för din bärbara dator eller kamera? I det här projektet kommer vi att bygga en bärbar batteridriven bildskärm och
Visa seriell bildskärm via Bluetooth: 4 steg
Visa seriell bildskärm via Bluetooth: Detta projekt använder en HC -05 Bluetooth -modul för att ersätta en traditionell trådbunden anslutning som används för visning av seriell bildskärm. Material: Arduino - https://amzn.to/2DLjxR2 Breadboard - https://amzn.to /2RYqiSK Bygelkablar - https://amzn.to/2RYqiSK H
Fjärrstyrd CNC -stopp och bildskärm: 11 steg (med bilder)
Fjärrstyrd CNC -stopp och övervakning: Detta projekt ger ett billigt sätt att fjärrstyra ett STOP (ALT+S) till Mach3. Detta uppnås med en Raspberry Pi (RPi) + kamera ansluten till en dator via en USB -kabel. Övervakning och aktivering av STOPP på CNC görs med en video
Fixa en bildskärm med en brödmaskin: AKA Släng inte ut den !: 5 steg (med bilder)
Fixa en bildskärm med en brödmakare: AKA Don't Kast It Out !: Lokalt i Victoria, BC har vi en kille som tar bort kasserad men användbar IT -utrustning och skickar tillbaka den gratis till gemenskapen. Hans ansträngningar är att hålla begagnad elektronik borta från deponier och hjälpa människor som är fantastiskt. Jag tog upp en