99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【玩轉(zhuǎn)OH】如何實(shí)現(xiàn)樹莓派“碰一碰”設(shè)備控制

電子發(fā)燒友論壇 ? 來源:未知 ? 2023-01-11 02:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

348c45ec-910f-11ed-bfe3-dac502259ad0.jpg

賈振興

中國科學(xué)院軟件研究所

OpenHarmony知識體系工作組

以下內(nèi)容來自嘉賓分享

一、簡介

“碰一碰”設(shè)備控制,依托NFC短距通信協(xié)議,通過碰一碰的交互方式,將OpenAtom OpenHarmony(簡稱“OpenHarmony”)標(biāo)準(zhǔn)系統(tǒng)設(shè)備和全場景設(shè)備連接起來,解決了應(yīng)用與設(shè)備之間接續(xù)慢、傳輸難的問題,實(shí)現(xiàn)一碰拉起應(yīng)用,為用戶帶來無縫切換的流暢體驗(yàn)。

二、“碰一碰”設(shè)備控制場景

34979b54-910f-11ed-bfe3-dac502259ad0.png(1)使用效果當(dāng)樹莓派開發(fā)板靠近小熊派開發(fā)板,樹莓派中應(yīng)用程序被拉起,進(jìn)入LED小燈控制界面。然后,控制端和設(shè)備端完成配網(wǎng)通信連接,點(diǎn)擊打開小熊派LED小燈點(diǎn)亮,點(diǎn)擊關(guān)閉LED小燈熄滅。 (2)操作流程
  • 在小熊派的NFC被動貼片中寫入控制端應(yīng)用信息
  • 將樹莓派的PN532主動板靠近小熊派NFC貼片,讀取貼片中的應(yīng)用信息,拉起對應(yīng)的小燈控制應(yīng)用
  • 控制端和設(shè)備端完成配網(wǎng)通信連接
  • 點(diǎn)擊打開小熊派LED小燈點(diǎn)亮,點(diǎn)擊關(guān)閉LED小燈熄滅

三、NFC拉起應(yīng)用功能實(shí)現(xiàn)

近場通信(Near Field Communication,簡稱NFC),是一種新興的技術(shù),使用了NFC技術(shù)的設(shè)備可以在彼此靠近的情況下進(jìn)行數(shù)據(jù)交換,是由非接觸式射頻識別(RFID)演變而來。NFC技術(shù)在現(xiàn)實(shí)場景中被廣泛使用,通過在單一芯片上集成感應(yīng)式讀卡器、感應(yīng)式卡片和點(diǎn)對點(diǎn)通信的功能,利用移動終端實(shí)現(xiàn)移動支付、門禁、移動身份識別、防偽等應(yīng)用。NFC的點(diǎn)對點(diǎn)模式需要主動板和被動板兩個模塊,該案例中樹莓派的PN532模塊是主動板用于讀取信息,小熊派開發(fā)板的NFC貼片是被動板用于保存信息。
int main(int argc, char **argv) {  uint8_t buff[255];  uint8_t uid[MIFARE_UID_MAX_LENGTH];  int32_t uid_len = 0;  PN532 pn532;  PN532_I2C_Init(&pn532);  if (PN532_GetFirmwareVersion(&pn532, buff) == PN532_STATUS_ERROR) {    return -1;  }  PN532_SamConfiguration(&pn532);  while (1) {    while (1) {      // 判斷NFC模塊是否靠近      if (PN532_ReadPassiveTarget(&pn532, uid, PN532_MIFARE_ISO14443A, 1000) != PN532_STATUS_ERROR) {        break;      }      usleep(100);    }    HILOGI("開始調(diào)起應(yīng)用
");    pthread_t id1;    int ret = pthread_create(&id1, NULL, (void *)mythread1, NULL);    if (ret) {      HILOGE("創(chuàng)建線程失敗
");    }    sleep(4);  }}/**拉起設(shè)備控制應(yīng)用的線程*/void *mythread1(void) {  char arg[500] = "aa start -d 1 -a com.huawei.ohos_car_controller.default -b ohos.samples.jshelloworld";  system(arg);  return NULL;}
上述代碼中,NFC功能的實(shí)現(xiàn)需要調(diào)用驅(qū)動文件中相應(yīng)的接口函數(shù)。I2C_Init函數(shù)實(shí)現(xiàn)樹莓派PN532模塊的初始化。PN532_ReadPassiveTarget函數(shù)用于實(shí)現(xiàn)循環(huán)讀取NFC貼片的UID信息,當(dāng)讀到小熊派NFC貼片信息時,創(chuàng)建新的線程拉起對應(yīng)的LED燈應(yīng)用。

四、LED小燈應(yīng)用功能實(shí)現(xiàn)

該案例中LED小燈應(yīng)用,主要基于TCP通信協(xié)議實(shí)現(xiàn)對小熊派LED小燈的打開和關(guān)閉控制。 34a18aba-910f-11ed-bfe3-dac502259ad0.png ?
import led_controller from '@ohos.led_controller';
export default {
    onShow() {
        this.tcpConnect();
    },
    onDestroy() {
        this.tcpDistroy();
    },
    tcpConnect() {
        let promise_connect = led_controller.Connect();
        promise_connect.then((results) => {
            setTimeout(this.changeText(), 9000);
        }).catch(err => {
            console.log('[led Controller]' + err)
        })
    },
    tcpSend(message) {
        let promise_send = led_controller.Send({
            data: message
        })
        promise_send.then((results) => {
            if (results.send_status == 1) {
                console.log("[led Controller] send success")
            }
        }).catch(err => {
            console.log("[led Controller]" + err)
        })
    },
    tcpDistroy() {
        let promise_disconnect = led_controller.Close()
        promise_disconnect.then((results) => {
            if (results.close_status == 1) {
                ConnectionStatus = 0
                prompt.showToast({
                    message: "網(wǎng)絡(luò)斷開",
                });
            }
        }).catch(err => {
            console.log("[led Controller]" + err)
        })
    },
    ledOpen() {
       this.tcpSend("1")
    },
    changeText() {
        prompt.showToast({
            message: "配網(wǎng)成功",
        });
    },
    ledClose() {
        this.tcpSend("0")
    }
}
上述代碼中,通過import led_controller from '@ohos.led_controller'引入NAPI動態(tài)庫,led_controller動態(tài)庫中封裝TCP通信相關(guān)的接口函數(shù)。

五、總結(jié)

本文介紹了如何使用NFC實(shí)現(xiàn)OpenHarmony“碰一碰”設(shè)備控制。首先,需要基于樹莓派PN532模塊驅(qū)動開發(fā)NFC智能感知的應(yīng)用,實(shí)現(xiàn)設(shè)備間碰一碰發(fā)現(xiàn)的功能。然后,基于NAPI開發(fā)設(shè)備間的TCP通信業(yè)務(wù),并在應(yīng)用層調(diào)用接口函數(shù)實(shí)現(xiàn)LED小燈的開閉。除了文中分享的樣例,開發(fā)者還可以通過拓展其他相關(guān)的屬性和方法,實(shí)現(xiàn)更多好玩的、高性能的樣例。

代碼地址:

https://gitee.com/isrc_ohos/led-contrller-device

https://gitee.com/isrc_ohos/led-controller-application

本文由電子發(fā)燒友社區(qū)發(fā)布,轉(zhuǎn)載請注明以上來源。如需社區(qū)合作及入群交流,請?zhí)砑?/span>微信EEFans0806,或者發(fā)郵箱liuyong@huaqiu.com。

34b9747c-910f-11ed-bfe3-dac502259ad0.png

熱門推薦干貨好文

1、24Bit ADC高精度低功耗MCU 醫(yī)療級別設(shè)備參考設(shè)計(附上高精確算法+電路原理圖)

2、超強(qiáng)性能AI芯片,OpenHarmony多系統(tǒng)支持,可定制高性能AP(附10+開發(fā)Demo)

3、從零入門物聯(lián)網(wǎng)OH開源平臺,從簡單到高階項(xiàng)目,創(chuàng)客、電子愛好者都愛用!

4、低成本ESP32方案,支持OpenHarmony系統(tǒng)開發(fā)(附10+項(xiàng)目樣例Demo)

5、NO RTOS移植!32位、64線程開發(fā)板,超強(qiáng)實(shí)時性體驗(yàn)!

6、四核64位,超強(qiáng)CPU ,看RK3568“競”開發(fā)板DEMO!

7、人工智能也能這么玩, 簡單快速入手,還能自定義AI運(yùn)算

8、業(yè)界首款!支持富設(shè)備開發(fā),OpenHarmony開發(fā)者都選它!

9、高性能雙核RISC-V,滿足大多數(shù)開發(fā),這款國產(chǎn)MCU工程師都愛了!


原文標(biāo)題:【玩轉(zhuǎn)OH】如何實(shí)現(xiàn)樹莓派“碰一碰”設(shè)備控制

文章出處:【微信公眾號:電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標(biāo)題:【玩轉(zhuǎn)OH】如何實(shí)現(xiàn)樹莓派“碰一碰”設(shè)備控制

文章出處:【微信號:gh_9b9470648b3c,微信公眾號:電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    下”支付終端應(yīng)用在酒店:智能無卡入住與客房控制

    和數(shù)字化體驗(yàn)。消費(fèi)者在門店買單時,用手機(jī)下付款筆筆有優(yōu)惠、同步實(shí)現(xiàn)會員積分。但除了餐飲零售場景,“下”終端和“
    的頭像 發(fā)表于 07-04 09:57 ?169次閱讀
    “<b class='flag-5'>碰</b><b class='flag-5'>一</b>下”支付終端應(yīng)用在酒店:智能無卡入住與客房<b class='flag-5'>控制</b>

    NFC一碰技術(shù)在無線話筒的應(yīng)用

    中,可實(shí)現(xiàn)設(shè)備間的無線通信、身份認(rèn)證、參數(shù)配置和數(shù)據(jù)交互,從而構(gòu)建個既具備低功耗參數(shù)管理,又支持高速安全認(rèn)證與多協(xié)議交互的綜合網(wǎng)絡(luò)。
    的頭像 發(fā)表于 07-02 17:49 ?172次閱讀
    NFC<b class='flag-5'>碰</b><b class='flag-5'>一碰</b>技術(shù)在無線話筒的應(yīng)用

    樹莓小技巧:無需鍵盤或顯示器,如何通過WiFi設(shè)置樹莓

    接入,但隨著我們逐漸遠(yuǎn)離臺式電腦,找到鍵盤和顯示器變得越來越困難。旦WiFi設(shè)置完成,就可以通過SSH連接到樹莓,并從筆記本電腦或其他設(shè)備遠(yuǎn)程與
    的頭像 發(fā)表于 06-26 15:41 ?306次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>小技巧:無需鍵盤或顯示器,如何通過WiFi設(shè)置<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>?

    下終端,讓自助售貨機(jī)秒變 “家里的冰箱”

    繼刷臉支付后,支付寶近日又推出了新的支付方式——下支付。只需將手機(jī)輕輕靠近支付寶“下”支付終端,即可完成支付,比以往要先解鎖手機(jī),調(diào)出APP的付款碼再支付的操作環(huán)節(jié)要便捷和省時
    的頭像 發(fā)表于 06-18 10:49 ?203次閱讀
    <b class='flag-5'>碰</b><b class='flag-5'>一</b>下終端,讓自助售貨機(jī)秒變 “家里的冰箱”

    樹莓分類器:用樹莓識別不同型號的樹莓!

    在本教程系列的第部分中,您將學(xué)習(xí)如何使用樹莓AI攝像頭來檢測不同的樹莓型號。本系列由DavidPlowman創(chuàng)建,他是
    的頭像 發(fā)表于 06-13 16:39 ?414次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>分類器:用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>識別不同型號的<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>!

    樹莓“吉尼斯世界記錄”:將樹莓的性能發(fā)揮到極致的項(xiàng)目!

    樹莓款功能強(qiáng)大、體積小巧且高度可定制的設(shè)備,多年來,我們見證了它被應(yīng)用于眾多領(lǐng)域。無論是將其裝入3D打印的經(jīng)典游戲機(jī)外殼,還是簡單地將它隱藏起來作為家庭文件服務(wù)器,我們都報道過在
    的頭像 發(fā)表于 05-22 16:53 ?640次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>“吉尼斯世界記錄”:將<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的性能發(fā)揮到極致的項(xiàng)目!

    【HarmonyOS NEXT】華為分享-一碰開發(fā)分享

    關(guān)鍵詞:鴻蒙、一碰、systemShare、harmonyShare、Share Kit 華為分享新推出一碰分享,支持用戶通過手機(jī)
    發(fā)表于 05-16 16:19

    華為錢包,何以“”出未來?

    一碰即達(dá)成為數(shù)字生活的新常態(tài)
    的頭像 發(fā)表于 05-05 22:59 ?1471次閱讀
    華為錢包,何以“<b class='flag-5'>碰</b>”出未來?

    樹莓+Balena OS:鍵解鎖智能硬件新技能!

    通過云平臺實(shí)現(xiàn)遠(yuǎn)程管理。今天,我們就來詳細(xì)了解下如何在樹莓派上安裝BalenaOS,并開發(fā)你的第個應(yīng)用,讓你的樹莓
    的頭像 發(fā)表于 03-25 09:25 ?992次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>+Balena OS:<b class='flag-5'>一</b>鍵解鎖智能硬件新技能!

    GPIO在樹莓中的應(yīng)用

    直接控制和讀取外部硬件設(shè)備的狀態(tài)。 1. GPIO簡介 GPIO是樹莓派上用于與外部世界交互的組引腳。這些引腳可以被配置為輸入或輸出模式,從而實(shí)現(xiàn)
    的頭像 發(fā)表于 01-09 09:41 ?834次閱讀

    下”支付背后的4G技術(shù)

    不知道你是否有留意,近期,在線下支付場景中,多了個支付寶“下”支付的設(shè)備,只需要“解鎖手機(jī)—
    的頭像 發(fā)表于 01-03 16:27 ?1893次閱讀

    使用樹莓實(shí)現(xiàn)遠(yuǎn)程控制的技巧

    樹莓款功能強(qiáng)大的微型計算機(jī),其體積小巧、價格低廉,非常適合用于各種DIY項(xiàng)目。其中,遠(yuǎn)程控制樹莓
    的頭像 發(fā)表于 11-11 11:37 ?1403次閱讀

    樹莓gpio有什么用,樹莓gpio接口及編程方法

    /Output,通用輸入/輸出)是樹莓提供的組可編程的引腳,是樹莓與外部世界進(jìn)行交互的重要橋梁。通過GPIO,用戶可以
    的頭像 發(fā)表于 10-22 18:09 ?2680次閱讀

    什么是樹莓?樹莓是什么架構(gòu)的

    什么是樹莓 樹莓(Raspberry Pi,簡寫為RPi,別名為RasPi/RPI)是由英國“Raspberry Pi 慈善基金會”開發(fā)的
    的頭像 發(fā)表于 10-22 17:33 ?5833次閱讀

    樹莓網(wǎng)關(guān):物聯(lián)網(wǎng)應(yīng)用的新標(biāo)桿

    的特點(diǎn)是體積小巧(大約信用卡大?。?,但功能齊全,足以支持多種計算任務(wù)。 樹莓經(jīng)常被用作物聯(lián)網(wǎng)網(wǎng)關(guān),收集設(shè)備數(shù)據(jù),然后將數(shù)據(jù)上傳云平臺,并還可以用來接收來自云端的控制指令,
    的頭像 發(fā)表于 10-09 16:44 ?835次閱讀
    類<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>網(wǎng)關(guān):物聯(lián)網(wǎng)應(yīng)用的新標(biāo)桿