SST89C54/58系列單片機的IAP應用技術(shù)

發(fā)布時(shí)間:2010-11-3 12:52    發(fā)布者:eetech
關(guān)鍵詞: IAP , SST89C54 , SST89C58 , 單片機
SST89C54/58單片機是MCS-51系列單片機的派生產(chǎn)品。它們在指令系統、硬件結構和片內資源上與標準8052單片機完全兼容,只是加大了內部程序存儲器Flash的容量。  

SST89C54/58的特色:  

*256%26;#215;8位內部RAM;  
*3個(gè)16位定時(shí)/計數器(T0、T1、T2);  
*1個(gè)全雙工、可編程串行通信口(UART);  
*6個(gè)中斷源,2 個(gè)優(yōu)先級;  
*4個(gè)8位I/O口(32位I/O引腳);  
*TTL和CMOS電平全兼容;  
*5(1%26;#177;0.1)V供電時(shí),工作頻率為0~33MHz;  
*3(1%26;#177;0.1)V供電時(shí),工作頻率為0~12MHz;  
*內部看門(mén)狗定時(shí)器(WDT);  
*支持3種省電模式:空閑、下電和等待,并且支持外部低電平中斷退出下電模式。  

1 SST89C54/58的存儲器結構  

1.1 程序存儲器  

89C54與89C58之間僅有存儲器容量大小的不同;前者20KB,后者為36KB。程序存儲器分為block0和block1兩塊:block0前者為16KB,后者為32KB,都分成了128字節大小的區段;block1均為4KB,分為64字節大小的區段。它們的程序存儲器結構如圖1所示。





block0和block1的地址不是連續的。Block1從F000H開(kāi)始。SST89C54/58允許block0映射到block1,上電后程序既可以從block0(0000H)開(kāi)始執行,也可以從block1(F000H)開(kāi)始執行。程序從哪個(gè)塊開(kāi)始執行由單片機的Re-Map[1:0]位決定。在這2位都為1的時(shí)候程序從0000開(kāi)始執行,否則,從F000H開(kāi)始執行。Re-Map[1:0]位是非易失性的,可以用編程器對其編程。  

1.2 數據存儲器  

SST89C54/58有256字節的內部數據存儲器,其中低128字節RAM(00H~FFH)與8052完全相同;在高128字節中增加了一些針對IAP功能的特殊功能寄存器(SFR)。新增加的SFR的定義及設置如表1所列。

表1 新增特殊功能寄存器  

標識符
名   稱(chēng)
地   址
初始化值

SFST
Flash狀態(tài)
B6H
xxx00000b

SFCF
Flash定義
B1H
000000xxb

SFCM
Flash命令
B2H
00h

SFDT
Flash數據
B5H
00h

SFAL
Flash地址低字節
B3H
00h

SFAL
Flash地址高字節
B4H
00h

2 SST89C54/58在應用中可編程(IAP)  

IAP是指在用戶(hù)的應用程序中對Flash塊、Flash寄存器、加密位等實(shí)現擦降和編程等操作。SST89C54/58通過(guò)對SFCF.6的置位和清0而啟動(dòng)和介紹IAP功能。程序在block0時(shí)可以啟動(dòng)IAP對block1進(jìn)行編程,也可以在block1對block0進(jìn)行編程,但是每均都不能對自己進(jìn)行編程。SST89C54/58r IAP功能主要有以下幾個(gè)命令(以block0對block1進(jìn)行編程為例):  

(1)片擦除  

命令格式如下:  
MOV SFCF,#0C0H ;啟動(dòng)IAP  
MOV SFDT,#55H  
MOV SFCM,#01H ;寫(xiě)入命令字  
;查詢(xún)SFST.2,等待芯片擦除結束,  
;用MOVC校驗是否每個(gè)單元均為FFH。  

(2)塊擦除  

命令格式如下:  
MOV SFCF,#0C0H ;啟動(dòng)IAP  
MOV SFAH,#0F0H/#00H ;擦隊block1/block0  
MOV SFDT,#55H  
MOV SFCM,#0DH ;寫(xiě)放命令字  
;查詢(xún)SFST.2,等待芯片擦除結束,  
;用MOVC校驗是否每個(gè)單元均為FFH。  

(3)區段擦除  

命令格式如下:  
MOV SFCF,#0C0H ;啟動(dòng)IAP  
MOV SFAH,區段地址高字節  
MOV SFAL,區段地址低字節  
MOV SFCM,#0BH ;寫(xiě)入命令字  
;查詢(xún)SFST.2,等待芯片擦除結束,  
;用MOVC校驗是否每個(gè)單元均為FFH。  

(4)字節編程  

MOV SFCF,#0C0H ;啟動(dòng)IAP  
MOV SFAH,要編程地址高字節  
MOV SFAL,要編程地址低字節  
MOV SFDT,要編程的數據  
MOV SFCM,#0EH ;寫(xiě)放命令字  
;查詢(xún)SFST.2,等待芯片擦除結束,  
;校驗諞單元寫(xiě)入數據是否正確。  

(5)字節校驗  

MOV SFCF,#0C0H  
MOV SFAH,要校驗數據的地址高字節  
MOV SFAH,要校驗數據的地址低字節  
MOV SFCM,#06H  
NOP  
MOV A,SFDT ;A保存規定單元地址讀出的內容  

另外,通過(guò)字節編程可以對Re-Map[1:0]位為3個(gè)保密進(jìn)行編程,只是在特定的地址寫(xiě)入行定的內容。  

3 SST89C54/58 IAP功能的用途  

通過(guò)IAP功能可以不需編程器就可做單片機實(shí)驗。這對初次學(xué)習單片機的人們,尤其對學(xué)校單片機的教學(xué)帶來(lái)極大的方便,是一種最低成本的單片機開(kāi)手段。  

可以對產(chǎn)品的軟件進(jìn)行升級。不需外加監控芯片,只是通過(guò)串行口便可將PC機內的產(chǎn)品升級軟件下載到產(chǎn)品中去,而實(shí)現產(chǎn)品軟件升級換代。在自己的實(shí)驗室便可通過(guò)Modem對遠方的產(chǎn)品進(jìn)行軟件升級。這將是以后電子產(chǎn)品的必然趨勢。  

還可以在線(xiàn)對產(chǎn)品參數進(jìn)行修改?蓪(shí)現在線(xiàn)對現場(chǎng)歷史數據的存儲、曲線(xiàn)參數校正等功能。適用于一些需經(jīng)常改變數據的應用產(chǎn)品(如利息計、計費器、密碼鎖及需要升級的產(chǎn)品,如微型打印機等)及需遠距離改變設備參數的產(chǎn)品(遙控報警器遙控家用電器等遙控設備)。
本文地址:http://selenalain.com/thread-35983-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)在線(xiàn)工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页