(原文來源 電子芯吧客 在此特別鳴謝)在百忙之中抽出時間給大家寫一個 ESP32的燒錄固件的方法,我先給大家看看我購買的 ESP32模塊長啥樣子:
價格有點兒小貴, 但是聽一個老外說不錯,我就被老外忽悠下了海, 買回來后發(fā)現(xiàn)的確很精致.
網(wǎng)上還有很多,你們自己看著買.
這些都可以滿足你的需求,就是要看看是否他們把所有引腳都引出來了.
這個板子的特點是:
1. 支持 wifi 和藍牙
2. 240Mhz 雙核 520KB SRAM? 如果你選擇的是 WROOM 可能沒有 WROVER 屌, 但是都可以用.
3. 超級低功耗, Ultra LOW POWER CONSUMPTION 不是哪個廠家都敢掛的.哈哈
4. ADC, DAC, 加密, PWM, TOUCH 一應俱全, 估計可以滿足你裝 X 的所有需要吧.
更讓我覺得很爽的是, micropython 直接可以支持它...那就舒服很多了, Arduino IDE? 你給我坐下, 復雜? 不存在的,喜歡的朋友來刷一波關注.
看看大蟒蛇, 就感覺一陣舒爽~來吧.
接駁方法super 簡單,只需要一根 usb 轉 microUSB 線就可以搞定了,插入樹莓派就可以識別了.
然后樹莓派去官方站點下載最新的鏡像,通過 win32imager 工具或者 etcher 工具燒錄到 TF 卡上,插入樹莓派 TF 卡槽,然后記得用一個5v2.5A 足量的電源供電,第一啟動最好接個顯示器,如果沒有顯示器就接家里的電視機, 通過 HDMI 線連上去,再找一個鍵盤和鼠標,插 usb 口上,啟動后,連接 wifi. 當然得先設置一下 wifi 國家,通過打開一個終端,然后輸入:?
sudo apt-get update && sudo apt-get upgrade
這里更新倉庫和軟件包升級的時間可能會根據(jù)網(wǎng)絡的環(huán)境不同時間有所不同,這個時候你就可以去泡杯咖啡,調戲一下前臺的小姐姐.
然后回來繼續(xù):
sudo raspi-config
然后再跳出來的畫面里面選擇:
然后選擇 wifi
然后就點擊 wifi 圖標去連接你的 wifi 吧,這里我就不想寫用命令行連接 wifi 的方法了,雖然也是非常簡單,如果有想知道的,給我評論的時候寫出來哦.
再然后,記得開啟 ssh 服務,不然遠程連不上來操作非常不方便,我習慣了直接開 ssh 連接, 通過我 Mac 直接 ssh Pi@IP 地址 就可以訪問樹莓派是最方便的.
就是選擇 interfacing Options 然后選擇 ssh 服務開啟就好了.這里不再贅述了.
設置好,就可以通過 pi 用戶遠程登錄到樹莓派了.接下來,是我在 mac 上的操作,如果你是用 windows, 那么請去找個 putty.exe 的軟件,或者 rshell, 或者 xshell, 或者 SecureCRT,只要是支持 ssh 協(xié)議的終端工具都行.
-----------------------------------------------------------------------這是我華麗的分割線---------------------------------------------------------------------------------
下面的操作是我通過 ssh 遠程登錄到樹莓派以后在樹莓派上完成的操作.
安裝完 esptool 就完成了一大半了,這個是為了方便我們燒錄的工具, esptool 一看名字你就應該猜出了個大概.
然后接著接好了 esp32的模塊后,通過下面的命令檢測一下是否識別了你的模塊.
dmesg | grep ttyUSB
如果看到如下內容就說明 ok 的.
竟然用是 CP210x 的串口芯片...這個比起 FTDI真的是差了很遠,不過看上去是識別出來了,可以用就好.哈哈
EPS32模塊被識別到/dev/ttyUSB0設備.
接下來可以嘗試檢查一下你的 ESP32的設備信息.
通過使用:?
esptool.py --port /dev/ttyUSB0 flash_id
看看效果是這樣的:
好吧,啥信息都給你們看到了. mac地址,芯片ID, 還檢測到4MB flash, 恩,不錯,最后提示硬件重置要按下 RTS 引腳.也就是要下載程序的時候要按一下 boot 按鍵, 是不是 so easy?
接下來,我要刷一下flash, 就是類似格式化一下硬盤.哈哈
esptool.py --port /dev/ttyUSB0 erase_flash
然后看到這樣的效果:
接下來就去 micropython.org 下載最新的固件唄...
選擇 Download, 然后再找esp32...
接下來可以看看你是否支持 SPIRAM, 如果支持選擇下面的固件,如果不支持選擇標準固件.我不在我電腦上下載,所以我只是右擊復制了連接,然后到樹莓派的終端上用 wget 直接下載就好,我嘗試的是支持 SPIRAM 固件的版本發(fā)現(xiàn)刷了固件后,無法進入 REPL 的環(huán)境,所以我又刷了標準的固件.
連接如下:http://micropython.org/resources/firmware/esp32-20180628-v1.9.4-225-gd8dc918d.bin利用 wget 下載到樹莓派上,然后再 erase_flash 后在 write_flash, 不知道我這樣說你們能否看懂,看不懂就自己嘗試一下.
接下來就是直接燒錄到你的 ESP32上去.
耐心等待1分鐘左右, 可以看到我高亮標注的內容,自動檢測到 flash 就好了.
再接下來就要進入一個 Read-Eval-Print-Loop 里面了,在 micropython 里面這個叫 repl, 一旦進去了就像是進入了一個 python 的 IDLEshell 環(huán)境, 交互式輸入輸出的狀態(tài).就像你在你的機器上輸入 python 回車后進入的環(huán)境一樣.
網(wǎng)上有個叫 webREPL 的東西,可以讓你訪問的時候通過網(wǎng)頁進入到編輯器里面,我覺得要如果有點兒逼格,必須直接命令行執(zhí)行啊!就可以用 putty 或者 linux 下面的 screen 命令進入,或者也可以使用 rshell 工具.
我是樹莓派上操作,所以直接安裝 rshell 比較方便,應為它可以讓我在樹莓派上直接管理 esp32的文件系統(tǒng),例如上傳下載啥的,比較方便:安裝直接:
sudo pip3 install rshell
接下來讓我們連一下 esp32吧,命令很簡單哦:
rshell --buffer-size=40 -p /dev/ttyUSB0
看看效果:
然后可以輸入 boards, help 等命令來查看接駁的狀態(tài),和啟動文件/boot.py
1. boards 看到連接的板子, 以及目錄中的 boot.py 文件
2. help 可以查看在這里能夠使用的命令.
3. boot.py 就是esp32啟動時候讀取的配置,可以把你想加入的加入這里,但是要加錯了就涼涼了..
4. 輸入 repl 就可以進入 python 的 IDLE 的 loop 里面...就無法退出了.哈哈~
然后就是通過 ESP32去點燈了,花式點 ws2812以后有機會再給大家呈現(xiàn)吧~
評論