Esp8285開發(fā)環(huán)境搭建
Esp8285開發(fā)環(huán)境搭建
一.本文目標(biāo):
當(dāng)我們拿到esp8285開發(fā)版的時(shí)候,我們?cè)撊绾芜M(jìn)行代碼開發(fā)呢?本文會(huì)詳細(xì)介紹開發(fā)環(huán)境搭建的步驟,實(shí)現(xiàn)helloworld程序。
為了實(shí)現(xiàn)該目標(biāo),首先我們需要搭建開發(fā)環(huán)境,然后再用開發(fā)工具實(shí)現(xiàn)代碼編寫,然后硬件接入電腦以便把程序燒錄進(jìn)ESP8285的flash中。每次ESP8285啟動(dòng)時(shí),會(huì)自動(dòng)從flash中啟動(dòng)系統(tǒng)或執(zhí)行程序。系統(tǒng)執(zhí)行時(shí),會(huì)執(zhí)行到我們編寫的代碼,我們本文將esp8285啟動(dòng)后在控制臺(tái)上打印一樣“helloworld”,說(shuō)明代碼成功執(zhí)行,環(huán)境搭建成功。
二本文思路:
由于esp8285是一個(gè)用usb線即可插入電腦無(wú)需做其他處理的帶flash的mcu,所以我們可以把它成是一個(gè)簡(jiǎn)單版的樹莓派,只是啟動(dòng)的系統(tǒng)是實(shí)時(shí)操作系統(tǒng)或者就是啟動(dòng)了一個(gè)進(jìn)程,進(jìn)程會(huì)調(diào)用一個(gè)固定的程序文件,我們寫程序在這個(gè)文件里,即可實(shí)現(xiàn)程序的編寫的。所以我們只需要用一根usb數(shù)據(jù)線即可連接到電腦來(lái)燒錄程序(可以理解為從開發(fā)電腦的開發(fā)工具下的開發(fā)項(xiàng)目的部署包(本質(zhì)就是一個(gè)程序段)部署到esp8285).燒錄成功后,啟動(dòng)esp8285,程序會(huì)自動(dòng)調(diào)起,程序里會(huì)打印數(shù)據(jù)到串口,我們?cè)侔汛诘臄?shù)據(jù)在開發(fā)工具中顯示出來(lái),就可以實(shí)現(xiàn)類似控制臺(tái)打印日志的方式來(lái)看到我們打印的程序了。
開發(fā)工具這里我們選擇Arduino IDE集成開發(fā)工具,安裝一個(gè)esp8285的插件,即可進(jìn)行程序燒錄和控制臺(tái)日志顯示功能了。當(dāng)然開發(fā)也是在該工具上建一個(gè)項(xiàng)目,然后編寫代碼。
實(shí)際使用會(huì)用針腳來(lái)控制外設(shè),所以后續(xù)會(huì)用到其他調(diào)試,開發(fā)工具,但是本文做到日志回顯即可。
這里需要注意:esp8285只是個(gè)通用型號(hào),有很多生產(chǎn)廠商,在開發(fā)工具使用的時(shí)候,需要下載對(duì)應(yīng)的正確的生產(chǎn)廠商,我這里的是板子上帶的。
我這里是dot的,并且esp8285屬于node muc的一種,這個(gè)是購(gòu)買的時(shí)候問(wèn)商家,給的具體型號(hào),記下來(lái)這個(gè)具體型號(hào),在我們下載插件之后,選擇型號(hào)的時(shí)候需要指定才能找到準(zhǔn)確的燒錄基礎(chǔ)程序。
下面的步驟會(huì)詳細(xì)介紹每個(gè)步驟。
三.本文步驟
1.下載開發(fā)工具
官網(wǎng)地址: 搜索 arduino
保護(hù)多種方式,可單純下載,如果選后者需要提供郵箱,具體下載方式會(huì)通過(guò)郵件發(fā)送
2.下載成功后,安裝工具
點(diǎn)我同意
下一步
安裝,如果想切換安裝目錄,這里切換
安裝成功后,點(diǎn)擊快捷鍵,或者從上面安裝目錄找到啟動(dòng)快捷圖標(biāo)
啟動(dòng)后的樣子:
3. 安裝插件
工具-->管理庫(kù)
點(diǎn)開的界面
找到左上角輸入框,輸入esp 注意,不要輸入esp8285,我們這里選擇esp8266插件。為何這么選擇,是因?yàn)?/span>esp8255是對(duì)esp8266的擴(kuò)展,而不是改進(jìn),mcu部分就是esp8266,所以直接選擇esp8266即可
這里要非常注意一點(diǎn),用的線必須是正經(jīng)數(shù)據(jù)線,不能是短的給一些耳機(jī)啥的充電用的數(shù)據(jù)線,因?yàn)楹芏鄶?shù)據(jù)線在不需要數(shù)據(jù)傳輸?shù)那闆r下,會(huì)把usb的四根線用2根線替代,這樣的話會(huì)識(shí)別不到串口com口,也就是不能識(shí)別esp8285設(shè)備。如果辨別線,可以用這根線把手機(jī)接到電腦上,如果手機(jī)提示是否需要進(jìn)行數(shù)據(jù)傳輸,那么這根線確定是數(shù)據(jù)線,而非電源線。
提前連接
識(shí)別成功后長(zhǎng)這樣
2. 編寫程序
文件-->示例-->esp8266-->blink
這個(gè)程序會(huì)對(duì)板子上的呼吸燈一閃一閃的。
我們?cè)诖嘶A(chǔ)上,編寫串口數(shù)據(jù)輸出,以便把日志信息回顯到開發(fā)工具的控制臺(tái)。
程序:起名blink,并選擇保存。防止后面編寫代碼后找不到代碼了,所以要好好記著文件保存后的路徑。
/* ESP8266 Blink by Simon Peter Blink the blue LED on the ESP-01 module This example code is in the public domain
The blue LED on the ESP-01 module is connected to GPIO1 (which is also the TXD pin; so we cannot use Serial.print() at the same time)
Note that this sketch uses LED_BUILTIN to find the pin with the internal LED */
void setup() { Serial.begin(115200);
pinMode(LED_BUILTIN, OUTPUT); // Initialize the LED_BUILTIN pin as an output }
// the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, LOW); // Turn the LED on (Note that LOW is the voltage level // but actually the LED is on; this is because // it is active low on the ESP-01) delay(1000); // Wait for a second digitalWrite(LED_BUILTIN, HIGH); // Turn the LED off by making the voltage HIGH delay(2000); // Wait for two seconds (to demonstrate the active low LED) Serial.println("helloworld"); }
|
注意這里需要設(shè)置串口的波特率,這里使用的是115200。這個(gè)數(shù)值要和開發(fā)工具上配置的完全一致,否則日志是打印不出來(lái)的。
3. 代碼調(diào)試
選擇對(duì)號(hào)進(jìn)行編譯,選擇箭頭進(jìn)行編譯并部署(燒錄)
當(dāng)然前提是板子要已經(jīng)在插件中配置好了,而且這里可以正常顯示了才行,具體如下:
等待傳輸100%,表示燒錄成功
燒錄之后,可以這里顯示串口的實(shí)時(shí)情況
4. 日志查看
找到最右側(cè)的按鈕,會(huì)顯示出來(lái) 串口監(jiān)視器 幾個(gè)字樣,點(diǎn)擊,可以看到底下出來(lái)了一塊區(qū)域,這塊區(qū)域就是串口的接收回顯的
選擇串口的波特率為11500,這里跟代碼里設(shè)置 Serial.begin(115200);這一行要保持完全一致
5. 點(diǎn)擊燒錄按鈕,等待燒錄成功
燒錄成功之后,可以看到板子上的led綠色小燈亮起,而且日志控制臺(tái)回顯收到helloworld字樣。
時(shí)間間隔是每2s燈亮滅各一次,同樣的代碼也打印helloworld字樣一次。
四. 總結(jié)
通過(guò)上面的介紹,我們基本上從0開始,可以搭建好了一個(gè)esp8285的Arduinoide開發(fā)環(huán)境了,是不是很簡(jiǎn)單,其實(shí)基于Arduino ide這種集成式的開發(fā)工具,可以讓我們用開發(fā)Java等類型的高級(jí)語(yǔ)言的方法 來(lái)開發(fā)基礎(chǔ)硬件控制的程序,非常方便,我們用esp82585也是避免了esp8266需要集成ch340等串口轉(zhuǎn)usb 的麻煩,另外可以做到通電即啟動(dòng)項(xiàng)目,非常方便。當(dāng)helloworld打印出來(lái)之后,我們就具備了高級(jí)的esp8285開發(fā)能力了。接下來(lái)就可以接外設(shè)實(shí)現(xiàn)復(fù)雜功能了