<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 基于SST89C54/58的單片機仿真器的設計

基于SST89C54/58的單片機仿真器的設計

——
作者:張俊濤 王長(cháng)安 時(shí)間:2007-11-22 來(lái)源:現代電子技術(shù)應用 收藏

1 概 述

    SST89C54/58(簡(jiǎn)稱(chēng)89C54/58)是美國SST公司推出的多用途51系列單片機,片內集成了20 kB/36 kB的SuperFlashE'PROM程序存儲器,分為BLOCK0(16kB/32kB)和BLOCKl(4kB)兩塊。其中,BLOCKl可以映射(Mapping)到64kB存儲空間的最高端或最低端,而且,對于程序計數器來(lái)說(shuō)可以是不可見(jiàn)的。由于其存儲結構上獨特的優(yōu)點(diǎn),使得89C54/58非常適合于用做。

2 SST89C54/58的程序存儲結構

2.1 存儲器結構

    89C54/58片內的存儲塊BLOCK0占據從0000H到3FFFH/7FFFH的存儲空間,BLOCKl占據從F000H到FFFFH的存儲空間。89C54/58存儲結構如圖1所示。

    當EA#=1時(shí),對于程序計數器來(lái)說(shuō),BLOCK0始終是可見(jiàn)的,用于代碼的存??;BLOCKl代碼的存取是通過(guò)特殊功能寄存器SFCM,SFCF,SFAL,SFAH,SFDT和SFST來(lái)實(shí)現的。當SFCF[7]=1時(shí),BLOCKl是可見(jiàn)的。

2.2 存儲器再映射(Re-mapping)

    89C54/58的存儲器再映射功能使得對BLOCK0進(jìn)行編程時(shí),其系統中斷向量區依然可用(普通8051系列單片機無(wú)此特點(diǎn))。89C54/58提供4種存儲器再映射方式,存儲器再映射數量的大小由MAP_ENCl:0)控制,當MAP-


3 基于SST89C58的的設計

3.1 設計原理簡(jiǎn)介

    仿真器電路設計如圖2所示。圖中U2為串行通信接口芯片MAX232,U1為89C54/58。89C54/58的監控程序通過(guò)PC機串行口與KEILC51進(jìn)行通信,實(shí)現實(shí)時(shí)仿真功能。

3.2 仿真器監控程序的加栽

    SST公司提供的89C54/58仿真器監控程序SoftlCE(Softwareln-CircuitEmulator)可通過(guò)SST公司提供的BSL(Boot-StrapLoader)加載或通過(guò)支持SST89C54/58的第三方編程器寫(xiě)入。

3.3 仿真器性能簡(jiǎn)介

    基于89C54/58的除不支持串行口仿真外,具有通用仿真器的所有功能。與KEIL軟件相結合,可完成大部分單片機應用系統的仿真設計。

    其具體性能如下:

(1)可下載IntelHEX格式文件。
(2)支持匯編及C51源代碼調試。
(3)支持在線(xiàn)匯編。
(4)支持單步(Step)功能。
(5)支持步越(StepOver)功能。
(6)最大可設置10個(gè)固定斷點(diǎn)和一個(gè)臨時(shí)斷點(diǎn)。
(?)支持讀寫(xiě)數據存儲器。
(8)支持讀寫(xiě)程序存儲器。
(9)支持讀寫(xiě)特殊功能寄存器。
(10)支持讀寫(xiě)端口。
(11)具有IAP(1n-ApplicationProgramming)功能。

3.4 KEIL軟件及設置

    KEIL C51是德國KEIL公司推出的Windows版的8051系列單片機開(kāi)發(fā)套件,可用于編譯C源程序、匯編源程序,鏈接和定位目標文件和庫,創(chuàng )建HEX文件以及調試目標程序,并內嵌有RTX51實(shí)時(shí)操作系統,可簡(jiǎn)化復雜的多任務(wù)實(shí)時(shí)應用系統的設計。與89C54/58仿真器配合時(shí),在KEIL開(kāi)發(fā)環(huán)境中設置如下:

(1)創(chuàng )建項目,并選擇SST單片機SST89C54/58。
(2)從菜單選擇"Options for,Target 1/。
(3)在"OptionsforTarget,Targetl"窗口中,選擇使用KEILMonitor-51Driver,如圖3所示。
(4)雙擊圖3中Settings鍵,設置目標參數如圖4所示,即可編譯調試目標程序。

4 結 語(yǔ)

    綜上所述,由于SST89C54/58獨特的存儲器結構,使得89C54/58除用做通用的51單片機外,只需配以少量的外圍電路,即可做成51系列單片機仿真器。與功能強大的KEIL軟件相結合,為單片機工程師提供實(shí)時(shí)仿真開(kāi)發(fā)環(huán)境,可完成大部分單片機應用系統的設計.詳細設計資料可從SST公司網(wǎng)站(www.sst.com)下載。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>