編譯micropython在esp8266的固件

   ESP8266算是現在比較實惠並且應用比較廣泛的一款WiFi芯片,它本身也是一個芯片,所以是作爲直接開發的。或者說進行一個封裝之後我們就可以直接使用串口進行操作,也就是使用AT指令,這個就是我們常常說的ESP8266的WiFi模塊,直接轉換成其他的單片機來進行操作這一塊的內容。官方也提供了ESP8266的SDK可以進行開發。
http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family
   上面是官網,更多關於這款芯片的資料,大家可以參考上面的內容。下圖是一些基本的參數截圖。
 
   該芯片主頻可以選擇爲80MHz和160MHz,所以對於一些基本的開發來說還是足夠用的一個速度。內置了10位高精度ADC,TCP/IP協議棧,等等。所以芯片是非常優秀的。
 
   好了接下來我們要進入正題了,micropython,相信大家對pyboard不陌生了哈,使用的是STM32F405的芯片,將python融入32裏面,從而可以在32上面進行python的代碼編寫,真的是一件很酷的事情,同時作者還是這些東西都開源了,非常的棒,非常的有趣。但是就是有一個問題,單單我們最一些簡單的開發,在不做物聯網的情況下pyboard還是非常棒的,簡單,快開發,但是遇到互聯網開發,就比較困難,所以我們想到一個問題,如果esp8266自己能夠運行python,那該有多好!
   micropython的作者非常的棒!他在github上面也給出了esp8266的python代碼,非常的棒。
 
 
 
首先我們需要將我們的micropython的github開源項目的內容下載下來。選擇下圖的圖標就是可以下載下來。或者在window或者linux底下直接使用Git工具clone這個項目下來也是可以的。
 
   我們使用git clone下載的話如下圖。
 
   這個編譯需要在Linux底下,所以如果是windows的話就需要有一臺虛擬機,來幫助完成這個編譯的過程。
   首先我們在Github目錄下進入esp8266的目錄。向下滾動頁面,我們可以看到一個README.md文件,解釋一下,md結尾的是markdown語言編寫的一個文本,能夠用一些簡單的語法完成一些格式,Github項目都會有一個這樣的文件對項目進行一個介紹,進入項目之後都會在下方進行一個顯示。
 
   再往下我們可以看到一個編譯指南,在這裏詳細說明了該如何自行編譯一個我們的esp8266的micropython固件。紅色標記的地方說明在我們編譯固件之前我們需要ESP SDK的工具來幫助我們完成編譯。
 
   點擊鏈接進入該Github項目。
 
   同樣需要下載下來,頁面向下滾動找到編譯說明。這裏我們選擇的是在Ubuntu底下進行編譯,下面圖片截圖說到我們編譯這個東西的時候需要的工具和依賴的一些庫等等。我們按照圖片說明,在Ubuntu底下安裝這些工具即可。
 
   完成了工具和依賴庫的安裝之後我們再往下看。有一個編譯說明。我們按照這個說明就可以,第一步是下載,完成之後進入該目錄直接make就可以。
 
  
同樣我們使用git clone下載之後編譯,這裏和大家說明一下,我進入下載的目錄之後,使用make命令編譯了兩次都出錯,之後我換成了make STANDALONE=y就可以了,如果大家也遇到編譯失敗的情況,也可以嘗試使用make STANDALONE=y試一下。
 
   然後我們需要將工具的bin文件添加到我們的系統目錄當中,根據提示我們鍵入下面的語句就可以。
 
   之後我們回到我們的micropython目錄當中,按照microPython的esp8266下面的README.md文件中的說明就可以。
   首先先更新一下我們的需要用到的子模塊內容。
   在micropython的目錄下面鍵入git submodule update --init即可完成這個工作。
   完成之後我們進入esp8266的目錄下執行make就可以編譯我們的固件了,第一步的話要先執行make axtls,完成之後在使用make命令,幾分鐘就可以完成這個工作了,之後我們就得到我們的固件啦。
我們可以找到一個名爲firmware-combined.bin的文件,這個就是我們的固件啦。
 
 
   那麼接下來我們就需要知道如何下載這個固件到我們的esp8266當中去,我們可以在我們的adafait的頁面中我們可以看到下載的方法,在Linux底下我們可以使用我們的esptool.py這個工具,在windows底下我們就可以直接使用一個圖形化工具啦!
https://learn.adafruit.com/building-and-running-micropython-on-the-esp8266/flash-firmware
網址如上,可以直接下載到。
 
   他們已經給出了很詳細的下載方法我們這裏大概說明一下。打開之後我們選擇Config,然後點擊紅色方框中的圖標。
 
   之後選擇我們的固件。打開。
 
   完成之後如下圖。起始地址0x0000,不做改變。
 
   回到我們的Operation。應該是會自動檢測到你的芯片串口號,沒有的話就自己選擇一下。
 
   點擊Flash就可以開始下載了。
 
   完成之後就有一個綠色的勾。
 
   接下來我們就可以使用我們的板子啦!!!
   打開我們的secureCRT,或者你用putty也是可以的哈,串口助手的話就算了,沒有那麼好的交互性,用起來不是那麼方便。推薦前面兩個工具。
 
   點擊之後我們得到,修改成如下圖,選擇串口,端口就看自己電腦可能不同,波特率爲115200,數據位8位,停止位1位,沒有校驗位。點擊Connect就可以了。
 
   之後我們就進入了,但是敲了幾個會出沒有反應,會有一點bug。
 
   我們按板子的復位鍵。(可能多按幾次復位)之後我們得到下圖就可以啦。(因爲我之前連過我的wifi,他會有一個記錄,所以這裏一開機它就自動連接WiFi了)。同時也可以看到我們的固件時間,是2016-06-07.也就是我們剛剛編譯成功的固件。
 
   今天就寫到這裏啦,然後就可以用python來操作esp8266。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章