Arduino Uno, de meest populaire microcontroller onder elektronicahobbyisten en studenten en het is vrij eenvoudig om aan de slag te gaan met embedded systemen met Arduino Maar een nadeel van Arduino is dat het via een USB-kabel op de computer moet worden aangesloten om de code te uploaden zoals het heeft gedaan ondersteuning hebben voor draadloze communicatie. En soms is het erg moeilijk om het bord met de pc te verbinden als uw project ergens is opgelost. De enige oplossing voor dit probleem is door de Arduino draadloos te programmeren. Draadloos programmeren of OTA (Over the Air) -programmering kan eenvoudig worden gedaan in ESP8266 en ESP32 omdat ze ingebouwde Wi-Fi-ondersteuning hebben. Maar in Arduino moeten we de Bluetooth-module gebruiken om het draadloos te programmeren. Dus hier gaan we leren hoe we Arduino via Bluetooth kunnen programmeren.
Componenten vereist
- Arduino UNO
- HC05 Bluetooth-module
- Jumpers Draden
- 1K, 2.2K weerstanden
- Condensator (0.1uF)
- Oplader
- Breadboard
HC05 Bluetooth-module
HC-05-module is een Bluetooth Serial Port Protocol-module, speciaal ontworpen voor draadloze communicatie tussen microcontrollers. HC-05 Bluetooth-module biedt schakelmodus tussen master- en slave-modusconfiguratie en communiceert via seriële communicatie met 9600 baudrate, waardoor het gemakkelijk is om te communiceren met de controller. HC05-module werkt op 3,3 V, maar we kunnen hem aansluiten op 5V voedingsspanning omdat de module wordt geleverd met een ingebouwde 5v tot 3,3 V-regelaar.
Bluetooth is de gemakkelijkste manier voor draadloze communicatie en we hebben er veel interessante projecten mee gebouwd, zoals Bluetooth Controlled Robot, Bluetooth Voice Control, Bluetooth Home Automation, etc. Je kunt hier alle Bluetooth gebaseerde projecten bekijken.
Programmeer Arduino via Bluetooth
Om Arduino draadloos te programmeren, moeten we eerst de Arduino programmeren om te reageren op AT-commando's. Sluit daarvoor de Arduino aan op de seriële poort van de laptop en upload de onderstaande code:
# omvatten
De eerste twee regels van de code worden gebruikt om de SoftwareSerial- bibliotheek op te nemen en om de zender- en ontvangerpinnen te definiëren waarop Bluetooth is aangesloten. SoftwareSeriële bibliotheek wordt gebruikt om seriële communicatie mogelijk te maken met een andere digitale pin dan de Hardware Tx- en Rx-pinnen van Arduino. Meerdere software seriële poorten kunnen worden gebruikt voor seriële communicatie met behulp van de SoftwareSerial- bibliotheek.
# omvatten
Definieer nu in de setup-functie de baudrates voor zowel hardware als software seriële poorten. De baudsnelheden voor seriële poorten voor hardware en software zijn respectievelijk 9600 en 38400.
void setup () {Serial.begin (9600); Serial.println ("Voer AT-opdrachten in:"); HC05.begin (38400); }
Er zijn twee of omstandigheden toegepast in de loop functie. Eerste voorwaarde controleert of er een commando is gegeven aan HC05, zo ja, en schrijf het vervolgens naar Arduino Serial Monitor. De tweede voorwaarde controleert of er een commando is gegeven aan Arduino Serial Monitor, zo ja, en stuur het dan naar HC05.
void loop () {if (HC05.available ()) Serial.write (HC05.read ()); if (Serial.available ()) HC05.write (Serial.read ()); }
Sluit vervolgens de Arduino aan op de HC05 om deze in de AT Command-modus te zetten. Het schakelschema voor hetzelfde wordt hieronder gegeven:
Voordat u de Arduino op de computer aansluit, drukt u op de sleutelknop en sluit u de Arduino aan op een computer. Houd de sleutelknop ingedrukt totdat de Bluetooth-module-LED begint te knipperen met een interval van 2 seconden. De Bluetooth-module-LED knippert langzamer in de commandomodus dan in de normale modus.
Open nu een seriële monitor en voer de volgende commando's in, in ruil daarvoor zal het bord elke keer dat het commando succesvol wordt uitgevoerd met een " OK " reageren.
AT + ORGL AT + ROL = 0 AT + POLAR = 1,0 AT + UART = 115200, 0, 0 AT + INIT
Na het succesvol testen van de AT-opdrachten, verwijdert u gewoon alle verbindingen en sluit u deze aan volgens het onderstaande schema.
Gebruik de adapter of een 9V-batterij om de Arduino van stroom te voorzien. Ga hierna naar de ' Apparaten' in uw laptop, schakel Bluetooth in en verbind vervolgens de Bluetooth-module met uw laptop.
Nadat het apparaat succesvol is gekoppeld, is de volgende taak het vinden van de COM-poort voor de HC05 Bluetooth-module. Ga hiervoor naar de ' Device Manager' en vink de optie COM Ports aan. Er worden twee COM-poorten weergegeven, één voor inkomend en één voor uitgaand. We moeten het tweede COM-poortnummer selecteren terwijl we het programma uploaden.
Open nu de Arduino IDE en selecteer het knipperprogramma, selecteer de juiste com-poort en druk op de uploadknop. Als alles goed is gegaan, begint de Arduino onboard LED te knipperen met een interval van 1 sec.
Een volledige werkvideo wordt hieronder gegeven.