- 16x2 LCD: n liittäminen Vadelma Pi:
- Vaadittavien pakettien asentaminen Bluetooth-viestintää varten:
- Laitteiden pariliitos Vadelma Pi: n kanssa Bluetoothin kautta:
- Piirikaavio:
- Äänikirjoittaminen LCD-näytöllä Android App BlueTerm -sovelluksella:
Sinulla on oltava perehtynyt äänikirjoittamiseen, jota käytetään hyvin yleisesti tietokoneissa ja matkapuhelimissa, joissa voit kirjoittaa minkä tahansa sanan puhumalla. Äänikirjoittaminen on erittäin hyödyllistä vammaisille tai kenelle tahansa, joka haluaa kirjoittaa nopeasti. Joten tänään toteutamme saman 16x2 LCD-näytöllä, jossa ääniteksti näkyy LCD-näytöllä. Tässä olemme käyttäneet 16x2 LCD -näyttöä, mutta tämä asennus voidaan asentaa moniin paikkoihin, joissa on suurempi näyttö viestien lähettämiseen, kuten lentokentillä, ostoskeskuksissa, toimistoissa jne.
Tässä projektissa toimitamme syöttöäänen Google Voice -näppäimistöllä Android-sovelluksen (BlueTerm) kautta ja tulostamme tekstin 16x2 LCD- näytölle Raspberry Pi: llä. Täällä kirjoitamme tekstin 16x2 LCD-näytölle langattomalla Bluetooth Medium -tekniikalla ja käytämme USB Bluetooth -donglea Raspberry Pi: n kanssa. Joten pohjimmiltaan tarvitsemme 16x2-nestekidenäytön Raspberry Pi -liitännän kanssa ja asetamme Bluetooth Raspberry Pi -laitteeseen matkapuhelimen lähettämien tietojen vastaanottamiseksi. Olemme jo liittäneet nestekidenäytön Raspberry Pi: n kanssa ja kirjoitimme Bluetooth-opetusohjelman Raspberry Pi: n kanssa, voit tarkistaa ne.
16x2 LCD: n liittäminen Vadelma Pi:
Ennen kuin jatkamme Bluetooth-määritystä, liitämme ensin 16x2 LCD: n Raspberry Pi: n kanssa. Tässä projektissa olemme käyttäneet ulkoista Adafruit-kirjastoa 16x2-nestekidenäytön ja Raspberry Pi -liitännän liittämiseen, jolloin sinun ei tarvitse kirjoittaa useita koodirivejä nestekidenäytön ajamiseksi, ja voit tulostaa suoraan LCD-näytölle vain yhdellä rivillä koodi. Tämän kirjaston on kuitenkin luonut Adafruit, mutta sitä voidaan käyttää kaikissa LCD-moduuleissa, joissa on HD44780-ohjain. Jos haluat liittää nestekidenäytön käyttämättä ulkoista kirjastoa, voit tarkistaa edelliset oppaamme koskien nestekidenäyttöä 8-bittisessä tilassa ja liittämään nestekidenäyttöä 4-bittisessä tilassa.
Jotta voisimme käyttää Adafruit-kirjastoa, meidän on ensin asennettava se käyttämällä alla olevia komentoja. Ensimmäinen komento kloonaa CharLCD-arkiston (Adafruit) Raspberry Pi -tietokoneellesi, toinen komento vie sinut ladattuun hakemistoon ja lopuksi meidän on suoritettava setup.py-komentosarja, joka on esitetty Adafruit_Python_CharLCD-hakemistossa, kirjaston asentamiseksi.
git-klooni https://github.com/adafruit/Adafruit_Python_CharLCD.git cd./Adafruit_Python_CharLCD sudo python setup.py install
Nyt 16x2 LCD: n kirjasto on asennettu ja voit käyttää sen toimintoja tuomalla tämän kirjaston python-ohjelmaasi seuraavalla rivillä:
tuo Adafruit_CharLCD LCD-näytöksi
Kirjastokansiossa (Adafruit_Python_CharLCD) olevassa esimerkkikansion sisällä on joitain esimerkkiskriptejä. Voit testata asetuksia suorittamalla char_lcd.py- komentosarjan. Mutta ennen sitä sinun on kytkettävä LCD-nastat Vadelma Pi: n kanssa alla olevan piirikaavion mukaisesti.
Voit myös liittää nestekidenäytön joihinkin muihin Raspberry Pi: n GPIO-nastoihin, kaikki mitä sinun on mainittava oikeat liitäntänastat python-ohjelmassa kuten alla. Lisätietoja Raspberry Pi GPIO -nastoista on täällä.
# Vadelma Pi-nastan asetukset lcd_rs = 18 lcd_en = 23 lcd_d4 = 24 lcd_d5 = 16 lcd_d6 = 20 lcd_d7 = 21 lcd_backlight = 2
Nyt voit käyttää LCD-näyttöä suoraan Adafruit Libraryn tarjoamilla toiminnoilla. Jotkut toiminnoista on annettu alla; löydät lisää komentosarjasta:
- lcd.message (message) = Tekstin tulostaminen nestekidenäytölle.
- lcd.clear () = Nestekidenäytön tyhjentäminen.
- lcd.set_cursor (sarake, rivi) = Siirrä kohdistin mihin tahansa kohtaan sarakkeessa ja rivillä.
- lcd.blink (True) = Kohdistimen vilkkuminen (True tai False)
- lcd.move_left () = Kohdistimen siirtäminen vasemmalle yksi asento.
- lcd.move_right () = Kohdistimen siirtäminen oikealle yksi asento.
Yhdistämme Raspberry Pi: n nyt Android-älypuhelimeen Bluetoothin avulla.
Vaadittavien pakettien asentaminen Bluetooth-viestintää varten:
Täällä käytämme Vadelma 2 Pi Malli B, joka ei ole sisäänrakennettu Bluetooth, joten käytämme yksinkertaista USB Bluetooth-sovitin on perustaa Bluetooth-yhteyksiä Raspberry Pi. Sinulla on oltava asennettuna Raspbian Jessie -muistikortti, jossa on Raspberry Pi. Tarkista tämä artikkeli, jos haluat asentaa Raspbian-käyttöjärjestelmän ja aloittaa Raspberry Pi -ohjelman käytön. Joten nyt meidän on ensin päivitettävä Raspbian käyttämällä alla olevia komentoja:
sudo apt-get päivitys sudo apt-get päivitys
Sitten meidän on asennettava muutama Bluetooth-paketti:
sudo apt-get install bluetooth blueman bluez
Käynnistä sitten Raspberry Pi uudelleen:
sudo uudelleenkäynnistä
BlueZ on avoimen lähdekoodin projekti ja virallinen Linux-Bluetooth-protokollapino. Se tukee kaikkia keskeisiä Bluetooth-protokollia ja on nyt osa virallista Linux-ydintä.
Blueman tarjoaa työpöydän käyttöliittymän Bluetooth-laitteiden hallintaan ja hallintaan.
Lopuksi tarvitsemme python-kirjaston Bluetooth-viestintään, jotta voimme lähettää ja vastaanottaa tietoja RFCOMM: n kautta Python-kieltä käyttäen:
sudo apt-get asenna python-bluetooth
Asenna myös Raspberry Pi: n GPIO-tukikirjastot:
sudo apt-get install python-rpi.gpio
Nyt olemme asentaneet tarvittavat paketit Bluetooth-viestintään Raspberry Pi: ssä.
Laitteiden pariliitos Vadelma Pi: n kanssa Bluetoothin kautta:
Bluetooth-laitteiden, kuten matkapuhelimen, yhdistäminen Raspberry Pi: n kanssa on erittäin helppoa. Tässä olemme yhdistäneet Android-älypuhelimemme Raspberry Pi: n kanssa. Olemme aiemmin asennetut Bluez Pi, joka tarjoaa komentorivi nimeltään ” bluetoothctl ” hallita meidän Bluetooth-laitteita. Mutta ennen sitä, liitä USB Bluetooth-sovitin Raspberry Pi: hen ja tarkista alla olevan komennon avulla, onko se havaittu vai ei.
lsusb
Avaa nyt bluetoothctl- apuohjelma alla olevalla komennolla:
sudo bluetoothctl
Voit tarkistaa kaikki bluetoothctl- apuohjelman komennot kirjoittamalla ' help' . Nyt meidän on annettava alla olevat komennot määrätyssä järjestyksessä:
# virta päällä # agentti päällä # löydettävissä # yhdistettävissä # skannaus päällä
Viimeisen " scan on " -komennon jälkeen näet Bluetooth-laitteesi (matkapuhelin) luettelossa. Varmista, että matkapuhelimessasi on Bluetooth päällä ja lähellä olevat laitteet näkevät sen. Kopioi sitten laitteesi MAC-osoite ja pariliitä se käyttämällä annettua komentoa:
pari
Sitten sinua pyydetään antamaan pääsykoodi tai PIN-koodi päätelaitteessa, kirjoita salasana sinne ja paina Enter. Kirjoita sitten sama salasana matkapuhelimeesi pyydettäessä ja pariliitos Raspberry Pi: n kanssa on nyt onnistunut. Olemme myös selittäneet koko tämän prosessin edellisessä oppaassamme GPIO: n ohjaamisesta Bluetoothilla.
Piirikaavio:
Äänikirjoittaminen LCD-näytöllä Android App BlueTerm -sovelluksella:
Nyt matkapuhelimen jäsentämisen jälkeen meidän on asennettava Android-sovellus kommunikointiin Raspberry Pi: n kanssa Bluetooth-sarjaadapterin avulla. RFCOMM / SPP-protokolla jäljittelee sarjaliikennettä Bluetoothin kautta, joten olemme asentaneet tähän BlueTerm-sovelluksen, joka tukee tätä protokollaa.
Voit käyttää myös mitä tahansa muuta Bluetooth-päätelaitesovellusta, joka tukee viestintää RFCOMM-liitännän kautta.
Kun olet ladannut ja asentanut BlueTerm-sovelluksen, suorita alla oleva Python-ohjelma päätelaitteesta ja yhdistä pariliitetty vadelma- laite samanaikaisesti BlueTerm-sovelluksesta. Kun yhteys on muodostettu onnistuneesti, näet yhdistetyn: vadelman sovelluksen oikeassa yläkulmassa alla olevan kuvan mukaisesti. Nyt valita Google puhekirjoitus näppäimistö ja ala puhua, se ilmestyi LCD.
Python-ohjelma tälle projektille on annettu alla ja se on helposti ymmärrettävä. Tyypillinen pääosa liittyy Bluetooth-ohjelmointiin, jonka olemme selittäneet aiemmin; tarkista tämän artikkelin ohjelmointiosa.
Voimme laajentaa tätä projektia edelleen äänellä ohjaamaan Vadelma GPIO -nastoja tai käyttämällä isompaa LCD / TFT-näyttöä isojen viestien näyttämiseen. Tarkista myös edelliset Vadelma Pi -projektit ja oppaat.