前言
使用過51單片機(jī)的朋友會清楚:51單片機(jī)在燒寫程序的時候需要斷一下電再上電;使用過STM32單片機(jī)的朋友會清楚:燒寫程序時需要設(shè)置Boot模式。ESP8266在燒寫程序時也需要手動設(shè)置模式,STM32的ISP自動下載電路都有了,那么ESP8266有沒有自動下載電路呢?答案是有的。下面來分析。
自動下載電路設(shè)計
ESP8266下載過程中發(fā)現(xiàn)每次都需要去設(shè)置GPIO0的狀態(tài),如何實現(xiàn)自動給實現(xiàn)GPIO0電平狀態(tài)的切換呢?看下面的電路。
可以看到這個下載電路相對于普通的CH340G下載電路,這個電路是把CH340G芯片中的DTR和RTS引腳引出到兩個S8050的三極管上,去控制nRST和GPIO0的電平。
ESP8266下載模式
根據(jù)ESP8266芯片資料要求的下載流程,必須在GPIO0為低電平的狀態(tài)下,復(fù)位芯片,才會進(jìn)入USART下載模式。
我們看看該自動下載電路是怎么實現(xiàn)這個流程時序的,首先我們還是得從核心器件CH340G分析入手。
核心器件CH340系列
CH340G 是一個USB轉(zhuǎn)串口的集成芯片,關(guān)鍵性能參數(shù)如下:
可以看到數(shù)據(jù)手冊中的引腳描述:DTR#引腳是MODEM聯(lián)絡(luò)輸出信號,數(shù)據(jù)終端就緒,低(高)有效,在USB配置完成之前作為配置輸入引腳,可以外接4.7KΩ的下拉電阻在USB枚舉期間產(chǎn)生默認(rèn)的低電平。RTS#引腳MODEM聯(lián)絡(luò)輸出信號,請求發(fā)送,低(高)有效。這兩個MODEM聯(lián)絡(luò)信號是由計算機(jī)應(yīng)用程序控制并定義其用途的,在軟件下發(fā)點擊下載按鈕后,通常會給DTR#拉低、RTS拉高,然后延時一段時間后,拉高DTR#,RTS#恢復(fù)到低電平。
注意:新設(shè)計的電路板可以選用CH340C,內(nèi)置晶振,無需外接晶振。
從原理圖中可以看到這個兩個引腳連接的邏輯電路如下:
端口真值表
根據(jù)該電路,可以知道當(dāng) DTR為1, RTS為0時, nRST復(fù)位引腳拉低,反之,GPIO0 引腳拉低,得到的邏輯關(guān)系圖如下:
這樣的化,在點擊下載按鈕后,CH340G芯片的DTR處于低電平,RTS處于高電平,此時ESP8266的GPIO0被拉低,復(fù)位RST信號為高,ESP8266進(jìn)入下載模式,CH340G的DTR和RTS電平翻轉(zhuǎn)后,RST為0,GPIO0變1,ESP8266進(jìn)入Flash運(yùn)行模式,程序正常運(yùn)行。這樣就實現(xiàn)了ESP8266自動下載。
審核編輯:湯梓紅
-
單片機(jī)
+關(guān)注
關(guān)注
6030文章
44498瀏覽量
632160 -
STM32
+關(guān)注
關(guān)注
2264文章
10857瀏覽量
354384 -
ESP8266
+關(guān)注
關(guān)注
50文章
962瀏覽量
44758
原文標(biāo)題:wifi神器ESP8266自動下載電路設(shè)計
文章出處:【微信號:玩轉(zhuǎn)嵌入式,微信公眾號:玩轉(zhuǎn)嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論