Seriell kommunikasjon
Seriell kommunikasjon er et enkelt opplegg som bruker UART (Universell asynkron mottaker/sender) på mikrokontrolleren. Det bruker,
For et 3,3V-kort bruker den
Hver melding som sendes på UART er i form av 8 bits eller 1 byte, hvor 1 byte = 8 biter.
Meldingene som sendes til datamaskinen fra Arduino er sendt fra PIN 1 på Arduino-kortet, kalt Tx (sender) . Meldingene som sendes til Arduino fra datamaskinen er mottatt på PIN 0, kalt Rx ( Mottaker ).
Disse to pinnene på Arduino UNO-brettet ser ut som bildet nedenfor:
Når vi initialiserer pinnene for seriell kommunikasjon i koden vår, kan vi ikke bruke disse to pinnene (Rx og Tx) til noe formål. Tx- og Rx-pinnene er også koblet direkte til datamaskinen.
Pinnene er koblet til den serielle Tx- og Rx-brikken, som fungerer som en seriell til USB-oversetter. Den fungerer som et medium for datamaskinen for å snakke med mikrokontrolleren.
Brikken på brettet ser ut som bildet nedenfor:
Objektet kan inkludere et hvilket som helst antall datamedlemmer (informasjon) og medlemsfunksjoner (for å kalle handlinger).
De Serial.begin( ) er en del av serieobjektet i Arduino . Den ber det serielle objektet utføre initialiseringstrinn for å sende og motta data på Rx og Tx (pinne 1 og 0).
verilog saksuttalelse
La oss diskutere Serial.begin( ) i detalj.
Arduino Mega har fire serielle porter. Tx-pinnene på Mega-brettet er oppført nedenfor:
- 1 (TX)
- 18 (TX)
- 16 (TX)
- 14 (TX)
Rx-pinnene på Mega-porten er oppført nedenfor:
- 0 (RX)
- 19 (RX)
- 17 (RX)
- 15 (RX)
Kommunikasjonen med Tx- og Rx-pinnene vil forårsake forstyrrelser og mislykkede opplastinger til det aktuelle kortet.
Hvis vi trenger en seriell port for kommunikasjon, må vi bruke en USB-til seriell adapter . Det er en mini USB-kontakt, som konverterer USB-tilkoblingen til Serial RX og TX. Vi kan koble adapteren direkte til brettet.
Det er fem pinner på USB-til-serieadapteren, inkludert RX, TX, tilbakestillingsknapp og GND (jord).
Serial.begin ( )
Serial.begin( ) setter overføringshastigheten for seriell datakommunikasjon . De baud rate betyr datahastigheten i bits per sekund.
Standard overføringshastighet i Arduino er 9600 bps (bits per sekund ). Vi kan spesifisere andre overføringshastigheter også, for eksempel 4800, 14400, 38400, 28800, etc.
Serial.begin( ) er deklarert i to formater, som er vist nedenfor:
- begynne (hastighet)
- begynne (hastighet, konfigurasjon)
Hvor,
serie : Det betyr serieportobjektet.
hastighet : Det angir overføringshastigheten eller bps (bits per sekund) rate. Det tillater lang datatyper.
konfig : Den setter stopp-, paritets- og databitene.
Eksempel 1:
void setup ( ) { Serial.begin(4800); } void loop ( ) { }
Serial.begin (4800 ) åpner den serielle porten og setter bits per rate til 4800. Meldingene i Arduino utveksles med den serielle monitoren med en hastighet på 4800 bits per sekund.
La oss vurdere et annet eksempel.
Eksempel 2:
Det er vist nedenfor: