- Tarvittavat materiaalit
- Bluetooth-moduuli (HC-05)
- STM32 USART -portit
- Piirikaavio ja liitännät
- STM32F103C8: n ohjelmointi
- Vaiheet Bluetooth-moduulin liittämiseen Android-puhelimeen
Nykymaailmassa Bluetooth on tullut erittäin suosittu, ja melkein kaikki laitteet, kuten matkapuhelin, kannettava tietokone ja autojen infotainment-järjestelmä, käyttävät Bluetoothia langattomaan viestintään. Bluetoothia ei käytetä vain tiedonsiirtoon, vaan myös muiden Bluetooth-laitteiden hallintaan langattomasti, kuten Bluetooth-kuulokkeiden avulla, voit kuulla kappaleen langattomasti matkapuhelimestasi tai käyttää auton audiojärjestelmää kappaleiden toistamiseen matkapuhelimesta.
Bluetooth on langaton tekniikka, joka toimii 2,4 GHz: n taajuudella. Normaali Bluetooth-signaali on 10 metrin säteellä. Bluetooth on yleisimmin käytetty langatonta tekniikkaa sulautetuissa projekteissa edellyttäen, että tiedonsiirtoalue on rajallinen. Bluetooth on lisännyt alhaisen virrankulutuksen ja edullisen toiminnan. Sitä käytetään yleensä mikrokontrollerien liittämiseen älypuhelimiin Bluetooth-sovelluksia käyttämällä.
Olemme nähneet Bluetooth-moduulin liittymisen muihin mikrokontrollereihin, kuten Arduino, 8051, PIC jne. Nyt tässä opetusohjelmassa liitämme HC-05 Bluetooth-moduulin STM32F103C8: n kanssa ja kytket LEDin päälle / pois päältä Android-mobiililaitteella.
Tarvittavat materiaalit
- STM32F103C8
- Bluetooth-moduuli (HC-05)
- LED
- Android Mobile
- Leipälauta
- Johtojen liittäminen
Ohjelmisto:
- Bluetooth-pääte (Android-sovellus)
Bluetooth-moduuli (HC-05)
Sitä käytetään enimmäkseen sulautetuissa projekteissa Bluetooth-moduulia. Se on sarjaliitäntäinen Bluetooth-moduuli, joka käyttää sarjaliikennettä, jonka kantama on alle 100 m ja toimii 5 V: n jännitteellä (vähintään 3,3 V). Sitä voidaan käyttää kahden mikrokontrollerin liittämiseen langattomasti ja myös matkapuhelimeen ja kannettaviin tietokoneisiin. Koska käytettävissä on monia android-sovelluksia, se on erittäin hyödyllinen langattomien Bluetooth-ohjattujen projektien tekemisessä.
Se käyttää USART-tiedonsiirtoa ja voidaan liittää mikrokontrollereihin, joilla on USART-yhteyskäytäntö.
Siinä on integroitu antenni. Siinä on Master / Slave-kokoonpanot, joita voidaan muuttaa AT-komentotilassa, mikä on hyödyllistä, kun vain yhden laitteen pitäisi lähettää tiedot (isäntä orjalle), kuten esimerkiksi PC: ltä (MASTER) orjalle (mikä tahansa MCU). Isäntä voi muodostaa yhteyden muihin laitteisiin, eikä orja muodosta yhteyttä muuhun kuin isäntään.
Toimintatavat
Siinä on kaksi tilaa AT Command Mode & Data Mode.
Kun Bluetooth käynnistetään, se siirtyy oletusarvoisesti datatilaan. Tätä tilaa voidaan käyttää tiedonsiirtoon. Jos haluat siirtyä AT-komentotilaan virran kytkemisen aikana, meidän on painettava moduulissa olevaa painiketta moduulin oletusasetusten, kuten isäntä / orja-kokoonpanojen, muuttamiseksi.
Bluetooth-moduulin nastat
- EN-nasta (PÄÄLLÄ) - Tätä nastaa käytetään datatilan tai AT-komentotilan asettamiseen. Oletuksena se on DATA MODE. Kun painiketta painetaan käynnistyksen aikana, se siirtyy AT-komentotilaan.
- + 5 V nasta - Tätä käytetään moduulin virtalähteeseen
- GND-tappi - Tätä käytetään moduulin maadoitukseen
- TX-nasta - Tämä tappi liitetään MCU: n RX-nastaan
- RX-tappi - Tämä nasta on kytketty MCU: n TX-nastaan
- STATE - Tämä tappi osoittaa moduulin tilan, katso alla merkinnöistä
LED-merkkivalo
- Siinä on LED (PUNAINEN) -ilmaisin, joka antaa Bluetooth-moduulin tilan.
- Kun Bluetooth-moduulia EI ole kytketty mihinkään laitteeseen, signaali heikkenee ja punainen led vilkkuu jatkuvasti, mikä osoittaa, että moduulia EI ole paritettu.
- Kun Bluetooth-moduuli on kytketty mihin tahansa laitteeseen, signaali menee HIGH-tilaan ja punainen led vilkkuu jonkin verran viiveellä, mikä osoittaa, että moduuli on PARITETTU.
Tutustu muihin projekteihimme saadaksesi lisätietoja Bluetooth-moduulista HC-05 muiden mikrokontrollerien kanssa:
- Bluetooth-ohjattu leluauto Arduinoa käyttämällä
- Bluetooth-ohjattu kotiautomaatiojärjestelmä, joka käyttää 8051: tä
- Ääniohjatut valot vadelmalla Pi
- Älypuhelimen ohjaama FM-radio Arduinoa ja prosessointia käyttäen
- Matkapuhelinohjattu robotti-auto, jossa on G-Sensor ja Arduino
- Bluetooth-moduulin HC-06 ja PIC-mikrokontrollerin liitäntä
STM32 USART -portit
STM32F103C8 (BLUE PILL) USART-sarjaliikenneportit näkyvät alla olevassa pin out -kuvassa. Nämä ovat sinivärisiä (PA9-TX1, PA10-RX1, PA2-TX2, PA3-RX2, PB10-TX3, PB11-RX3). Sillä on kolme tällaista viestintäkanavaa.
Piirikaavio ja liitännät
Piiri liitännät vuorovaikutuksessa Bluetooth-moduuli STM32 tehdään kuten alla
Yhteys STM32F103C8: n ja Bluetooth-moduulin (HC-05) välillä
- STM32F103C8: n TX-tappi (PA9) on kytketty Bluetooth-moduulin RX-nastaan.
- STM32F103C8: n RX-tappi (PA10) on kytketty Bluetooth-moduulin TX-nastaan.
- Bluetooth-moduulin VCC (+ 5V) -nasta on kytketty STM32F103C8: n 5V-napaan.
- Bluetooth-moduulin GND-nasta on kytketty STM32F103C8: n GND-nastaan.
Muut liitännät
- STM32: n (sininen pilleri) (PA0) -nasta on kytketty LED-positiiviseen nastaan sarjavastuksen kautta. Tässä käytetty LED on sekavärinen.
- Johtanut toinen tappi on kytketty STM32: n GND: hen.
STM32F103C8: n ohjelmointi
Bluetoothin liittäminen STM32: een on sama kuin arduino ja ohjelmointi STM32: ssa on sama kuin Arduino IDE. Katso tämä opetusohjelma STM32: n ohjelmointiin USB: n avulla Arduino IDE: n avulla.
Kuten jo kerrottiin, tässä projektissa liitämme (HC-05) Bluetooth-moduulin STM32F103C8: n kanssa ja käytämme LED-puhelinta päälle ja pois päältä Android-älypuhelimella, jossa on Bluetooth-pääte-android-sovellus.
Huomaa: Vastaanotto- ja lähetystappi on poistettava, kun lähetät koodin STM32F103C8: een.
Täydellinen koodi tähän projektiin annetaan lopussa tämä opetusohjelma havainnollistavat Video.
Tämän projektin koodaus on niin yksinkertaista. Samoja Arduino-koodeja voidaan käyttää, mutta vain tappi tulisi vaihtaa. Koska meillä on kolme sarjaa USART-nastoja STM32F103C8: ssa, meidän on määritettävä oikea tappi, jota käytimme Bluetooth-moduulin yhdistämiseen.
1. Ensinnäkin meidän on nimettävä nastat vastaavalla nastanumerollaan int- tietotyypillä seuraavasti
const int pinout = PA0;
2. Seuraavaksi tarvitsemme muuttujan sarjaliikenteen tallentamiseksi Android-matkapuhelimelta. Tiedot voivat olla merkkejä tai kokonaislukuja seuraavasti
char inputdata = 0;
3. Seuraavaksi tyhjässä asennuksessa () meidän on aloitettava sarjaliikenne STM32 Blue Pillin ja Bluetooth-moduulin välillä antamalla baudinopeus 9600
Serial1.begin (9600);
Käytimme serial1 täällä, koska me kytketty HC-05 TX1 ja RX1 STM32.
Voimme käyttää myös Serial2 tai Serial3, mutta vastaavasti tappi on kytkettävä.
4. Johdeviesti lähetetään sarjatietona sarjalle1, toisin sanoen Bluetooth-moduulille HC05. Tämä moduuli lähettää edelleen tietoja Android-mobiililaitteen Bluetooth-päätelaitteeseen. Joten käytämme alla olevia lauseita
Serial1.print ("CIRCUIT DIGEST \ n"); Serial1.print ("BLUETOOTH WITH STM32 \ n");
5. Seuraavaksi meidän on asetettava pinmode (PA0) lähdöksi, kun yhdistimme johtanut tähän piniin. Joten käytämme
pinMode (pinout, OUTPUT);
6. Seuraavaksi tyhjässä silmukassa () suoritetaan seuraavat tiedot, jotta voimme lukea sarjatiedot ja kytkeä LED: n päälle / pois päältä vastaavasti
void loop () { if (Serial1.available ()> 0) { inputdata = Sarja1.read (); if (inputdata == '1') { digitalWrite (pinout, HIGH); Serial1.print ("LED ON \ n"); } else if (inputdata == '0') { digitalWrite (pinout, LOW); Serial1.print ("LED OFF \ n"); } } }
Tässä käytämme if- lausetta, koska nämä koodit suoritetaan vain, kun Serial1-portilla on Bluetooth-moduulista saatuja tietoja, miksi tätä lausetta käytetään Serial1.available ()> 0 . Muuten, jos se ei pääse, se odottaa, kunnes se aloittaa sarjaliikenteen. Nyt se tallentaa vastaanotetut tiedot muuttujaan inputdata = Serial1.read (). Sitten se tarkistaa Bluetooth-päätelaitteelta lähetetyn arvon. Joten jos arvo on 1, se tulostaa LED-valon PÄÄLLE ja saa nastan (PA0) KORKEAKSI lausekkeella digitalWrite (pinout, HIGH) ja jos arvo on 0, se tulostaa LED: n POIS ja tekee (PA0) -nastasta matalan.
Vaiheet Bluetooth-moduulin liittämiseen Android-puhelimeen
Vaihe 1: - Avaa Bluetooth matkapuhelimesta, kun olet ladannut koodin STM32: een Arduino IDE: ltä ja antanut virtaa piirille. MUISTA poistaa RX- ja TX-tappi koodia ladattaessa
Vaihe 2: - Valitse käytettävissä olevissa laitteissa HC-05 ja kirjoita salasanaksi 1234
Vaihe 3: - Pariliitoksen muodostamisen jälkeen avaa Bluetooth Terminal -sovellus ja valitse yhdistää laite ja valitse HC-05 alla olevan kuvan mukaisesti
Vaihe 4: - Kun olet muodostanut yhteyden HC-05 Bluetooth-moduuliin, anna arvot liittimeen 1 tai 0 kytkeäksesi LED: n päälle ja pois päältä. Saat myös viestin, että LED palaa tai ei pala.