Sisällysluettelo:

Vaalea bambu (yhdistetty lamppu): 3 vaihetta
Vaalea bambu (yhdistetty lamppu): 3 vaihetta

Video: Vaalea bambu (yhdistetty lamppu): 3 vaihetta

Video: Vaalea bambu (yhdistetty lamppu): 3 vaihetta
Video: Он вам не Димон 2024, Marraskuu
Anonim
Vaalea bambu (yhdistetty lamppu)
Vaalea bambu (yhdistetty lamppu)

Hei ja tervetuloa!

Vaalea bambu on yhdistetty lamppu, joka syttyy, kun ilmoitus vastaanotetaan Android -älypuhelimessa, johon se on liitetty. Tämän ohjeen tarkoitus on näyttää sinulle projektin suunnitteluvaihe: laitteistoarkkitehtuurista Bluetooth Low Energy (BLE) -yhteyteen ja Android -sovellusrakennukseen.

Valitsimme lampullemme muovikasvin viileäksi sisustussuunnitteluksi. Tälle projektille näytettävät ilmoitukset ovat seuraavista sovelluksista: puhelut, tekstiviestit/mms, facebook, messenger, instagram, whatsapp tai gmail. Jokaiselle ilmoitustyypille annetaan yksi vaalea väri.

Tätä projektia varten tarvitset:

  • UC, jossa on integroitu BLE -moduuli: nFR51822 RedBearLab
  • 3 NeoPixel -rengasta (12 RGB -LEDiä)
  • Android -älypuhelin
  • Android Studio

Jokaisella ilmoituksella on tietty prioriteetti sen tärkeydestä riippuen. Esimerkiksi saapuvan puhelun ilmoitus on tärkeämpi kuin Facebook -ilmoitus. Siinä tapauksessa LED -valojen väri yhdistetään saapuvan puhelun ilmoitukseen.

Älypuhelin, jolla kehitimme sovelluksen, on Samsung Galaxy A5.

Vaihe 1: Laitteiston osa

Laitteiston osa
Laitteiston osa

Meidän arkkitehtuurimme on melko yksinkertainen.

Liitä NeoPixel Ring -nastat nRF51822 -korttiin seuraavasti:

  • NeoPixel -renkaan Inout Data -nasta uC: n porttiin 3.
  • Vcc NeoPixel -renkaasta uC: n 3,3 volttiin.
  • NeoPixel Ringin GND uC: n GND: hen.

Huomaat, että emme käytä NeoPixel Ringin Output Data -nasta. Tämä johtuu siitä, että tässä projektissa käyttämiemme kolmen NeoPixel -renkaan syöttötietonastat on kytketty samaan nRF51822 -kortin porttiin (nasta 3).

Vaihe 2: Ohjelmiston osa

Ohjelmiston osa
Ohjelmiston osa
Ohjelmiston osa
Ohjelmiston osa
Ohjelmiston osa
Ohjelmiston osa

1. Bluetooth Low Energy -viestintä:

BLE -viestinnässä palvelin (tässä tapauksessa uC) ja asiakas (älypuhelin) vaihtavat tietoja GATT -tapahtumien avulla. Näissä tapahtumissa tiedot järjestetään hierarkkisesti palveluihin kutsutuiksi osioiksi, jotka ryhmittävät käsitteellisesti liittyviä käyttäjädatan osia, joita kutsutaan ominaisuuksiksi. Meidän tapauksessamme tietojen kapselointi on yksinkertaista, koska meillä on vain yksi tieto, joka välitetään asiakkaalta palvelimelle (katso yllä oleva kuva).

  • palvelinpuolella: Jotta voit käyttää nrf51822 -korttia BLE -palvelimena, asenna ensin "BLEPeripheral.h" -kirjasto Arduino IDE: hen. Tämä kirjasto tarjoaa käyttövalmiita toimintoja palveluiden ja ominaisuuksien luomiseen sekä mainontaan.
  • asiakaspuolella: Jos haluat aloittaa BLE -viestinnän Android Studiossa, määritä ensin BLE -käyttöoikeudet Manifest -tiedostossa. Lisää sitten activity_main.xml -tiedostoon 4 painiketta: skannaus, lopeta skannaus, yhdistä ja katkaise yhteys, jonka avulla sovellus voi etsiä lähellä olevia BLE -laitteita, lopettaa tarkistuksen, muodostaa yhteyden ja katkaista yhteyden laitteeseen. Toteuta main_activity.java -tiedostossa edellisiin painikkeisiin liittyvät toiminnot: startScanning (), stopcanning (), connectToDeviceSelected (),connectDeviceSelected (). Ota lopuksi käyttöön takaisinsoittotoiminnot, jotka soitetaan, kun asiakkaan tila muuttuu.

2. Ilmoitusten hallinta

  • asiakaspuolella (Android Studiossa): Jos haluat kuunnella älypuhelimesta tulevia ilmoituksia, ota käyttöön ilmoitusten kuuntelija, joka aktivoituu, kun ilmoitus tulee tilariville. Tämä ilmoitusten kuuntelija lähettää "viestin", jota kutsutaan tarkoitukseksi, päätoiminnolle, kun ilmoitus lähetetään tai poistetaan. Tämä "viesti" sisältää ilmoituskoodin, joka auttaa tunnistamaan ilmoituksen lähettäneen sovelluksen. Jos haluat käsitellä ilmoitusta päätoiminnassa, luo lähetysvastaanotin, joka vastaanottaa viestin ilmoitusten kuuntelijalta. Ilmoituskoodista riippuen palvelimelle lähetetään sitten eri merkki.
  • palvelinpuolella (Arduino IDE): ilmoitus, jolla on korkein prioriteetti, näytetään.

Vaihe 3: Vaihe 3: Liitteet

Täältä löydät kaikki koodilähteet.

Suositeltava: