Мазмұны:

Жеңіл бамбук (қосылған шам): 3 қадам
Жеңіл бамбук (қосылған шам): 3 қадам

Бейне: Жеңіл бамбук (қосылған шам): 3 қадам

Бейне: Жеңіл бамбук (қосылған шам): 3 қадам
Бейне: Төсекте дауыс шығару. Сексолог Нуржаубаева Анель 2024, Қараша
Anonim
Жеңіл бамбук (қосылған шам)
Жеңіл бамбук (қосылған шам)

Сәлем және қош келдіңіз!

Жеңіл бамбук - бұл қосылған смартфонға хабарландыру алған кезде жанатын қосылған шам. Бұл нұсқаулықтың мақсаты - сізге жобаның жобалау кезеңін көрсету: аппараттық архитектурадан Bluetooth төмен энергия (BLE) қосылымы мен Android қосымшасының ғимаратына дейін.

Біздің шам үшін біз сәндік безендіруге арналған пластикалық зауытты таңдадық. Бұл жоба үшін келесі хабарландырулар көрсетіледі: қоңыраулар, sms/mms, facebook, мессенджер, инстаграм, whatsapp ang gmail. Хабарламаның әр түріне бір ақшыл түс беріледі.

Бұл жоба үшін сізге қажет:

  • Біріктірілген BLE модулі бар UC: nFR51822 RedBearLab
  • 3 NeoPixel сақинасы (12 RGB жарық диоды)
  • Android смартфоны
  • Android студиясы

Әрбір хабарламаның маңыздылығына байланысты белгілі бір басымдығы бар. Мысалы, кіріс хабарламасы Facebook хабарламасынан маңызды. Бұл жағдайда жарық диодтарының түсі кіріс қоңырауы туралы хабарламамен байланысты болады.

Біз қосымшаны жасаған смартфон - бұл Samsung Galaxy A5.

1 -қадам: аппараттық бөлік

Аппараттық бөлік
Аппараттық бөлік

Біздің архитектурамыз өте қарапайым.

NeoPixel Ring түйреуіштерін nRF51822 тақтасына келесідей жалғаңыз:

  • NeoPixel сақинасының кіріс түйінін UC портына 3.
  • NeoPixel сақинасының кернеуі uC 3.3V дейін.
  • NeoPixel сақинасының GND uC GND дейін.

Сіз NeoPixel сақинасының шығыс деректерінің түйреуішін пайдаланбайтынымызды байқай аласыз. Себебі, біз осы жобада қолданатын үш NeoPixel сақинасының кіріс деректері түйрегіштері nRF51822 тақтасының бір портына қосылған (түйреуіш 3).

2 -қадам: Бағдарламалық қамтамасыз ету бөлігі

Бағдарламалық қамтамасыз ету бөлігі
Бағдарламалық қамтамасыз ету бөлігі
Бағдарламалық қамтамасыз ету бөлігі
Бағдарламалық қамтамасыз ету бөлігі
Бағдарламалық қамтамасыз ету бөлігі
Бағдарламалық қамтамасыз ету бөлігі

1. Bluetooth төмен энергия байланысы:

BLE байланысында сервер (біздің жағдайда uC) мен клиент (смартфон) GATT транзакцияларын қолдана отырып мәліметтермен алмасады. Бұл транзакцияларда деректер иерархиялық түрде қызметтер деп аталатын бөлімдерде ұйымдастырылады, олар сипаттамалар деп аталатын пайдаланушы деректерінің тұжырымдамалық байланысты бөліктерін топтастырады. Біздің жағдайда деректерді инкапсуляциялау қарапайым, өйткені бізде клиенттен серверге өтетін бір ғана ақпарат бар (жоғарыдағы суретті қараңыз).

  • сервер жағында: nrf51822 тақтасын BLE сервері ретінде пайдалану үшін алдымен Arduino IDE -де «BLEPeripheral.h» кітапханасын орнатыңыз. Бұл кітапхана қызметтер мен сипаттамалар мен жарнама жасау үшін пайдалануға дайын функцияларды ұсынады.
  • клиент жағында: Android Studio -да BLE байланысын бастау үшін алдымен Manifest файлындағы BLE рұқсаттарын конфигурациялаңыз. Содан кейін, activity_main.xml файлына 4 түймені қосыңыз: сканерлеу, қарап шығуды тоқтату, қосу және ажырату, бұл қосымшаға жақын орналасқан BLE құрылғыларын іздеуге, қарап шығуды тоқтатуға, құрылғыға қосуға және ажыратуға мүмкіндік береді. Main_activity.java файлында алдыңғы түймелермен байланысты функцияларды іске қосыңыз: startScanning (), stopscanning (), connectToDeviceSelected (), disconnectDeviceSelected (). Соңында, клиенттің күйі өзгерген кезде шақырылатын кері шақыру функцияларын орындаңыз..

2. Хабарламаны басқару

  • клиент жағында (Android Studio -да): смартфоннан келетін хабарландыруларды тыңдау үшін күй жолағында хабарландыру пайда болған кезде іске қосылатын хабарландыру тыңдаушысын іске қосыңыз. Бұл хабарлама тыңдаушысы хабарландыру орналастырылған немесе жойылған кезде негізгі әрекетке ниет деп аталатын «хабарды» жібереді. Бұл «хабарламада» хабарламаны орналастырған қосымшаны анықтауға көмектесетін хабарландыру коды бар. Негізгі қызмет түріндегі хабарландыруды өңдеу үшін хабарлама тыңдаушысынан хабар алатын хабар тарату қабылдағышын жасаңыз. Содан кейін хабарландыру кодына байланысты серверге басқа таңба жіберіледі.
  • сервер жағында (Arduino IDE -де): басымдыққа ие хабарландыру көрсетіледі.

3 -қадам: 3 -қадам: Қосымшалар

Мұнда сіз барлық код көздерін таба аласыз.

Ұсынылған: