Innholdsfortegnelse:

Arduino seriell skjerm i Tinkercad: 7 trinn (med bilder)
Arduino seriell skjerm i Tinkercad: 7 trinn (med bilder)

Video: Arduino seriell skjerm i Tinkercad: 7 trinn (med bilder)

Video: Arduino seriell skjerm i Tinkercad: 7 trinn (med bilder)
Video: Lesson 05: Introduction to Serial Monitor | Robojax Arduino Step By Step Course 2024, Juli
Anonim
Arduino seriell skjerm i Tinkercad
Arduino seriell skjerm i Tinkercad

Tinkercad -prosjekter »

Å holde oversikt over alt som skjer i programmet ditt kan være en oppoverbakke. Den serielle skjermen er en måte å lytte til hva som skjer i koden din ved å rapportere tilbake til datamaskinen via USB -kabelen. I Tinkercad Circuits -simulatoren finner du Serial Monitor nederst på kodepanelet og kan også brukes til å tegne variabler etter hvert som de endres. Bruk Serial Monitor til å "snakke" med datamaskinen som en måte å sjekke om Arduino -koden gjør det du hadde tenkt. Dette kan være veldig nyttig for å løse problemer med koden din (kalt 'seriell feilsøking').

De to kretsene i denne leksjonen bruker de samme konfigurasjonene som de to foregående leksjonene om digital inngang med en trykknapp og analog inngang med et potensiometer. De eneste forskjellene er at disse kretsene er ledningsfrie (ingen brødbrett) og ikke har en ekstern LED-kabel. Åh, og de kjører kode for å generere serielle meldinger, som vi lærer om i denne leksjonen.

Du kan følge med praktisk talt ved å bruke Tinkercad Circuits. Du kan til og med se denne leksjonen fra Tinkercad (gratis pålogging kreves)! Utforsk prøvekretsen og bygg din egen rett ved siden av den. Tinkercad Circuits er et gratis nettleserbasert program som lar deg bygge og simulere kretser. Den er perfekt for læring, undervisning og prototyper.

Trinn 1: Skrive ut til den serielle skjermen med blokker

Bilde
Bilde

La oss bruke kodeblokkereditoren til å lytte til en Arduino -inngangspinne, og deretter skrive ut verdien (analog) eller tilstanden (digital) for inngangen i Serial Monitor -vinduet. Klikk på "Kode" -knappen for å åpne kodepanelet.

Klikk på Serial Monitor nederst på kodepanelet.

Klikk på "Start simulering" for å kjøre prøven Arduino -koden, og observere tallene i seriemonitoren mens du samhandler med potensiometeret. Du kan klikke frem og tilbake mellom de to Arduinos mens simuleringen kjører i Tinkercad Circuits, men bare den analoge kretsen vil vises i den innebygde modulen ovenfor.

Etter at du har kopiert prøvekretsen til din Tinkercad -konto, kan du endre koden. Naviger til kategorien Utgangskode, dra deretter ut en "skrive ut til seriell skjerm" -blokk og plasser den like før serieblokken som allerede er i programmet.

Endre standardteksten for å merke dine serielle data, for eksempel "sensor:" (ikke glem mellomrommet etter kolon), og juster rullegardinmenyen for å skrive ut uten en ny linje.

Start simuleringen og observer endringen i seriell monitor. Du kan stable serieblokker som dette for å lage nyttige tilbakemeldinger mens du utvikler en prosjektkode.

Trinn 2: Seriell monitor Arduino -kode forklart

Bilde
Bilde

Når kodeditoren er åpen i Tinkercad Circuits, kan du klikke rullegardinmenyen til venstre og velge "Blokker + tekst" for å avsløre Arduino -koden generert av kodeblokkene (ikke tilgjengelig i den innebygde modulen i det første trinnet). Denne koden sender data fra Arduino til Serial Monitor, men i en senere leksjon kan du også lære hvordan du mottar data fra Serial Monitor og toveis seriell kommunikasjon.

/*

DigitalReadSerial Leser en digital inngang på pin 2, skriver ut resultatet til den serielle skjermen. Denne eksempelkoden er i det offentlige området. */

Før

oppsett ()

kan vi se en flerlinjes kommentar som starter med

/*

og ender med

*/

int buttonState = 0;

Helt i starten av programmet oppretter vi en variabel for å holde inngangstilstanden.

ugyldig oppsett ()

{pinMode (2, INNGANG); Serial.begin (9600); }

Inne i oppsettet, akkurat som i de analoge og digitale inngangstimene, er pinnen som er koblet til bryteren eller sensoren konfigurert til å være en inngang ved hjelp av

pinMode ()

funksjon. For å kunne sende meldinger må Arduino åpne en ny kommunikasjonskanal med

Serial.begin ()

. Det er som å trykke på ringeknappen på en telefon-fra det øyeblikket du åpner en kommunikasjonslinje for samtalen. Argumentet forteller Arduino hvor raskt det skal kommuniseres, for eksempel 9600 bits per sekund (aka baud).

hulrom ()

{// les input pin buttonState = digitalRead (2); // skrive ut tilstanden til knappen Serial.print ("sensor:"); Serial.println (buttonState); forsinkelse (10); // Forsink litt for å forbedre simuleringsytelsen}

Koden inne i løkken leser tilstanden til inngangen med digitalRead () og lagrer den i buttonState -variabelen. Deretter ringte en funksjon

Serial.println ()

sender dataene til skjermen (over USB -kabelen i tilfelle et fysisk Arduino -kort). Hvis du gjorde blokkene endringer i programmet i forrige trinn, vil du også ha en

Serial.print ()

kodelinje.

println

sender en ny linje etter meldingen, og

skrive ut

gjør ikke. Bruk for eksempel anførselstegn rundt tekstetiketter

Serial.print ("sensor:");

. Hvis du vil lage en enkelt serie med seriell feilsøkingsutgang, kan du bruke flere

Serial.print ()

kommandoer etterfulgt av en enkelt

Serial.println ()

Trinn 3: Kodefeilsøkeren

Bilde
Bilde

Det er en spesiell funksjon i Tinkercad Circuits kalt Debugger. Den går gjennom koden din og lar deg se på variablene dine og mer.

Med kodeditoren åpen, finn Debugger ved å klikke på knappen med feilikonet.

I Blokker + Tekst-modus (eller bare tekstmodus, hvis du foretrekker det), klikk på et linjenummer for å legge til et brytpunkt, der feilsøkingsprogrammet stopper hver gang gjennom løkken.

Start simuleringen.

Hold markøren over variabler mens den er satt på pause for å se verdiene.

Trinn 4: Grunnleggende serielle kretsstartere

Grunnleggende serielle kretsstartere
Grunnleggende serielle kretsstartere

Disse kretsene er tilgjengelige som kretsstartere. Du kan bruke disse kretsstarterne når du vil lese en digital eller analog inngang og skrive ut tilstanden til seriell skjerm.

Ta Arduino kretsstartere fra komponentpanelet (rullegardinmeny -> Forretter -> Arduino).

Trinn 5: Grafiske seriedata

Grafiske serielle data
Grafiske serielle data

Tinkercad Circuits har også innebygd graf over serielle data, forutsatt at strømmen ikke har noen tekst i dem. Dette er praktisk for å visualisere endringer i sensoravlesninger og andre innganger, samt for å spore variabler i programmet.

Med seriell skjerm åpen, klikker du på graf -knappen for å åpne grafpanelet. Fjern sensoretikettblokken du la til tidligere, eller bruk en ny Arduino seriell starter for å lage en seriell datastrøm uten tekst.

Start simuleringen og samhandle med inngangen for å se grafverdiene endres.

Trinn 6: Prøv det med en fysisk Arduino -krets (valgfritt)

Bilde
Bilde

Du har muligheten til å bygge en fysisk krets for å gå sammen med denne eller de digitale inngangs- eller analoge inngangstimene, og bruk deretter datamaskinens Arduino -programvare for å se de serielle dataene som kommer inn via USB -kabelen. For å programmere din fysiske Arduino Uno må du installere gratis programvare (eller plugin for webredigereren) og deretter åpne den.

Koble opp Arduino Uno -kretsen ved å koble til komponenter og ledninger for å matche tilkoblingene som vises her i Tinkercad Circuits. For en mer grundig gjennomgang av arbeidet med ditt fysiske Arduino Uno-brett, sjekk ut den gratis Instructables Arduino-klassen (en lignende krets er beskrevet i den tredje leksjonen).

Kopier koden fra Tinkercad Circuits -kodevinduet og lim den inn i en tom skisse i Arduino -programvaren, eller klikk på nedlastingsknappen (pil nedover) og åpne

den resulterende filen ved hjelp av Arduino. Du kan også finne disse eksemplene i Arduino -programvaren ved å navigere til Fil -> Eksempler -> 03. Analog -> AnalogInOutSerial eller Fil -> Eksempler -> 02. Digital -> DigitalInputPullup.

Koble til USB -kabelen og velg kortet og porten i programvareverktøy -menyen.

Last opp koden til brettet ditt, og klikk deretter på forstørrelsesglassikonet i øvre høyre hjørne for å åpne den serielle skjermen. Dobbeltsjekk at overføringshastigheten samsvarer med den i oppsettet ditt

Serial.begin (9600)

Trykk på knappen eller vri på knappen og se tallene endres i vinduet Serial Monitor.

Trinn 7: Prøv deretter …

Prøv deretter…
Prøv deretter…

Nå som du har lært å skrive ut på Serial Monitor, er du klar til å teste nye typer digitale og analoge sensorer, og også lære å lese innkommende serielle data (tastaturinngang fra bruker).

Kan du lage en enkelt krets og et program som skriver ut både de analoge og digitale inngangene som er vist i denne leksjonen?

Her er en lenke til den avbildede kretsen, og dens Arduino -kode:

int int buttonState = 0;

int sensorValue = 0; ugyldig oppsett () {pinMode (2, INPUT); pinMode (A0, INNGANG); Serial.begin (9600); } void loop () {// les input pin buttonState = digitalRead (2); // les inngangen på analog pin 0: sensorValue = analogRead (A0); // skrive ut verdier til den serielle skjermen Serial.print (buttonState); Serial.print (","); Serial.println (sensorValue); forsinkelse (10); // Forsink litt for å forbedre simuleringsytelsen}

Fortsett med å prøve en ny sensor og kombiner innganger og utganger, for eksempel i temperatursensorens LED -stolpediagramtime, PIR -bevegelsessensortime eller fotoresistortime. (kommer snart). Bruk datamaskinens tastatur til å sende serielle data til din Arduino og tolke den med

Serial.read ()

(leksjonen kommer snart).

Du kan også lære mer elektronikkferdigheter med de gratis instruksjonskursene om Arduino, grunnleggende elektronikk, LED og belysning, 3D -utskrift og mer.

Anbefalt: