基于SST89C54/58的單片機(jī)仿真器的設(shè)計(jì)
發(fā)布時(shí)間:2007/4/23 0:00:00 訪問次數(shù):515
1 概 述
SST89C54/58(簡稱89C54/58)是美國SST公司推出的多用途51系列單片機(jī),片內(nèi)集成了20 kB/36 kB的SuperFlashE'PROM程序存儲器,分為BLOCK0(16kB/32kB)和BLOCKl(4kB)兩塊。其中,BLOCKl可以映射(Mapping)到64kB存儲空間的最高端或最低端,而且,對于程序計(jì)數(shù)器來說可以是不可見的。由于其存儲結(jié)構(gòu)上獨(dú)特的優(yōu)點(diǎn),使得89C54/58非常適合于用做單片機(jī)仿真器。
2 SST89C54/58的程序存儲結(jié)構(gòu)
2.1 存儲器結(jié)構(gòu)
89C54/58片內(nèi)的存儲塊BLOCK0占據(jù)從0000H到3FFFH/7FFFH的存儲空間,BLOCKl占據(jù)從F000H到FFFFH的存儲空間。89C54/58存儲結(jié)構(gòu)如圖1所示。
當(dāng)EA#=1時(shí),對于程序計(jì)數(shù)器來說,BLOCK0始終是可見的,用于代碼的存。籅LOCKl代碼的存取是通過特殊功能寄存器SFCM,SFCF,SFAL,SFAH,SFDT和SFST來實(shí)現(xiàn)的。當(dāng)SFCF[7]=1時(shí),BLOCKl是可見的。
2.2 存儲器再映射(Re-mapping)
89C54/58的存儲器再映射功能使得對BLOCK0進(jìn)行編程時(shí),其系統(tǒng)中斷向量區(qū)依然可用(普通8051系列單片機(jī)無此特點(diǎn))。89C54/58提供4種存儲器再映射方式,存儲器再映射數(shù)量的大小由MAP_ENCl:0)控制,當(dāng)MAP-
3 基于SST89C58的單片機(jī)仿真器的設(shè)計(jì)
3.1 設(shè)計(jì)原理簡介
仿真器電路設(shè)計(jì)如圖2所示。圖中U2為串行通信接口芯片MAX232,U1為89C54/58。89C54/58的監(jiān)控程序通過PC機(jī)串行口與KEILC51進(jìn)行通信,實(shí)現(xiàn)實(shí)時(shí)仿真功能。
3.2 仿真器監(jiān)控程序的加栽
SST公司提供的89C54/58仿真器監(jiān)控程序SoftlCE(Softwareln-CircuitEmulator)可通過SST公司提供的BSL(Boot-StrapLoader)加載或通過支持SST89C54/58的第三方編程器寫入。
3.3 仿真器性能簡介
基于89C54/58的單片機(jī)仿真器除不支持串行口仿真外,具有通用仿真器的所有功能。與KEIL軟件相結(jié)合,可完成大部分單片機(jī)應(yīng)用系統(tǒng)的仿真設(shè)計(jì)。
其具體性能如下:
(1)可下載IntelHEX格式文件。
(2)支持匯編及C51源代碼調(diào)試。
(3)支持在線匯編。
(4)支持單步(Step)功能。
(5)支持步越(StepOver)功能。
(6)最大可設(shè)置10個(gè)固定斷點(diǎn)和一個(gè)臨時(shí)斷點(diǎn)。
(?)支持讀寫數(shù)據(jù)存儲器。
(8)支持讀寫程序存儲器。
(9)支持讀寫特殊功能寄存器。
(10)支持讀寫端口。
(11)具有IAP(1n-ApplicationProgramming)功能。
3.4 KEIL軟件及設(shè)置
KEIL C51是德國KEIL公司推出的Windows版的8051系列單片機(jī)開發(fā)套件,可用于編譯C源程序、匯編源程序,鏈接和定位目標(biāo)文件和庫,創(chuàng)建HEX文件以及調(diào)試目標(biāo)程序,并內(nèi)嵌有RTX51實(shí)時(shí)操作系統(tǒng),可簡化復(fù)雜的多任務(wù)實(shí)時(shí)應(yīng)用系統(tǒng)的設(shè)計(jì)。與89C54/58仿真器配合時(shí),在KEIL開發(fā)環(huán)境中設(shè)置如下:
(1)創(chuàng)建項(xiàng)目,并選擇SST單片機(jī)SST89C54/58。
(2)從菜單選擇"Options for,Target 1/。
(3)在"OptionsforTarget,Targetl"窗口中,選擇使用KEILMonitor-51Driver,如圖3所示。
(4)雙擊圖3中Settings鍵,設(shè)置目標(biāo)參數(shù)如圖4所示,即可編譯調(diào)試目標(biāo)程序。
4 結(jié) 語
綜上所述,由于SST89C54/58獨(dú)特的存儲器結(jié)構(gòu),使得89C54/58除用做通用的51單片機(jī)外,只需配以少量的外圍電路,即可做成51系列單片機(jī)仿真器。與功能強(qiáng)大的KEIL軟件相結(jié)合,為單片機(jī)工程師提供實(shí)時(shí)仿真開發(fā)環(huán)境,可完成大部分單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì).
1 概 述
SST89C54/58(簡稱89C54/58)是美國SST公司推出的多用途51系列單片機(jī),片內(nèi)集成了20 kB/36 kB的SuperFlashE'PROM程序存儲器,分為BLOCK0(16kB/32kB)和BLOCKl(4kB)兩塊。其中,BLOCKl可以映射(Mapping)到64kB存儲空間的最高端或最低端,而且,對于程序計(jì)數(shù)器來說可以是不可見的。由于其存儲結(jié)構(gòu)上獨(dú)特的優(yōu)點(diǎn),使得89C54/58非常適合于用做單片機(jī)仿真器。
2 SST89C54/58的程序存儲結(jié)構(gòu)
2.1 存儲器結(jié)構(gòu)
89C54/58片內(nèi)的存儲塊BLOCK0占據(jù)從0000H到3FFFH/7FFFH的存儲空間,BLOCKl占據(jù)從F000H到FFFFH的存儲空間。89C54/58存儲結(jié)構(gòu)如圖1所示。
當(dāng)EA#=1時(shí),對于程序計(jì)數(shù)器來說,BLOCK0始終是可見的,用于代碼的存取;BLOCKl代碼的存取是通過特殊功能寄存器SFCM,SFCF,SFAL,SFAH,SFDT和SFST來實(shí)現(xiàn)的。當(dāng)SFCF[7]=1時(shí),BLOCKl是可見的。
2.2 存儲器再映射(Re-mapping)
89C54/58的存儲器再映射功能使得對BLOCK0進(jìn)行編程時(shí),其系統(tǒng)中斷向量區(qū)依然可用(普通8051系列單片機(jī)無此特點(diǎn))。89C54/58提供4種存儲器再映射方式,存儲器再映射數(shù)量的大小由MAP_ENCl:0)控制,當(dāng)MAP-
3 基于SST89C58的單片機(jī)仿真器的設(shè)計(jì)
3.1 設(shè)計(jì)原理簡介
仿真器電路設(shè)計(jì)如圖2所示。圖中U2為串行通信接口芯片MAX232,U1為89C54/58。89C54/58的監(jiān)控程序通過PC機(jī)串行口與KEILC51進(jìn)行通信,實(shí)現(xiàn)實(shí)時(shí)仿真功能。
3.2 仿真器監(jiān)控程序的加栽
SST公司提供的89C54/58仿真器監(jiān)控程序SoftlCE(Softwareln-CircuitEmulator)可通過SST公司提供的BSL(Boot-StrapLoader)加載或通過支持SST89C54/58的第三方編程器寫入。
3.3 仿真器性能簡介
基于89C54/58的單片機(jī)仿真器除不支持串行口仿真外,具有通用仿真器的所有功能。與KEIL軟件相結(jié)合,可完成大部分單片機(jī)應(yīng)用系統(tǒng)的仿真設(shè)計(jì)。
其具體性能如下:
(1)可下載IntelHEX格式文件。
(2)支持匯編及C51源代碼調(diào)試。
(3)支持在線匯編。
(4)支持單步(Step)功能。
(5)支持步越(StepOver)功能。
(6)最大可設(shè)置10個(gè)固定斷點(diǎn)和一個(gè)臨時(shí)斷點(diǎn)。
(?)支持讀寫數(shù)據(jù)存儲器。
(8)支持讀寫程序存儲器。
(9)支持讀寫特殊功能寄存器。
(10)支持讀寫端口。
(11)具有IAP(1n-ApplicationProgramming)功能。
3.4 KEIL軟件及設(shè)置
KEIL C51是德國KEIL公司推出的Windows版的8051系列單片機(jī)開發(fā)套件,可用于編譯C源程序、匯編源程序,鏈接和定位目標(biāo)文件和庫,創(chuàng)建HEX文件以及調(diào)試目標(biāo)程序,并內(nèi)嵌有RTX51實(shí)時(shí)操作系統(tǒng),可簡化復(fù)雜的多任務(wù)實(shí)時(shí)應(yīng)用系統(tǒng)的設(shè)計(jì)。與89C54/58仿真器配合時(shí),在KEIL開發(fā)環(huán)境中設(shè)置如下:
(1)創(chuàng)建項(xiàng)目,并選擇SST單片機(jī)SST89C54/58。
(2)從菜單選擇"Options for,Target 1/。
(3)在"OptionsforTarget,Targetl"窗口中,選擇使用KEILMonitor-51Driver,如圖3所示。
(4)雙擊圖3中Settings鍵,設(shè)置目標(biāo)參數(shù)如圖4所示,即可編譯調(diào)試目標(biāo)程序。
4 結(jié) 語
綜上所述,由于SST89C54/58獨(dú)特的存儲器結(jié)構(gòu),使得89C54/58除用做通用的51單片機(jī)外,只需配以少量的外圍電路,即可做成51系列單片機(jī)仿真器。與功能強(qiáng)大的KEIL軟件相結(jié)合,為單片機(jī)工程師提供實(shí)時(shí)仿真開發(fā)環(huán)境,可完成大部分單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì).
熱門點(diǎn)擊
- 8051單片機(jī)家族數(shù)據(jù)手冊鏈接大全
- dsPIC30F6010單片機(jī)的原理及應(yīng)用
- 一種通用的嵌入式系統(tǒng)ISP方法
- 浮點(diǎn)數(shù)保存代碼
- 基于FPGA/CPLD和USB技術(shù)的無損圖像
- 數(shù)字顯示器仍需處理模擬信號
- 常用PIC系列8位單片機(jī)芯片引腳符號的功能
- PIC系列單片機(jī)的偽指令
- 利用單片機(jī)PWM信號進(jìn)行舵機(jī)控制
- 產(chǎn)生低失真正弦波的CMOS六角反相器
推薦技術(shù)資料
- 硬盤式MP3播放器終級改
- 一次偶然的機(jī)會我結(jié)識了NE0 2511,那是一個(gè)遠(yuǎn)方的... [詳細(xì)]
- AMOLED顯示驅(qū)動芯片關(guān)鍵技
- CMOS圖像傳感器技術(shù)參數(shù)設(shè)計(jì)
- GB300 超級芯片應(yīng)用需求分
- 4NP 工藝NVIDIA Bl
- GB300 芯片、NVL72
- 首個(gè)最新高端芯片人工智能服務(wù)器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究