Arduino Serieel:Seriële communicatie door Arduino
Arduino-serie:seriële communicatie door Arduino
Achtergrond van seriële communicatie:
Wanneer microcontrollers of microprocessors met de buitenwereld moeten communiceren, leveren ze gegevens in de vorm van 8-bits pakketten, dus als het ene systeem met het andere moet communiceren, wordt er in totaal 8-aderige kabel gebruikt en is het niet altijd een praktische oplossing omdat het signaal zal vervormen bij reizen naar de lange afstand. het is ook duur vanwege de hoge kosten van de bundel van 8 draden. om alle gegevens van lijn 8 te verzenden. Lees ook:Arduino-programmering:wat is Arduino en hoe programmeer je het?Seriële protocol:
In het seriële protocol worden 8-bits gegevens geconverteerd naar de seriële bitstroom door het parallelle in-seriële uitschuifregister. Aan de ontvangende kant wordt het geconverteerd naar parallelle 8-bits gegevens door een serieel in parallel uitschuifregister. Seriële datacommunicatie gebruikt 2 methoden:synchroon en asynchroon. Synchrone methode overdracht blok van gegevens op het moment terwijl asynchrone overdracht byte voor byte. Meestal asynchrone werkingsmodus die wordt gebruikt in seriële communicatie.Er zijn drie soorten communicatiesystemen in seriële communicatie
- Eenvoudig (alleen gegevens verzenden)
- Half duplex (kan gegevens verzenden of ontvangen, maar niet tegelijkertijd)
- Full Duplex (kan tegelijkertijd gegevens verzenden en ontvangen)
Arduino programmeren voor seriële communicatie:
Arduino heeft een ingebouwde bibliotheek om het Rs232-protocol te gebruiken, dus we hoeven niet het hele protocol te schrijven en zorgen voor de geloofwaardigheid van de gegevens, omdat de RS232-bibliotheek ervoor zorgt.Bekijk de belangrijkste functies gebruikt in Rs232-communicatie. Serial.begin(x)
Opmerking:X is de baudrate, verschillende apparaten hebben verschillende baudrate-eisen, meestal wordt 9600 gebruikt als baudrate, het bepaalt hoe snel gegevens worden verzonden of ontvangen. Deze functie komt in ongeldige Setup(). Serial.available()
Deze functie controleert of seriële gegevens beschikbaar zijn om te ontvangen of niet. Als het resultaat van deze functie 0 is, zijn er geen seriële gegevens beschikbaar om op te halen en als het 1 teruggeeft, zijn de gemiddelde seriële gegevens beschikbaar. Serial.read()
Deze functie leest standaard de gegevens die beschikbaar zijn in de buffer wanneer u gegevens verzendt, dan is het gegevenstype char en wanneer u leest, leest het de decimale waarde, bijvoorbeeld als u 1 verzendt, wordt het gelezen als 49, wat is het decimale equivalent van char 1. Serial.println(x)
Deze functie drukt de gegevens af die beschikbaar zijn in de x-variabele in het seriële venster van aurdinu IDE en stuurt deze naar de poort. Serial.flush()
Deze functie verwijdert alle afvalwaarden in de seriële buffers.
Voorbeeld van seriële poortprogrammering in Arduino:
Voer dit programma uit en verander het voor uw begrip en oefening.Blijf op de hoogte voor meer aankomende tutorials.
Je zou ook kunnen lezen:
- Hoe de PIC18-microcontroller te programmeren. Stap voor stap zelfstudie.
- MAX232:constructie, bediening, typen en toepassing.
- 10+ ontwerp- en simulatietools voor elektrische/elektronische ingenieurs online.
- 15 Android-apps die je moet hebben voor elektro- en elektronica-ingenieurs en studenten.
- Clap Switch Circuit Elektronisch project met 555 Timer.
- Hoe de waarde van een verbrande weerstand te vinden (met drie handige methoden).
Industriële technologie
- MQTT en DDS:communicatie van machine tot machine in IoT
- IIoT-oplossingen | 6 industriële IoT-communicatieoplossingen
- Gegevensstroom
- Optische datacommunicatie
- Netwerkprotocollen
- Microprocessors
- Arduino I2C-communicatie met Raspi 2 WIOT
- Draadloze magnetische gegevensoverdracht
- Doofblinde communicatie met 1Sheeld/Arduino
- Temperatuur- en vochtigheidsdatalogger
- Arduino - Stuur temperatuur naar internet via serieel