Stap 21: afstandsbediening: Bluetooth
Kopen van een apparaat
Er zijn allerlei manieren waarop men kan toevoegen afstandsbediening, maar de eenvoudigste mij is via een seriële Bluetooth-module. Deze Bluetooth-Serial-modules kunnen u verbinding maken met je telefoon of computer naar het apparaat alsof deze is aangesloten via een kabel en verzend-/ ontvangstbewerking seriële commando's van de micro-controller.
Deze JY-MCU-modules zijn goedkoop verkrijgbaar bij verschillende Chinese winkels, ik heb de mijne van de leveranciers van de meest Extreme Deals voor ongeveer $7,50.
Bijwerken van de Code
Kies uw seriële Pins
U kunt de module op de standaard Ardunio pinnen SERIAL0 en SERIAL1 gebruiken, maar dan heb je te verbreken het elke keer dat u wilt uploaden van een nieuwe versie van je firmware.
Met behulp van de Arduino Library- Software seriële kunnen we definiëren van een tweede seriële poort en dat in plaats daarvan gebruiken.
Importeer eerst de bibliotheek
#include <SoftwareSerial.h>
Vervolgens, tijdens de global declaraties van variabelen, we initialiseren van een instantie van de klasse SoftwareSerial en definiëren welke pinnen zullen worden gebruikt. Ik koos voor digitale pin 11 als Receive (Rx) en 10 als zenden (Tx).
SoftwareSerial BTSerial(11, 10); // RX, TX
Wijzigen lezen Procedure
De enige verschillen nu aan via de reguliere seriële poort is dat tijdens Setup wij opstarten de software vervolgverhaal aanleg in plaats daarvan en wanneer callign functies verwijzen we naar de SoftwareSerial aanleg die we gemaakt. Uw apparaat kan worden uitgevoerd op 9600 baud-rate, wat meer dan voldoende zijn zou, maar de mijne is ingesteld op 115200 in het verleden, dus ik zie geen reden om het te veranderen. Schakel dit selectievakje in als u onzin tekens ontvangt.
BTSerial.begin(115200);
Bij het controleren op beschikbare gegevens vragen wij:
BTSerial.available()
en bij het lezen van een teken dat wij zouden noemen:
BTSerial.read()
Aansluiten van de Hardware
De Module Blutooth draad tot en met de Arduino
Als u dezelfde JY-MCU module gebruikt zoals ik, dan ben:
- de Vcc verbinden met de 5 v-pin van de Arduino voor macht (dus met behulp van de Arduino aan boord regelgever)
- GND verbinden met een grond pin op de Arduino
- Tx verbinden met Rx op Arduino (pin 11 in mijn geval)
- Rx verbinden met Tx op Arduino (pin 10 in mijn geval)
Waarschuwing: 3,3 v logica
De pin ontvangen op de JY-MCU wordt beoordeeld als 3.3V logica. In mijn geval gebruikte ik alleen de output van 5V van de Arduino en het werkte zonder een hapering, maar u kunt neerzetten van uw Arduino Tx uitgangsspanning met een paar voltage divider weerstanden.
Gebruiker uw Fancy nieuwe Wireless Link
Voordat u met de Arduino vanaf uw computer via de lucht praten kunt (ervan uitgaande dat het heeft Bluetooth ingebouwd of u hebt geïnstalleerd een dongle) of je telefoon (veronderstellend hebt u een Bluetooth-terminal app die werkt of uw eigen hebben geschreven) dan moet u koppelen van de apparaten.
Dit proces verschilt met werkend systeem, maar in het algemeen:
- Het Bluetooth-pictogram in de snelle lanceringsbar zoeken en klik op het
- Selecteer de optie een apparaat toevoegen
- Kies je module in de lijst (het kan verschijnen als "linvor") en klik op Verbind
- De pairing Voer desgevraagd (meestal 1234 met deze modules)
Zodra de apparaten zijn gekoppeld, kijk in uw control panel van Apparaatbeheer (als op windows) en zie welke com-poortnummer de Bluetooth-module onder het gedeelte "Poorten (Com & LPT)" is toegewezen. Gebruik een seriële terminal, zoals putty, verbinding maken met deze poort als u zou een bekabelde seriële verbinding.
Meer informatie
Er is een grote diepte Instructable op deze module als u meer hulp nodig