久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 11928|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

基于物聯(lián)網(wǎng)的ESP8266連接機(jī)智云教程

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:210817 發(fā)表于 2018-3-16 11:13 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
前言:本文詳細(xì)介紹了小黑板接入機(jī)智云教程,通過(guò)一個(gè)手機(jī)APP遠(yuǎn)程控制LED亮滅的應(yīng)用,完整的體驗(yàn)了機(jī)智云提供的一些列簡(jiǎn)單方便的開(kāi)發(fā)工具,尤其是代碼自動(dòng)生成工具,懶人福音。
一、 esp8266簡(jiǎn)介
ESP8266 是上海樂(lè)鑫研發(fā)的高性能無(wú)線(xiàn) SOC,旨在以最低成本提供最大實(shí)用性,為 WiFi 功能嵌入其他系統(tǒng)提供無(wú)限可能,被稱(chēng)為業(yè)界里程碑。通俗的講就是高性能單片機(jī)+無(wú)線(xiàn)WiFi外設(shè),特性如下:
ESP8266
低功耗、高集成度的 Wi-Fi 芯片
僅需 7 個(gè)**元器件
超寬工作溫度范圍:-40°C +125°C
ESP8285 ESP8266 內(nèi)封 8 Mbit Flash
高度集成
ESP8266EX 是業(yè)內(nèi)集成度最高的 Wi-Fi 芯片,最小封裝尺寸僅為 5mm x 5mmESP8266EX 高度集成了天線(xiàn)開(kāi)關(guān)、射頻 balun、功率放大器、低噪放大器、過(guò)濾器和電源管理模塊,僅需很少的**電路,可將所占 PCB 空間降到最低。
32 Tensilica MCU
ESP8266EX 內(nèi)置 Tensilica L10632 位微型控制器 (MCU),具有超低功耗和 16 RSIC,時(shí)鐘速度最高可達(dá) 160 MHz。支持實(shí)時(shí)操作系統(tǒng) (RTOS),目前 Wi-Fi 協(xié)議棧只用了 20% MIPS,其他均可用于用戶(hù)編程和開(kāi)發(fā)。
低功耗
ESP8266EX 專(zhuān)為移動(dòng)設(shè)備、可穿戴電子產(chǎn)品和物聯(lián)網(wǎng)應(yīng)用而設(shè)計(jì),通過(guò)多項(xiàng)專(zhuān)有技術(shù)實(shí)現(xiàn)了最低功耗。ESP8266EX 有三種運(yùn)行模式:激活模式、睡眠模式和深度睡眠模式,能夠延長(zhǎng)電池壽命。
性能穩(wěn)定
ESP8266EX 集成了更多的元器件,性能穩(wěn)定,易于制造,工作溫度范圍達(dá)到 -40°C +125°C
二、小黑板簡(jiǎn)介
小黑板是安信可基于ESP8266研發(fā)的開(kāi)發(fā)板,板載1顆三色RGBLED,光敏電阻,3.3V LDO電源模塊,以及1個(gè)輕觸按鍵,可在官網(wǎng)查看原理圖,原理圖如下:
各個(gè)引腳的功能如下:
一、 開(kāi)發(fā)步驟
首先明確下目的:通過(guò)手機(jī)APP控制RGB LED的亮滅。進(jìn)一步分析,除了LED的驅(qū)動(dòng),我們還需要輔助,就是如何配置輸入路由器的SSID和密碼問(wèn)題,利用板載的一顆輕觸開(kāi)關(guān)進(jìn)行觸發(fā)和機(jī)智云手機(jī)APP可輕而易舉的實(shí)現(xiàn)smartconfig
利用機(jī)智云平臺(tái)只需2步,1是底層LED驅(qū)動(dòng)代碼編寫(xiě),2是利用代碼自動(dòng)生成工具生成工程框架,然后填充用戶(hù)指令,比如開(kāi)關(guān)燈。
準(zhǔn)備工作:
第一步:了解機(jī)智云平臺(tái)架構(gòu)(可略過(guò)),戳我
第二步:了解機(jī)智云Soc方案(可略過(guò)),戳我
1.      首先在開(kāi)發(fā)者中心創(chuàng)建產(chǎn)品:
2.      建立數(shù)據(jù)點(diǎn)(詳解數(shù)據(jù)點(diǎn)):

數(shù)據(jù)點(diǎn)即設(shè)備產(chǎn)品的功能的抽象,用于描述產(chǎn)品功能及其參數(shù)。創(chuàng)建數(shù)據(jù)點(diǎn)后,設(shè)備與云端通訊的數(shù)據(jù)格式即可確定,設(shè)備、機(jī)智云可以相互識(shí)別設(shè)備與機(jī)智云互聯(lián)互通的數(shù)據(jù)。
例如開(kāi)關(guān)紅燈的數(shù)據(jù)點(diǎn):
2.1 顯示名稱(chēng):自定義功能點(diǎn)名稱(chēng)。
2.2 標(biāo)識(shí)名:用于應(yīng)用層傳輸,客戶(hù)端或業(yè)務(wù)云開(kāi)發(fā)時(shí)需要使用。命名規(guī)則遵循標(biāo)準(zhǔn)的開(kāi)發(fā)語(yǔ)言變量名命名規(guī)范,支持英文字母、數(shù)字和下劃線(xiàn),以英文字母開(kāi)頭。
2.3 讀寫(xiě)類(lèi)型:
① 只讀:表示該數(shù)據(jù)點(diǎn)非控制,數(shù)據(jù)只支持從設(shè)備上報(bào)。
② 可寫(xiě):表示該數(shù)據(jù)點(diǎn)可控制。設(shè)備端可上報(bào)該數(shù)據(jù)點(diǎn)數(shù)據(jù);云端/客戶(hù)端可對(duì)該數(shù)據(jù)點(diǎn)數(shù)據(jù)做出下發(fā)控制。
③ 報(bào)警:表示該數(shù)據(jù)點(diǎn)非控制,數(shù)據(jù)只支持從設(shè)備上報(bào),數(shù)據(jù)類(lèi)型需為布爾值。
④ 故障:表示該數(shù)據(jù)點(diǎn)非控制,數(shù)據(jù)只支持從設(shè)備上報(bào),數(shù)據(jù)類(lèi)型需為布爾值。云端會(huì)對(duì)設(shè)備上報(bào)的該數(shù)據(jù)點(diǎn)做統(tǒng)計(jì),可在“運(yùn)行狀態(tài)”查看。
2.4 數(shù)據(jù)類(lèi)型:

① 布爾值:表示兩個(gè)狀態(tài):0,或1。如開(kāi)關(guān)狀態(tài)等,建議使用布爾數(shù)據(jù)類(lèi)型。例如gokit開(kāi)發(fā)板的寵物屋開(kāi)啟/關(guān)閉紅色燈該數(shù)據(jù)點(diǎn)。
② 枚舉類(lèi)型:可定義一個(gè)有限的取值集合。當(dāng)定義的某個(gè)功能(元器件)有固定的若干個(gè)值。例如GoKit開(kāi)發(fā)板的寵物屋設(shè)定LED組合顏色該數(shù)據(jù)點(diǎn)的枚舉定義值:自定義,黃色,紫色,粉色
③ 數(shù)值:填寫(xiě)數(shù)值范圍,數(shù)值可為負(fù)數(shù)/小數(shù),機(jī)智云自動(dòng)將數(shù)值轉(zhuǎn)換為正數(shù)。例如GoKit開(kāi)發(fā)板的寵物屋設(shè)定電機(jī)轉(zhuǎn)速該數(shù)據(jù)點(diǎn):電機(jī)有正反轉(zhuǎn)、調(diào)速功能,數(shù)據(jù)點(diǎn)值可定義為:-55
④ 擴(kuò)展:填寫(xiě)數(shù)據(jù)長(zhǎng)度,數(shù)據(jù)內(nèi)容由用戶(hù)自定義。對(duì)于上述功能點(diǎn)無(wú)法滿(mǎn)足的復(fù)雜功能可采用。機(jī)智云不建議使用此類(lèi)型數(shù)據(jù),設(shè)備上報(bào)該數(shù)據(jù)點(diǎn)的數(shù)據(jù),機(jī)智云無(wú)法識(shí)別。
1.5  備注:選填,用一段文本描述當(dāng)前數(shù)據(jù)點(diǎn)的功能及定義方法,對(duì)字符格式不做限制。只用于提高數(shù)據(jù)點(diǎn)的易讀性,如果需要團(tuán)隊(duì)協(xié)作開(kāi)發(fā),建議規(guī)范填寫(xiě)。

3.      選擇SOC方案以生成工程:
然后點(diǎn)擊生成按鈕即可生成完畢;

點(diǎn)擊下載即可,下載后把它改名為MiniE_Test,因?yàn)槟莻(gè)名字實(shí)在是太長(zhǎng)了。在開(kāi)發(fā)向?qū)Ю铮泻芏嗍謱?shí)用的工具和教程。
4. 至此云端工作完畢,開(kāi)始MCU端編程,下載生成的工程,目錄如下:
詳情如下:
生成的這個(gè)工程和官方的微信寵物屋源碼框架是相似的,源碼邏輯詳解點(diǎn)我
下面編寫(xiě)RGB LED驅(qū)動(dòng)頭文件,命名為hal_led.h,并把它放到\MiniE_Test\app\include\driver目錄:
接下來(lái)編寫(xiě)對(duì)應(yīng)的C文件,命名為hal_led.c,并把它放到\MiniE_Test\app\driver目錄:
關(guān)于GPIO功能的定義在這個(gè)文件:
接下來(lái)修改按鍵,這個(gè)按鍵的作用是觸發(fā)小E進(jìn)入聯(lián)網(wǎng)模式,配合手機(jī)APP獲取路由器的SSID和密碼。由于生成的工程包含的按鍵驅(qū)動(dòng)是以機(jī)智云官方Gokit3 SOC版為模板的,我們小E的按鍵連接的管腳和Gokit是不一樣的,因此需要修改。
\MiniE_Test\app\user里的user_main.c文件,包含了整個(gè)框架和按鍵定義,直接在這里修改即可:
如上對(duì)比圖,去掉一個(gè)按鍵,并修改IO編號(hào),然后修改按鍵的初始化和回調(diào)函數(shù):
至此按鍵修改完畢。接下來(lái)在\MiniE_Test\app\user 里的user_main.c文件,即“主函數(shù)”里調(diào)用RGB LED初始化以完成外設(shè)初始化:
首先包含RGB LED驅(qū)動(dòng)路徑:
然后在void ICACHE_FLASH_ATTR user_init(void)函數(shù)調(diào)用RGB LED初始化:
User_main.c中還有一個(gè)userTimerFun定時(shí)回調(diào)函數(shù),這里可依據(jù)數(shù)據(jù)點(diǎn)添加信息,例如本例增加了RGB LED故障上報(bào),當(dāng)然填充值為0,因?yàn)閷?shí)際并沒(méi)有去檢測(cè)的LED的好壞,另外的2個(gè)參數(shù)是用于光照檢測(cè)的,本期沒(méi)有添加板載光明敏電阻的驅(qū)動(dòng),這里直接給了一個(gè)固定值,下期將給出相關(guān)教程。

最后一步是在\MiniE_Test\app\Gizwits里的gizwits_product.c文件中添加業(yè)務(wù)邏輯,本例就是MCU收到手機(jī)APP的對(duì)應(yīng)指令后執(zhí)行開(kāi)或關(guān)燈動(dòng)作。首先是包含驅(qū)動(dòng)頭文件:
然后找到如下函數(shù):int8_t ICACHE_FLASH_ATTRgizwitsEventProcess(eventInfo_t *info, uint8_t *data, uint32_t len),在里面如下位置添加對(duì)應(yīng)代碼:
至此代碼編輯全部完成,后顧一下,是不是只是簡(jiǎn)單的編寫(xiě)了底層驅(qū)動(dòng)和填充了用戶(hù)業(yè)務(wù)邏輯代碼,其它和云端交互的代碼完全應(yīng)用代碼自動(dòng)生成工具為我們搭建的框架即可。
二、 編譯和燒錄、測(cè)試
編譯源碼、燒錄教程:點(diǎn)我,總結(jié)下就是使用樂(lè)鑫開(kāi)發(fā)的工具,選擇好固件,然后GPIO0管腳接地進(jìn)入燒錄模式,這里給個(gè)直觀的接線(xiàn)圖:
最后效果:

評(píng)分

參與人數(shù) 1黑幣 +2 收起 理由
sz189981 + 2 絕世好帖!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂2 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:518981 發(fā)表于 2020-2-25 23:11 | 只看該作者
多謝分享
回復(fù)

使用道具 舉報(bào)

板凳
ID:456200 發(fā)表于 2020-3-21 17:38 | 只看該作者
你好,我想問(wèn)一下,esp8266模塊怎么連接按鍵才能配置上網(wǎng)?我的如何都搜不到設(shè)備
回復(fù)

使用道具 舉報(bào)

地板
ID:143203 發(fā)表于 2020-8-6 08:35 | 只看該作者
這個(gè)按鍵是隨便定義的嗎?airkiss按鍵
回復(fù)

使用道具 舉報(bào)

5#
ID:143203 發(fā)表于 2020-8-6 08:52 | 只看該作者
各個(gè)BIN的地址怎么對(duì)應(yīng)?
回復(fù)

使用道具 舉報(bào)

6#
ID:691181 發(fā)表于 2022-1-9 00:44 | 只看該作者
手上剛好有同款開(kāi)發(fā)板,正愁沒(méi)有教程學(xué)習(xí),收藏了,明天嘗試一下
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久精品aaa | 免费看的黄网站 | 亚洲视频免费在线观看 | 亚洲精品第一 | 一本色道久久综合亚洲精品高清 | 一区日韩 | 午夜丰满寂寞少妇精品 | 欧美日韩精品免费观看 | 草草视频在线免费观看 | 亚洲欧美日韩成人在线 | 亚洲一级毛片 | 美女黄视频网站 | 国产91在线播放 | 日本久久www成人免 成人久久久久 | 在线一区视频 | 日韩av成人| 日韩www视频 | 91视频在线 | 亚洲国产伊人 | 99热在线免费 | 波多野结衣在线观看一区二区三区 | 一区二区欧美在线 | 欧美精品一区二区三区四区五区 | 国产精品亚洲第一区在线暖暖韩国 | 91久久国产精品 | 欧美日韩综合 | www.天天操| 国产片侵犯亲女视频播放 | 麻豆av在线免费观看 | 日韩小视频在线 | 男女羞羞免费网站 | 丝袜美腿一区二区三区 | 亚洲成人国产精品 | 久久久久久综合 | 国产欧美一区二区在线观看 | 亚洲九九 | 一区二区久久电影 | 日本公妇乱淫xxxⅹ 国产在线不卡 | 中文日韩在线 | 黄色一级大片在线免费看产 | 自拍偷拍小视频 |