P89C51RD2的Boot ROM與ISP功能的實現(xiàn)
發(fā)布時間:2008/6/3 0:00:00 訪問次數(shù):1235
     綦聲波 楊 梅 馬志強 來源:《單片機與嵌入式系統(tǒng)應(yīng)用》
     摘要:簡單論述p89c51rd2的isp和iap功能,給出實現(xiàn)讀取其boot
     rom源代碼的硬件電路和程序;初步探討isp功能中的波特率的自動跟蹤技術(shù)、命令字的接收格式和執(zhí)行方式,給出部分源代碼。
    
    
     關(guān)鍵詞:p89c51rd2
     boot rom isp(iap)功能
     1 概述
     p89c51rd2是philips公司內(nèi)核基于8位80c51單片機的派生產(chǎn)品,在完全保留80c51指令系統(tǒng)和硬件結(jié)構(gòu)的大框架下,進行了多方面的加強、擴展和創(chuàng)新,最大限度地利用了原有結(jié)構(gòu)的方方面面。p89c51rd2將原有的對外數(shù)據(jù)和程序存儲器的16位尋址機制加以利用,把片上的ram擴展到1kb、片上的flash
     eprom擴展到64kb,滿足當(dāng)今用嵌入式高級語言對片上大存儲容量的需要。
     p89c51rd2最顯著的特點莫過于其isp(in-system
     programming,在系統(tǒng)可編程)功能和iap(inapplication
     programming,在應(yīng)用可編程)功能。isp指電路板上的空白器件可以編程寫入最終用戶代碼,而不需要從電路板上取下器件,已經(jīng)編程的器件也可以用isp方式擦除或再編程。iap指mcu可以在系統(tǒng)中獲取新代碼并對自己重新編程,即可用程序來改變程序。isp和iap技術(shù)是未來儀器儀表的發(fā)展方向。philips公司為了使isp技術(shù)和iap技術(shù)得以推廣,在芯片上免費提供了boot
     rom固件,并且巧妙地解決了固件和flash的地址覆蓋問題及一些具體實現(xiàn)細節(jié)問題,使它們的實現(xiàn)變得簡單而現(xiàn)成。
     對于boot rom中的內(nèi)容,philips公司是不公開的。但很多技術(shù)人員對于boot
     rom固件中isp(iap)功能的實現(xiàn)非常感興趣。就isp狀態(tài)而言,上位機直接跟boot
     rom固件中的程序打交道,因此,必須根據(jù)philips公司提供的流程和協(xié)議來編制上位機程序,至于boot
     rom內(nèi)部是如何實現(xiàn)isp功能的,則不得而知。如果能夠搞明白isp功能實現(xiàn)的具體方法,則對于上位機軟件的編制是大有好處的。以下是對boot
     rom中有關(guān)isp功能實現(xiàn)所作的一些初步探討。
    
     2 boot rom固件代碼的讀出方法
     要對其isp功能進行分析,必須讀出boot
     rom中的源代碼。為此,必須型清楚boot rom空間和flash空間的關(guān)系。p89c51rd2采用了最選進的flash(快閃)eprom,其容量為64kb,并且分成8kb和16kb的存儲塊。我們知道,80c51系列8位單片機的最大尋址能力就是64kb,flash
     eprom已經(jīng)將全部尋址空間占據(jù)。同時,philips公司為p89c51rd2在片內(nèi)提供了一個名叫引導(dǎo)rom(boot
     rom)的1kb的固件。固件上有引導(dǎo)裝載程序,可以接收主機經(jīng)串口傳來的命令和數(shù)據(jù)(如經(jīng)pc機的rs-232c口),這個固件是放在64kb程序存儲器的最高端的,與片內(nèi)flash地址0fc00h~0ffffh相覆蓋。兩者之間的切換是通過特殊功能寄存器auxr1的enboot位來進行的。
     enboot=1 地址在0fc00h~0ffffh范圍,尋址到固件
     enboot=0 地址在0fc00h~0ffffh范圍,尋址到flash
     既然當(dāng)enboot=1時,能夠?qū)ぶ返焦碳,則利用程序就可以將固件代碼讀出。下面是實現(xiàn)代碼讀出時的硬件部分和軟件部分。
     (1)硬件部分
     為了讀出boot rom中的內(nèi)容,必須給p89c51rd2搭一個包括復(fù)位、晶振和串口通信功能的基本硬件系統(tǒng),如圖1所示。icl232為單電源串口轉(zhuǎn)換芯片,可以完成ttl電平與rs-232c電平之間的轉(zhuǎn)換。
     (2)軟件編制
     編制軟件的
     綦聲波 楊 梅 馬志強 來源:《單片機與嵌入式系統(tǒng)應(yīng)用》
     摘要:簡單論述p89c51rd2的isp和iap功能,給出實現(xiàn)讀取其boot
     rom源代碼的硬件電路和程序;初步探討isp功能中的波特率的自動跟蹤技術(shù)、命令字的接收格式和執(zhí)行方式,給出部分源代碼。
    
    
     關(guān)鍵詞:p89c51rd2
     boot rom isp(iap)功能
     1 概述
     p89c51rd2是philips公司內(nèi)核基于8位80c51單片機的派生產(chǎn)品,在完全保留80c51指令系統(tǒng)和硬件結(jié)構(gòu)的大框架下,進行了多方面的加強、擴展和創(chuàng)新,最大限度地利用了原有結(jié)構(gòu)的方方面面。p89c51rd2將原有的對外數(shù)據(jù)和程序存儲器的16位尋址機制加以利用,把片上的ram擴展到1kb、片上的flash
     eprom擴展到64kb,滿足當(dāng)今用嵌入式高級語言對片上大存儲容量的需要。
     p89c51rd2最顯著的特點莫過于其isp(in-system
     programming,在系統(tǒng)可編程)功能和iap(inapplication
     programming,在應(yīng)用可編程)功能。isp指電路板上的空白器件可以編程寫入最終用戶代碼,而不需要從電路板上取下器件,已經(jīng)編程的器件也可以用isp方式擦除或再編程。iap指mcu可以在系統(tǒng)中獲取新代碼并對自己重新編程,即可用程序來改變程序。isp和iap技術(shù)是未來儀器儀表的發(fā)展方向。philips公司為了使isp技術(shù)和iap技術(shù)得以推廣,在芯片上免費提供了boot
     rom固件,并且巧妙地解決了固件和flash的地址覆蓋問題及一些具體實現(xiàn)細節(jié)問題,使它們的實現(xiàn)變得簡單而現(xiàn)成。
     對于boot rom中的內(nèi)容,philips公司是不公開的。但很多技術(shù)人員對于boot
     rom固件中isp(iap)功能的實現(xiàn)非常感興趣。就isp狀態(tài)而言,上位機直接跟boot
     rom固件中的程序打交道,因此,必須根據(jù)philips公司提供的流程和協(xié)議來編制上位機程序,至于boot
     rom內(nèi)部是如何實現(xiàn)isp功能的,則不得而知。如果能夠搞明白isp功能實現(xiàn)的具體方法,則對于上位機軟件的編制是大有好處的。以下是對boot
     rom中有關(guān)isp功能實現(xiàn)所作的一些初步探討。
    
     2 boot rom固件代碼的讀出方法
     要對其isp功能進行分析,必須讀出boot
     rom中的源代碼。為此,必須型清楚boot rom空間和flash空間的關(guān)系。p89c51rd2采用了最選進的flash(快閃)eprom,其容量為64kb,并且分成8kb和16kb的存儲塊。我們知道,80c51系列8位單片機的最大尋址能力就是64kb,flash
     eprom已經(jīng)將全部尋址空間占據(jù)。同時,philips公司為p89c51rd2在片內(nèi)提供了一個名叫引導(dǎo)rom(boot
     rom)的1kb的固件。固件上有引導(dǎo)裝載程序,可以接收主機經(jīng)串口傳來的命令和數(shù)據(jù)(如經(jīng)pc機的rs-232c口),這個固件是放在64kb程序存儲器的最高端的,與片內(nèi)flash地址0fc00h~0ffffh相覆蓋。兩者之間的切換是通過特殊功能寄存器auxr1的enboot位來進行的。
     enboot=1 地址在0fc00h~0ffffh范圍,尋址到固件
     enboot=0 地址在0fc00h~0ffffh范圍,尋址到flash
     既然當(dāng)enboot=1時,能夠?qū)ぶ返焦碳,則利用程序就可以將固件代碼讀出。下面是實現(xiàn)代碼讀出時的硬件部分和軟件部分。
     (1)硬件部分
     為了讀出boot rom中的內(nèi)容,必須給p89c51rd2搭一個包括復(fù)位、晶振和串口通信功能的基本硬件系統(tǒng),如圖1所示。icl232為單電源串口轉(zhuǎn)換芯片,可以完成ttl電平與rs-232c電平之間的轉(zhuǎn)換。
     (2)軟件編制
     編制軟件的
熱門點擊
- 單片機多字節(jié)BCD碼加法減法
- PCF8563 I2C實時時鐘/日歷芯片在8
- P89C51RD2的Boot ROM與ISP
- C8051與SRAM的高速接口
- 指針類型和存儲區(qū)的關(guān)系詳解
- 帶VCC輸入引腳的硅序列碼芯片DS2411及
- 電壓驅(qū)動型脈寬調(diào)制器TL494
- 異種單片機共享片外存儲器及其與微機通信的方法
- 單片機開發(fā)調(diào)試應(yīng)注意的問題
- 一種實時性較強的采樣頻率同步實現(xiàn)方法
推薦技術(shù)資料
- AMOLED顯示驅(qū)動芯片關(guān)鍵技
- CMOS圖像傳感器技術(shù)參數(shù)設(shè)計
- GB300 超級芯片應(yīng)用需求分
- 4NP 工藝NVIDIA Bl
- GB300 芯片、NVL72
- 首個最新高端芯片人工智能服務(wù)器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究