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

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

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

物聯(lián)網(wǎng)全棧教程-從云端到設(shè)備(十四 完結(jié))

技新電子 ? 2018-05-28 11:26 ? 次閱讀

設(shè)備端的開發(fā)是一個(gè)非常簡單的工作。零妖今天就簡單講解一下物聯(lián)網(wǎng)彈幕器這個(gè)設(shè)備的源代碼,給大家提供一個(gè)裸機(jī)上云的思路。連載文章更新到這里要告一段落,因?yàn)檎娴臎]啥要講的了。

首先要說的是使用技小新的MQTT單片機(jī)編程小工具生成一個(gè)C語言的頭文件,這個(gè)在之前的文章里已經(jīng)說過了。你的單片機(jī)要干的事情就是通過串口把這些16進(jìn)制的數(shù)據(jù)發(fā)送給CH9121模塊,然后CH9121模塊會(huì)自動(dòng)把這些數(shù)據(jù)打包一下以TCP的形式發(fā)送給服務(wù)器。

14.1.jpg

單片機(jī)的串口資源真的非常好用。STM32F103C8T6這個(gè)型號(hào)的單片機(jī)有三個(gè)可以獨(dú)立使用的串口資源,物聯(lián)網(wǎng)彈幕器真正用的其實(shí)是兩個(gè),一個(gè)是串口1和電腦的串口連接,調(diào)試代碼時(shí)候輸出數(shù)據(jù)用的,一個(gè)是串口3用來和CH9121通信用的。在代碼上你可以讓串口1和串口3連接在一起,這樣就可以在電腦上發(fā)送數(shù)據(jù)給CH9121了,實(shí)現(xiàn)的方法請(qǐng)看代碼。

14.2.jpg

14.3.jpg

在單片機(jī)的內(nèi)部程序里,也是可以控制串口3發(fā)送任何數(shù)據(jù)的,所以就能發(fā)送小工具生成的數(shù)組到CH9121了。代碼如下。

14.4.jpg

從云端下發(fā)給設(shè)備的信息可能每次都不一樣,比如說彈幕信息,每個(gè)人發(fā)送的都不一樣那么單片機(jī)接收的數(shù)據(jù)長度就不一樣,這需要你使用循環(huán)隊(duì)列的方法來接收數(shù)據(jù)。首先你要預(yù)測一下云端一次性有可能下發(fā)數(shù)據(jù)的最大字節(jié)數(shù),然后隊(duì)列緩沖區(qū)的大小要是它的兩倍以上。這樣的處理可以非常有效的防止數(shù)據(jù)接收丟失的問題。

14.5.jpg

為了示范物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù)上報(bào)流程,物聯(lián)網(wǎng)彈幕器上面安裝了一個(gè)溫度傳感器。這個(gè)溫度傳感器輸出的是一個(gè)電壓信號(hào),這個(gè)電壓的大小是和溫度成正比例關(guān)系的。單片機(jī)能夠通過一種叫ADC的方法來獲取這個(gè)電壓數(shù)值,然后就可以計(jì)算溫度了。

14.6.jpg

在開始做規(guī)劃的時(shí)候,我從來沒有認(rèn)為顯示一個(gè)漢字會(huì)是整個(gè)項(xiàng)目中最大的絆腳石。從網(wǎng)頁上下發(fā)的彈幕信息是一個(gè)字符串,這個(gè)字符串是UTF8編碼的,英文字母一切正常,但是涉及到漢字就一定會(huì)亂碼,因?yàn)閱纹瑱C(jī)這邊按照往年經(jīng)驗(yàn)直接做了GBK編碼的處理。

經(jīng)過零妖老哥的不斷摸索,終于發(fā)現(xiàn)了一個(gè)曲折的救國之路,就是先把UTF8編碼轉(zhuǎn)換為Unicode編碼,然后再把它轉(zhuǎn)化為能夠顯示再OLED上面的點(diǎn)陣信息,存到外部存儲(chǔ)器里面,需要的時(shí)候就讀取一下并顯示出來。相關(guān)代碼如下:

14.7.jpg

14.8.jpg

好了,零妖老哥的物聯(lián)網(wǎng)全棧教程分享到這里就結(jié)束了。感謝各位兄弟的支持和鼓勵(lì)讓我有動(dòng)力連載完畢(堅(jiān)持做一件事情真的好難)。尤其感謝阿里巴巴IOT事業(yè)部的同學(xué)提供技術(shù)上的幫助。

有很多的想法和具體的細(xì)節(jié)是沒辦法在一個(gè)文章里寫清楚的,為了能幫助更多的朋友快速上云,零妖把這個(gè)教程拍成了一個(gè)系列的視頻教程,同時(shí)提供了物聯(lián)網(wǎng)彈幕器的相關(guān)硬件(前面已經(jīng)給了你開源地址,你完全可以自己做硬件哦)給想節(jié)約時(shí)間的工程師評(píng)估物聯(lián)網(wǎng)項(xiàng)目使用。

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

    評(píng)論

    相關(guān)推薦

    科技云報(bào)到:大模型云端,“AI+云計(jì)算”還能講出什么新故事

    科技云報(bào)到:大模型云端,“AI+云計(jì)算”還能講出什么新故事
    的頭像 發(fā)表于 01-07 13:27 ?70次閱讀

    曙光云開啟智能時(shí)代

    近日,“可信 云中生智”曙光云戰(zhàn)略發(fā)布會(huì)召開。曙光云首創(chuàng)“城市云”進(jìn)化實(shí)現(xiàn)“智能云”
    的頭像 發(fā)表于 12-19 15:11 ?274次閱讀

    聯(lián)網(wǎng)數(shù)據(jù)采集網(wǎng)關(guān)在聯(lián)網(wǎng)中扮演的角色

    聯(lián)網(wǎng)數(shù)據(jù)采集網(wǎng)關(guān),作為聯(lián)網(wǎng)系統(tǒng)中的關(guān)鍵設(shè)備,扮演著連接物理世界與數(shù)字世界的橋梁角色。它位于
    的頭像 發(fā)表于 11-17 14:44 ?208次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>數(shù)據(jù)采集網(wǎng)關(guān)在<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>中扮演的角色

    聯(lián)網(wǎng)學(xué)習(xí)路線來啦!

    聯(lián)網(wǎng)學(xué)習(xí)路線來啦! 聯(lián)網(wǎng)方向作為目前一個(gè)熱門的技術(shù)發(fā)展方向,有大量的人才需求,小白的學(xué)習(xí)入門路線推薦以下步驟。 1.了解
    發(fā)表于 11-11 16:03

    特斯拉FSD,自研智能駕駛的未來

    技術(shù)已然成為各車企研發(fā)的主要方向之一。在眾多自動(dòng)駕駛技術(shù)的探索者中,特斯拉(Tesla)憑借FSD(Full Self-Driving)系統(tǒng),占據(jù)了行業(yè)的領(lǐng)先地位。FSD系統(tǒng)自發(fā)布以來,經(jīng)歷了外部合作到自研的轉(zhuǎn)型,并在感知
    的頭像 發(fā)表于 10-29 16:27 ?380次閱讀
    特斯拉FSD,<b class='flag-5'>從</b><b class='flag-5'>全</b><b class='flag-5'>棧</b>自研<b class='flag-5'>到</b>智能駕駛的未來

    聯(lián)網(wǎng)設(shè)備的標(biāo)準(zhǔn)與規(guī)范

    聯(lián)網(wǎng)(IoT)正在改變我們的生活方式,智能家居工業(yè)自動(dòng)化,再到智慧城市,聯(lián)網(wǎng)
    的頭像 發(fā)表于 10-29 11:34 ?698次閱讀

    邊緣設(shè)備云端平臺(tái),合宙DTU&amp;RTU打造無縫聯(lián)網(wǎng)解決方案

    ? 如今,聯(lián)網(wǎng)(IoT)技術(shù)飛速發(fā)展,萬互聯(lián)的時(shí)代已然到來,那么,高效、穩(wěn)定地連接邊緣設(shè)備云端平臺(tái),實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)采集、傳輸與處理,就
    的頭像 發(fā)表于 09-18 14:55 ?385次閱讀
    <b class='flag-5'>從</b>邊緣<b class='flag-5'>設(shè)備</b><b class='flag-5'>到</b><b class='flag-5'>云端</b>平臺(tái),合宙DTU&amp;RTU打造無縫<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>解決方案

    什么是聯(lián)網(wǎng)技術(shù)?

    什么是聯(lián)網(wǎng)技術(shù)? 聯(lián)網(wǎng)技術(shù)(Internet of Things, IoT)是一種通過信息傳感設(shè)備,按約定的協(xié)議,將任何物體與網(wǎng)絡(luò)相連
    發(fā)表于 08-19 14:08

    智慧聯(lián)網(wǎng)網(wǎng)關(guān)是什么

    型的設(shè)備和傳感器進(jìn)行通信。 首先,功能層面來看,智慧聯(lián)網(wǎng)網(wǎng)關(guān)能夠?qū)崿F(xiàn)設(shè)備聯(lián)網(wǎng),使得
    的頭像 發(fā)表于 08-13 13:42 ?1427次閱讀

    Modbus聯(lián)網(wǎng)網(wǎng)關(guān)是什么

    Modbus聯(lián)網(wǎng)網(wǎng)關(guān)是一種專門用于將基于Modbus協(xié)議的設(shè)備連接到聯(lián)網(wǎng)(IoT)的設(shè)備或軟
    的頭像 發(fā)表于 08-10 13:49 ?440次閱讀
    Modbus<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>網(wǎng)關(guān)是什么

    【天拓四方】聯(lián)網(wǎng)網(wǎng)關(guān)硬件和云端分別實(shí)現(xiàn)了哪些功能?

    聯(lián)網(wǎng)(IoT)的廣闊領(lǐng)域中,聯(lián)網(wǎng)網(wǎng)關(guān)硬件和云端各自扮演著不可或缺的角色。它們通過一系列功能,共同確保
    的頭像 發(fā)表于 04-19 16:18 ?339次閱讀

    聯(lián)數(shù)據(jù)網(wǎng)關(guān)是什么?

    聯(lián)數(shù)據(jù)網(wǎng)關(guān)就是聯(lián)網(wǎng)智能網(wǎng)關(guān)。 聯(lián)數(shù)據(jù)網(wǎng)關(guān)是
    的頭像 發(fā)表于 03-29 17:10 ?334次閱讀

    現(xiàn)場云端:造紙機(jī)生產(chǎn)數(shù)據(jù)鏈條采集及可視化解決方案

    現(xiàn)場云端:造紙機(jī)生產(chǎn)數(shù)據(jù)鏈條采集及可視化解決方案 造紙機(jī)作為造紙工業(yè)的核心設(shè)備,其運(yùn)行效率和穩(wěn)定性直接關(guān)系到企業(yè)的經(jīng)濟(jì)效益。然而,傳統(tǒng)
    的頭像 發(fā)表于 02-21 15:42 ?422次閱讀
    <b class='flag-5'>從</b>現(xiàn)場<b class='flag-5'>到</b><b class='flag-5'>云端</b>:造紙機(jī)生產(chǎn)數(shù)據(jù)<b class='flag-5'>全</b>鏈條采集及可視化解決方案

    工業(yè)聯(lián)網(wǎng)平臺(tái)實(shí)現(xiàn)智能化云端計(jì)算與策略控制 ?

    隨著科技的飛速發(fā)展,工業(yè)聯(lián)網(wǎng)平臺(tái)以其便捷的系統(tǒng)架構(gòu)和智能的算力資源,能夠賦予工業(yè)設(shè)備不一樣的生命與活力,其中實(shí)現(xiàn)智能化云端計(jì)算與策略控制是重要組成部分。它能夠補(bǔ)足自動(dòng)化控制系統(tǒng)的不足
    的頭像 發(fā)表于 01-11 17:36 ?412次閱讀
    工業(yè)<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>平臺(tái)實(shí)現(xiàn)智能化<b class='flag-5'>云端</b>計(jì)算與策略控制  ?

    聯(lián)網(wǎng)可視化運(yùn)維監(jiān)控平臺(tái)

    監(jiān)控企業(yè)的各種應(yīng)用、系統(tǒng)、網(wǎng)絡(luò)和設(shè)備,提供實(shí)時(shí)的性能指標(biāo)、日志和事件數(shù)據(jù),幫助企業(yè)快速發(fā)現(xiàn)和解決問題,提高系統(tǒng)的可用性和穩(wěn)定性。 運(yùn)維監(jiān)控平臺(tái)通常包括以下幾個(gè)方面的功能: 1應(yīng)用監(jiān)控: 監(jiān)控企業(yè)的各種應(yīng)用程序,包括Web應(yīng)用
    的頭像 發(fā)表于 01-11 11:46 ?1346次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b><b class='flag-5'>全</b><b class='flag-5'>棧</b>可視化運(yùn)維監(jiān)控平臺(tái)