新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的微控制器在系統(tǒng)編程

基于單片機(jī)的微控制器在系統(tǒng)編程

作者: 時(shí)間:2013-11-07 來源:網(wǎng)絡(luò) 收藏

介紹

Dallas Semiconductor基于8051的類產(chǎn)品中,許多型號都支持通過通用RS-232串口實(shí)現(xiàn)在。在意味著程序和/或數(shù)據(jù)存儲器能夠在不用拆解嵌入式系統(tǒng)來替換存儲器的情況下進(jìn)行修改。這種特性強(qiáng)調(diào)易使用性和多功能性,在所有嵌入式設(shè)計(jì)中增加了許多非常重要的特性: 允許硬件在工廠組裝和存放,而在出廠前才進(jìn)行軟件定制, 需要進(jìn)行軟件升級時(shí),消除了在現(xiàn)場拆解器件的高昂代價(jià), 允許對位置不可達(dá)的應(yīng)用進(jìn)行軟件升級, 訪問專用配置與狀態(tài)寄存器,以及 使用存儲器加密的方式把軟件加載到安全。

具有這種特性的器件包括:

DS2250, DS2250T, DS2251T, DS2252T, DS5000, DS5000T 安全 DS5000FP, DS5001FP, DS5002FP, DS5002FPM 安全微處理器 DS5240, DS5250 高速安全微處理器DS80C400 網(wǎng)絡(luò)微處理器DS89C420, DS89C430, DS89C440, DS89C450 超高速閃存微控制器

通過將器件的一個(gè)或多個(gè)外部引腳設(shè)置為某特定狀態(tài)來激活引導(dǎo)加載程序。器件啟動后,開始執(zhí)行位于器件內(nèi)部專用ROM的加載程序。一旦收到一個(gè)回車符號,串口就執(zhí)行自動波特率功能并與主機(jī)的波特率同步。主機(jī)(通常為PC)和目標(biāo)板之間的通訊是通過大多數(shù)PC上常見的通用RS-232接口完成的,而不需要昂貴的專用硬件。引導(dǎo)加載程序使用的協(xié)議簡單,由一個(gè)或多個(gè)帶有相關(guān)狀態(tài)消息和文件傳送程序的ASCII字符命令組成??梢允褂肈allas Semiconductor免費(fèi)提供的微控制器工具包通訊軟件或任何串口通訊工具軟件來完成通訊。

大部分此類器件也支持在應(yīng)用編程,允許器件在應(yīng)用軟件的控制下修改程序存儲器。這種方式下,系統(tǒng)能夠在仍然履行其主要功能的情況下完成在線軟件升級。詳細(xì)情況在相關(guān)器件的數(shù)據(jù)手冊或用戶指南中給出。

此文檔是對相關(guān)器件的數(shù)據(jù)手冊以及使用指南中所提供信息的補(bǔ)充。閱讀此應(yīng)用筆記時(shí),請根據(jù)需要參考這些文檔。

物理連接

引導(dǎo)加載程序是通過將器件的一個(gè)或多個(gè)外部引腳置為如表1所示的特定狀態(tài)來激活的。此時(shí)終止執(zhí)行應(yīng)用軟件,并且將程序控制權(quán)交給內(nèi)部引導(dǎo)ROM。一定要查閱正確的勘誤表,以確定是否有與激活引導(dǎo)加載程序相關(guān)的任何勘誤信息。

對不同的產(chǎn)品系列,調(diào)用引導(dǎo)加載程序的物理連接和方法略有不同,但是都包含相同的基本元件。如果連接到一臺PC上,需要一個(gè)如圖所示的RS-232到CMOS電平轉(zhuǎn)換器,來連接主機(jī)和目標(biāo)微控制器間的通訊和控制信號。圖中所示的器件可以替換為任何兼容的RS-232轉(zhuǎn)換器。下列圖中使用微控制器的DTR信號作為加載/運(yùn)行模式選擇信號。

一些設(shè)計(jì)使用了具有三態(tài)輸出的總線緩沖器。當(dāng)DTR有效時(shí)(低電平),它使能打開緩沖器,并驅(qū)動用來激活引導(dǎo)加載程序的多個(gè)信號。這個(gè)總線緩沖器在原理圖中一般標(biāo)成"HC/AC125",這是因?yàn)榭梢允褂萌魏芜壿嬒盗械南嗨破骷?,?4HC125, 54HC125, 74AC125, 74LS125等。這些器件很常見,應(yīng)該能夠從任何一家通用邏輯器件供應(yīng)商買到,如Motorola, Fairchild Semiconductor, Toshiba, ST Microelectronics 和許多其它供應(yīng)商等。

其它器件用單個(gè)信號激活引導(dǎo)加載程序,因此不需要這個(gè)緩沖器。這種情況下,DTR信號可以直接連接到目標(biāo)微控制器的激活引腳。

引導(dǎo)加載程序使用連接到XTAL1/XTAL2引腳上的時(shí)鐘源作為它的時(shí)間基準(zhǔn)。如果使用晶振,它必須滿足器件數(shù)據(jù)手冊中列出的推薦指標(biāo)(基頻模式下的諧振,并行AT型切片,負(fù)載電容量等)。由于引導(dǎo)加載程序進(jìn)行自動波特率測量依賴于內(nèi)部定時(shí)器,因此對與引導(dǎo)加載程序兼容的頻率范圍有一些限制。對于您用到的具體器件,其與引導(dǎo)加載程序兼容的時(shí)鐘頻率范圍請參考相關(guān)用戶指南。

軟件

引導(dǎo)加載程序激活后,微控制器將會查詢串行端口,尋找一個(gè)8數(shù)據(jù)位,無奇偶校驗(yàn),一個(gè)停止位(8-N-1)格式的回車(0Dh)字符。引導(dǎo)加載程序軟件測量這個(gè)字符中高低電平的時(shí)間長度來確定主機(jī)系統(tǒng)的波特率。這種自動波特率特性允許引導(dǎo)加載程序和許多主機(jī)系統(tǒng)進(jìn)行通訊,而不用限制固定的波特率。

參考文獻(xiàn):
[1]. RS-232 datasheet http://www.dzsc.com/datasheet/RS-232_584855.html.
[2]. DS80C400 datasheet http://www.dzsc.com/datasheet/DS80C400+_267871.html.
[3]. ROM datasheet http://www.dzsc.com/datasheet/ROM_1188413.html.



評論


相關(guān)推薦

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

關(guān)閉