新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 編程器P800的在板編程接口設(shè)計(jì)技巧

編程器P800的在板編程接口設(shè)計(jì)技巧

作者:周立功致遠(yuǎn)電子 時(shí)間:2016-07-28 來源:電子產(chǎn)品世界 收藏

  在板編程雖然為程序的開發(fā)、調(diào)試和升級(jí)提供了便利,但編程接口的設(shè)計(jì)將會(huì)影響編程的效率和質(zhì)量,本文將闡述如何設(shè)計(jì)一個(gè)高效、穩(wěn)定的編程接口以及注意事項(xiàng)。

本文引用地址:http://m.butianyuan.cn/article/201607/294679.htm

  為了提高芯片程序的可升級(jí)性、可維護(hù)性,許多系統(tǒng)設(shè)計(jì)師放棄了傳統(tǒng)的座燒方式,轉(zhuǎn)向了新穎的、更加靈活的在板編程方式,如汽車電子、電表系統(tǒng)、空調(diào)控制板等均采用在板編程。

  

 

  圖1 汽車電子

  

 

  圖2 電表

  如何設(shè)計(jì)在線編程才能更快從工程階段轉(zhuǎn)向生產(chǎn)階段呢?

  首先,尋找芯片是否自帶編程觸發(fā)管腳。

  我們來看一下芯片是如何進(jìn)入編程模式的?芯片一般在復(fù)位后,會(huì)執(zhí)行Boot程序,該程序通過檢測(cè)芯片的編程管腳(如LPC系列芯片的ISP引腳、STM32的Boot0與Boot1引腳等)狀態(tài),進(jìn)入不同的運(yùn)行模式,如編程模式,正常執(zhí)行模式等。該引腳可以通過編程接口提供給控制,也可以通過短路帽或撥碼開關(guān)等集成在電路板中,在芯片需要編程時(shí)再手動(dòng)將其置高或置低,可以方便生產(chǎn)端進(jìn)行硬件配置。

  

 

  圖3 編程短路帽

  其次,芯片復(fù)位(Reset)對(duì)編程模式的影響。

  進(jìn)入編程模式一般有兩種方式,第一種通過上電自動(dòng)復(fù)位的方式進(jìn)入編程模式,而第二種則通過外部控制RESET復(fù)位管腳復(fù)位進(jìn)入編程模式。有些開發(fā)工程師為了簡(jiǎn)化芯片的編程接口,在設(shè)計(jì)中并沒有引出RESET引腳,利用上電復(fù)位進(jìn)入編程模式,此方法雖然簡(jiǎn)潔,節(jié)約資源,但也存在許多不穩(wěn)定的因素,特別是板子電路比較復(fù)雜時(shí),如電容、電感集合較多,上電瞬間會(huì)出現(xiàn)電源不穩(wěn)定,從而導(dǎo)致在線編程握手失敗。因此,接口設(shè)計(jì)時(shí)應(yīng)盡可能引出芯片的RESET管腳,這樣可以等待上電穩(wěn)定后再控制芯片進(jìn)入編程模式,有效避免問題的產(chǎn)生,如致遠(yuǎn)電子在線,可以設(shè)置上電的時(shí)間,可根據(jù)客戶的現(xiàn)場(chǎng)情況進(jìn)行調(diào)試,降低失敗率。

  

 

  圖4 電源設(shè)置

  最后,電路硬件設(shè)計(jì)方面的注意事項(xiàng)。

  在對(duì)的技術(shù)支持過程中,如果注意一下幾點(diǎn),你的在線編程的失敗率會(huì)降低90%:

  1、 當(dāng)板子設(shè)計(jì)有硬件看門狗時(shí),應(yīng)將看門狗禁能引腳或“喂狗”引腳引出,防止芯片在編程時(shí)被復(fù)位;

  2、 使用I2C接口編程時(shí),為提高通訊的穩(wěn)定性,接口的上拉電阻不宜過大;

  3、 編程引腳需要注意不要連接過大的電容,如有必要?jiǎng)t需要使用跳線帽或其他方式將編程功能和正常功能電路分開,某些需要提供編程高壓的引腳要引出,可以使用跳線帽或其他方式將編程高壓和正常功能電路分開;

  4、 當(dāng)編程接口使用排針時(shí),VCC引腳不宜與GND引腳靠得太近,如圖5所示,當(dāng)燒錄人員不慎將接口左錯(cuò)一個(gè)位,此時(shí),編程器的VCC引腳直接接到芯片的GND引腳,芯片的RXD引腳接到編程器的GND引腳,結(jié)果將直接燒毀芯片的RXD引腳。為避免此類問題的產(chǎn)生,VCC與GND引腳應(yīng)分別位于排針兩側(cè)。

  

 

  圖5 接口左錯(cuò)一位



關(guān)鍵詞: 編程器 P800

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉