本系列博客學(xué)習(xí)由非官方人員 半顆心臟 潛心所力所寫,不做開發(fā)板。僅僅做個(gè)人技術(shù)交流分享,不做任何商業(yè)用途。如有不對(duì)之處,請(qǐng)留言,本人及時(shí)更改。
1、 Esp8266之 搭建開發(fā)環(huán)境,開始一個(gè)“hellow world”串口打印。
2、 Esp8266之 利用GPIO開始使用按鈕點(diǎn)亮你的“第一盞燈”。
3、 Esp8266之 利用 '軟件定時(shí)器 ' 定時(shí)0.5秒閃爍點(diǎn)亮一盞LED。
4 、Esp8266之 了解PWM,更為深入地用PWM控制一盞LED的亮度變化。
5 、Esp8266之 原生樂鑫SDK高級(jí)使用之封裝Post與Get請(qǐng)求云端,拿到“天氣預(yù)報(bào)信息”。
6 、Esp8266之 了解 SmartConfig與Airkiss一鍵配網(wǎng),給8266配網(wǎng)上云端。無需把wifi名字密碼寫在固件里。
7 、Esp8266之 了解 softAP熱點(diǎn)配網(wǎng)模式原理,仿“機(jī)智云”定義自己的熱點(diǎn)配網(wǎng)模式協(xié)議。
8、 Esp8266之 你要找的8266作為UDP、TCP客戶端或服務(wù)端的角色通訊,都在這了。
9、 Esp8266進(jìn)階之路: [小實(shí)戰(zhàn)上篇]Windows系統(tǒng)搭建8266的本地Mqtt服務(wù)器,局域網(wǎng)點(diǎn)亮一盞LED燈。
10、 Esp8266進(jìn)階之路: [小實(shí)戰(zhàn)下篇]Windows系統(tǒng)搭建8266的本地Mqtt服務(wù)器,局域網(wǎng)點(diǎn)亮一盞LED燈。
11、 Esp8266進(jìn)階之路: 8266接入阿里智能,點(diǎn)亮一盞LED燈,期待天貓精靈語音控制的不約而至!
12、 Esp8266進(jìn)階之路: 圖文并茂學(xué)習(xí)阿里云主機(jī)搭建8266MQTT服務(wù)器,實(shí)現(xiàn)移動(dòng)網(wǎng)絡(luò)遠(yuǎn)程控制一盞LED。
13、 Esp8266進(jìn)階之路: 動(dòng)手做個(gè)8266畢設(shè)小案例,smartConfig + MQTT協(xié)議輕松實(shí)現(xiàn)遠(yuǎn)程控制一盞LED。
14、 Esp8266進(jìn)階之路: esp8266的 FreeRtos系統(tǒng)學(xué)習(xí)的正確姿勢(shì) ------ 環(huán)境搭建、燒錄。
15、 Esp8266進(jìn)階之路: esp8266的 物聯(lián)網(wǎng)又一股清流,8266接入阿里云平臺(tái)非阿里智能的SDS服務(wù),點(diǎn)亮一盞LED燈。
16、 Esp8266進(jìn)階之路: esp8266的 基于Nonos移植紅外線H1838,實(shí)現(xiàn)紅外遙控器配網(wǎng),遠(yuǎn)程控制一盞燈。
17、 Esp8266進(jìn)階之路: esp8266自研的快速上電開關(guān)五次 (開-關(guān)為一次) ,無需按鍵觸發(fā)則8266進(jìn)去一鍵配網(wǎng)模式。
18、 Esp8266進(jìn)階之路: esp8266 基于NONOS 實(shí)現(xiàn) OTA 遠(yuǎn)程升級(jí),實(shí)現(xiàn)無線“ 熱修復(fù) ”升級(jí)固件程序。
19、 Esp8266進(jìn)階之路: esp8266驅(qū)動(dòng) ds18b20、dht11 溫濕度傳感器,采集溫濕度傳感器到服務(wù)器。
20、 Esp8266進(jìn)階之路: 深入學(xué)習(xí)esp8266的esp now模式,仿機(jī)智云做一個(gè)小網(wǎng)關(guān),實(shí)現(xiàn)無需網(wǎng)絡(luò)下輕松彼此連接通訊交互數(shù)據(jù)。
21、 Esp8266進(jìn)階之路: 淺談 esp8266 如何在本地局域網(wǎng)網(wǎng)絡(luò)情況下實(shí)現(xiàn)最大效率地和前端實(shí)現(xiàn)數(shù)據(jù)交互。
22、 Esp8266進(jìn)階之路: esp8266的工程如何添加第三方靜態(tài)庫文件以及如何自定義文件夾,聊聊那些makeFile的事。。
23、 Esp8266進(jìn)階之路: 再來一波 esp8266 基于 freeRtos系統(tǒng)連接自己私有的服務(wù)器實(shí)現(xiàn)OTA遠(yuǎn)程升級(jí),接觸下 lwip的基本知識(shí)。。
24、 Esp8266進(jìn)階之路: 滲透學(xué)習(xí)回顧下esp8266的外置spi芯片25q系列,熟悉8266代碼塊在其的分布,得心應(yīng)手放置圖片或其他資料。
25、 Esp8266進(jìn)階之路: 深聊下esp8266的串口 Uart 通訊中斷編程,為您準(zhǔn)備好了 NONOS 版本 和 RTOS 系統(tǒng)的串口驅(qū)動(dòng)文件。
26、 Esp8266進(jìn)階之路: RTOS分析 MQTT 實(shí)現(xiàn)過程,實(shí)現(xiàn)移植 MQTT協(xié)議在 esp8266 rtos實(shí)時(shí)系統(tǒng),可斷線重連。
27、 Esp8266進(jìn)階之路: 跟緊腳步,用VisualStudio Code開發(fā) esp8266 rtos SDK v3.0版本,全新的 idf 框架,節(jié)省內(nèi)存模塊化開發(fā)。
28、 Esp8266進(jìn)階之路: 教你輕松自如使用cJson在樂鑫 esp8266 如何解析一段json數(shù)據(jù)以及如何生成一段json數(shù)據(jù)。
29、 Esp8266進(jìn)階之路: 百萬條消息免費(fèi)之樂鑫esp8266使用TCP直連模式MQTT協(xié)議接入阿里云物聯(lián)網(wǎng)平臺(tái),支持私家服務(wù)器對(duì)接支持阿里云規(guī)則引擎。
30、 Esp8266進(jìn)階之路: 樂鑫esp8266 SDK編程使用 IIC總線驅(qū)動(dòng) 0.96寸的OLED顯示屏,顯示天氣預(yù)報(bào)信息。
31、 Esp8266進(jìn)階之路: 當(dāng)esp8266遇到 Html,該怎么內(nèi)置網(wǎng)頁控制設(shè)備,理清內(nèi)置網(wǎng)頁的實(shí)現(xiàn)過程,實(shí)現(xiàn)無需路由器手機(jī)也可以控制esp8266。
32、 Esp8266進(jìn)階之路: 細(xì)聊HmacMD5的加密方法帶來的安全性,并實(shí)踐在esp8266上,最大保障傳輸?shù)倪^程的信息的安全性。
33、 Esp8266進(jìn)階之路: 如何優(yōu)雅地像樂鑫原廠封裝esp8266底層寄存器的邏輯思維,做成自己的靜態(tài)庫庫文件,讓第三方人使用?
34、 Esp8266進(jìn)階之路: 樂鑫esp8266 NONOS SDK 3.0編程使用 SPI 驅(qū)動(dòng)基于Max7219芯片的八位數(shù)碼管,顯示日期信息。
35、 Esp8266進(jìn)階之路: 樂鑫esp8266芯片借助機(jī)智云平臺(tái)做一個(gè)商業(yè)化的七彩RGB燈泡可調(diào)整體方案項(xiàng)目,炫彩奪目高大尚。
36、 Esp8266之rtos3.0筆記: 認(rèn)識(shí)esp8266 Rtos 3.0 sdk 工程結(jié)構(gòu),esp8266如何向esp-idf工程靠近的,如何自定義頭文件編譯?
37、 Esp8266之rtos3.0筆記: 你要找的基本外設(shè)功能都在這里了,包括Gpio、Pwm 和 Uart 接口使用。
38、 Esp8266之rtos3.0筆記: 一篇文章帶你搞掂存儲(chǔ)技術(shù) NVS 的認(rèn)識(shí)和使用,如何利用NVS保存整型、字符串、數(shù)組以及結(jié)構(gòu)體。
39、 Esp8266之rtos3.0筆記: 捋一捋微信公眾號(hào)配網(wǎng)智能設(shè)備 esp8266 并綁定設(shè)備的過程,移植并成功實(shí)現(xiàn)在 esp8266 rtos3.1 。
40、 Esp8266之rtos3.0筆記: 基于樂鑫idf框架,研究出超穩(wěn)定、掉線重連、解決內(nèi)存泄露問題的Mqtt框架!支持esp8266和esp32!
41、 Esp8266之rtos3.0筆記: esp8266-12模塊基于rtos3.1版本ota功能遠(yuǎn)程空中升級(jí)固件,官網(wǎng)基礎(chǔ)之上增加dns域名解析!
42、 Esp8266之rtos3.0筆記: 我又來了,基于rtos3.0版本 SDK編程 SPI 驅(qū)動(dòng) ws2812b 七彩燈,代碼全部開源奉獻(xiàn)給你們!
43、 Esp8266之rtos3.0筆記: esp8266-12模塊基于rtos3.0版本掃描周圍獲取附近可用的 Wi-Fi 熱點(diǎn)路由器信息,同樣適合esp32。
44、 Esp8266之rtos3.0筆記: 整理分享那些我在項(xiàng)目中常用的esp8266 rtos3.0版本的常見驅(qū)動(dòng),Button按鍵長短按、PWM平滑調(diào)光等。
45、 Esp8266之rtos3.0筆記: 內(nèi)置僅1M的Esp8285,如何攻破最棘手的OTA問題,大大節(jié)省資源成本開發(fā)產(chǎn)品。
46、 Esp8266之rtos3.0筆記: 詳細(xì)分析Esp8266上電信息打印的數(shù)據(jù),如何做到串口通訊上電不亂碼打印。
47、 Esp8266之rtos3.0筆記: 無需外網(wǎng),如何實(shí)現(xiàn)在本地局域網(wǎng)與控制端做數(shù)據(jù)交換的一些開發(fā)經(jīng)驗(yàn)。
48、 Esp8266之rtos3.0筆記: 遲來的1024程序員祝福,開源分享一個(gè)驅(qū)動(dòng) ds18b20 獲取溫度的工程。
49、 Esp8266之rtos3.0筆記: aliyun sdk 直連接入阿里云物聯(lián)網(wǎng)平臺(tái),實(shí)現(xiàn)天貓精靈找隊(duì)友零配網(wǎng)功能和語音控制。
50、 Esp8266之rtos3.0筆記: esp產(chǎn)品量產(chǎn)方案初入門之 如何從外部讀取 csv 文件的數(shù)據(jù),比如從代碼讀取外部文件阿里云三元組。
51、 Esp8266之rtos3.0筆記: 體驗(yàn)下 Linux搭建 ESP8266_RTOS_SDK 3.0 最新環(huán)境的搭建和編譯吧。
-------- 學(xué)習(xí)筆記持續(xù)更新,歡迎關(guān)注我…
很多人怎么聯(lián)系我一起學(xué)習(xí)進(jìn)步,下面打個(gè)小小公告:
玩轉(zhuǎn)esp8266
帶你飛、加群
esp8266源代碼免費(fèi)學(xué)習(xí)匯總(持續(xù)更新,歡迎star):https://github.com/xuhongv/StudyInEsp8266
esp32源代碼免費(fèi)學(xué)習(xí)匯總(持續(xù)更新,歡迎star):https://github.com/xuhongv/StudyInEsp32
這周雙休休息,看到群里有朋友說Linux環(huán)境真的快的一批,又想起之前樂鑫研發(fā)朋友在我博客留言推薦使用Linux環(huán)境,今天周日,花了2小時(shí)排版給大家講解下,過程中有很多注意的地方,但是 Linux編譯真的快的一批!!
這里再貼下2018年寫了個(gè)在Windows搭建 3.0 版 SDK編譯,收到不少的閱讀量和肯定! 當(dāng)然,也有開發(fā)者喜歡 Windows 環(huán)境開發(fā), 這里再貼下鏈接:
https://blog.csdn.net/xh870189248/article/details/81382279
1
下載 VM 虛擬機(jī) 版本15.5.1,或點(diǎn)我下載:
https://www.vmware.com/go/getworkstation-win
1
和諧碼:FC7D0-D1YDL-M8DXZ-CYPZE-P2AY6
下載鏡像,這里選擇ubuntu桌面版18.04.4版本,或點(diǎn)我下載。
http://mirrors.aliyun.com/ubuntu-releases/16.04/ubuntu-16.04.6-desktop-amd64.iso
1
重要的一步,VM安裝烏邦圖步驟請(qǐng)參考如下教程,或點(diǎn)我訪問。:
https://jingyan.baidu.com/article/f96699bb147a73894e3c1b2e.html
1
我們還需要安裝幾個(gè)常用的軟件 :
sudo apt-get purge vim-commonsudo apt-get install vimsudo apt install git
1
2
3
環(huán)境一變?cè)僮儯惨礈?zhǔn)官方的文檔搭建,因?yàn)槊總€(gè)版本的環(huán)境會(huì)有所不一致!
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/get-started/linux-setup.html
1
開始一堆依賴安裝:
sudo apt-get install git wget flex bison gperf python python-pip python-setuptools python-serial python-click python-cryptography python-future python-pyparsing python-pyelftools cmake ninja-build ccache libffi-dev libssl-dev
1
可以看到,ESP8266 最新版本的編譯工具鏈目前是5.2.0版本,為了提高大家的效率,我這里給大家貼下安信可共享下載鏈接,可縮短下載時(shí)間,下圖可以看到明顯的下載效果:
sudo wget https://axk.coding.net/api/share/download/1f1b2769-e56a-4de8-b91a-01c70ff8b9ac
1
解壓其到當(dāng)前文件夾:
sudo tar -zvxf 1f1b2769-e56a-4de8-b91a-01c70ff8b9ac
1
修改其權(quán)限為777:
sudo chmod 777 -R xtensa-lx106-elf
1
這里介紹下有2種方式下載最新的代碼,因?yàn)樵L問GitHub真的太慢了!
眾所周知,樂鑫的開放源碼都放在GitHub,而GitHub又被微軟收購了,這一年的訪問下載速度慢得烏龜一樣,哈哈!所以,我克隆一份放在了國內(nèi)的碼云網(wǎng)站,這樣就保證我們拉取代碼非???!
PS:這份同步樂鑫源倉庫的工作,我會(huì)一直保持下去!
首先,我們先拉取源碼,先不拉取子模塊!
sudo git clone https://gitee.com/xuhongv/ESP8266_RTOS_SDK.git
1
我們看了下子模塊源路徑是不規(guī)范的,這里,我們?cè)傩薷臑榇a云上的:
# 編輯子模塊源碼路徑 sudo vim .gitmodules # 修改為下面這樣 [submodule 'components/json/cJSON'] path = components/json/cJSON url = https://gitee.com/xuhongv/cJSON.git[submodule 'components/mbedtls/mbedtls'] path = components/mbedtls/mbedtls url = https://gitee.com/xuhongv/mbedtls.git[submodule 'components/lwip/lwip'] path = components/lwip/lwip url = https://gitee.com/xuhongv/esp-lwip.git
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
設(shè)置環(huán)境變量,不懂linux小白的同學(xué),認(rèn)真看下面的動(dòng)圖哈:
之后按下 i 表示嵌入代碼!
修改為上面的提示的代碼!
按下esc 再 :wq 表示寫入保存!
弄好了之后就這樣,給大家看看我的!
git submodule update --init --recursive
1
帶子模塊遞歸方式拉取GitHub,慢慢等吧!
sudo git clone --recursive https://github.com/espressif/ESP8266_RTOS_SDK.git
1
這里就簡(jiǎn)單很多,就設(shè)置2個(gè)變量即可!先拿到上述的工具鏈路徑和SDK路徑!
以我的環(huán)境為例:
export PATH=$PATH:/home/xuhongv/Desktop/ESPRESSIF/ESP8266/xtensa-lx106-elf/binexport IDF_PATH=/home/xuhongv/Desktop/ESPRESSIF/ESP8266/ESP8266_RTOS
1
2
之后按下 i 表示嵌入代碼: vim ~/.bashrc
任意一處添加 表示嵌入上面代碼!
按下esc 再 :wq 表示寫入保存: source ~/.bashrc
工具鏈環(huán)境測(cè)試是否設(shè)置成功: xtensa-lx106-elf-gcc -v
IDF_PATH 路徑測(cè)試是否設(shè)置成功: echo $IDF_PATH
查看工具鏈?zhǔn)欠裾_?
IDF_PATH 路徑測(cè)試是否設(shè)置成功?
終于到了編譯代碼啦?。∵^程體驗(yàn)真的比Windows順暢的一匹!
進(jìn)去任意一個(gè)例子,然后 make menuconfig 面板設(shè)置,當(dāng)然默認(rèn)也可以!
make all -j8
快速編譯成功之后,會(huì)有如下提示!可以看到有指定的串口下載等信息!Generating esp8266.project.ldLD build/hello-world.elfesptool.py v2.4.0To flash all build output, run 'make flash' or:python /home/xuhongv/Desktop/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/components/esptool_py/esptool/esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size 2MB 0x0 /home/xuhongv/Desktop/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/examples/get-started/hello_world/build/bootloader/bootloader.bin 0x10000 /home/xuhongv/Desktop/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/examples/get-started/hello_world/build/hello-world.bin 0x8000 /home/xuhongv/Desktop/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/examples/get-started/hello_world/build/partitions_singleapp.bin
1
2
3
4
5
在Linux環(huán)境燒錄我們的ESP8266模塊開發(fā)板,主要注意這個(gè)串口讀取的權(quán)限問題!插進(jìn)我們的開發(fā)板之后,會(huì)有提示,如果沒有提示,查看 虛擬機(jī) – 可移動(dòng)設(shè)備 --點(diǎn)擊對(duì)應(yīng)的串口!
串口燒錄: make flash
串口信息監(jiān)聽:make monitor
先通過查看是否依附,再看看是否在列表中? 2條指令即可!
dmesg | grep ttyS*ls /dev/tty*
1
2
使用某些 Linux 版本向 ESP32 燒寫固件時(shí),可能會(huì)出現(xiàn) Failed to open port /dev/ttyUSB0 錯(cuò)誤消息。此時(shí),可以將當(dāng)前用戶增加至 :ref:Linux Dialout 組 <linux-dialout-group>
。
因?yàn)槟J(rèn)情況下,只有root用戶和屬于dialout組的用戶會(huì)有讀寫權(quán)限,因此直接把自己的用戶加入到dialout組就可以了。操作完命令后要重啟一下,就永久生效了。
xuhongv@ubuntu:~$ sudo usermod -aG dialout xuhongv
1
比如燒錄到 /dev/ttyUSB1,加上 ESPPORT 參數(shù)即可!
make flash ESPPORT=/dev/ttyUSB1
1
我建議還是使用 CP2102 串口芯片的板子! 別用CH340!
xuhongv@xuhongv-ubuntu:~/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/mycode/spi_oled$ make menuconfigMakefile:8: /home/xuhongv/ESPRESSIF/ESP8266_RTOS_SDK/make/project.mk: 沒有那個(gè)文件或目錄make: *** 沒有規(guī)則可制作目標(biāo)“/home/xuhongv/ESPRESSIF/ESP8266_RTOS_SDK/make/project.mk”。 停止。
1
2
3
檢查下 IDF_PATH 路徑!! 再重新設(shè)置!
cc -c -DCURSES_LOC='<curses.h>' -DLOCALE -MMD -MP -I '.' -I '/home/xuhongv/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/tools/kconfig' /home/xuhongv/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/tools/kconfig/mconf.c -o mconf.o<command-line>:0:12: fatal error: curses.h: 沒有那個(gè)文件或目錄compilation terminated.Makefile:173: recipe for target 'mconf.o' failedmake[1]: *** [mconf.o] Error 1make[1]: 離開目錄“/home/xuhongv/ESPRESSIF/ESP8266/ESP8266_RTOS_SDK/tools/kconfig”
1
2
3
4
5
6
因?yàn)橐恍┮蕾嚊]裝好, 需要安裝下即可:
sudo apt-get install git wget make libncurses-dev flex bison gperf python python-seria
1
聯(lián)系客服