<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > SM2965微控制器及其ISP應(yīng)用技術(shù)

          SM2965微控制器及其ISP應(yīng)用技術(shù)

          作者: 時間:2012-03-06 來源:網(wǎng)絡(luò) 收藏

          “在系統(tǒng)編程”(In-SystemProgramming,簡稱)技術(shù)的出現(xiàn)是對傳統(tǒng)編程方法的重大突破,它是指在用戶設(shè)計的微系統(tǒng)中為配置新的系統(tǒng)功能而對器件進行重新編程,并在線地將程序代碼(固件)下載到程序存儲器中的一種編程技術(shù),繼SST公司推出具備功能的FlashFlex51系列微之后,PHILS、WINBOND、LG、 ATMEL、SynC- MOS等公司都相繼推出了具有ISP/IAP(In-Appli-cation Programming)功能的51系列微,這些器件的增強性能主要表現(xiàn)在下面幾方面:
           ?。?)內(nèi)部ROM采用FLASH存儲器,容量可達(dá)32~64k字節(jié),內(nèi)部RAM容量可達(dá)512~1024個字節(jié);
           ?。?)增加了特殊功能寄存器,以增強控制功能;
           ?。?)內(nèi)部配置有看門狗定時器復(fù)位電路;
            (4)為降低EMI,可禁止ALE輸出;
            (5)具有雙DPTR指針。

          本文引用地址:http://www.ex-cimer.com/article/171949.htm

          這些功能使得微控制器的外部擴展進一步得到簡化,從而形成了真正的“單片”結(jié)構(gòu)。筆者在POS收費終端機中更換了SynCMOS公司的作為主處理器,因此,不用修改其它硬件,而僅利用微控制器串行口即方便地實現(xiàn)了ISP功能,本文將對的ISP功能和使用方法加以介紹。

          1 的主要特點

          和標(biāo)準(zhǔn)80C52相比,SM2965具有以下特點:
            ●編程電壓為5V;
            ●集成了64k字節(jié)片內(nèi)FLASH存儲器(包括實現(xiàn)ISP功能的下載程序空間);
            ●實現(xiàn)ISP功能下載程序空間可設(shè)置為N×200H(N=0~8);
            ●具有256字節(jié)的片內(nèi)RAM+768字節(jié)的片內(nèi)擴展RAM(ERAM);
            ●內(nèi)含看門狗定時器;
            ●對PLCC和QFP封裝型號增加了P4口,即:P4.0~P4.3;
            ●為降低EMI,在不需要時,可禁止ALE信號輸出;
            ●復(fù)位后,如硬件檢測程序存儲器空間0000H地址為空,則可自動執(zhí)行ISP功能程序。

          2 SM2965的存儲器結(jié)構(gòu)

          2.1 程序存儲器

          SM2965內(nèi)部集成了64k字節(jié)的FLASH存儲器作為程序存儲器,其地址范圍為00000H~0FFFFH,可用于存放執(zhí)行用戶程序的應(yīng)用程序和執(zhí)行ISP功能的下載程序。

          執(zhí)行ISP功能的下載程序空間最大可配置到4k字節(jié),空間大小為N×200H字節(jié),N為0時表示不配置下載程序,64k字節(jié)FLASH存儲器將全部用于應(yīng)用程序;N為1時表示0FE00H~0FFFFH共有200H個字節(jié)配置給下載程序空間來使用,而N=8則表示下載程序空間達(dá)到最大配置,為4k字節(jié)。具體的程序空間組成如圖1所示。0FFFFH~(N×200H)為下載程序的入口地址。從0000H~FDFFH供應(yīng)用程序使用;……;N的大小只能通過商用編程器來配置。一旦在編程器上配置了N≠0,那么,在系統(tǒng)中便無法再改變ISP空間的配置。

          51.jpg

          2.2 數(shù)據(jù)存儲器

          SM2956在標(biāo)準(zhǔn)的80C52內(nèi)核的基礎(chǔ)上增加了768字節(jié)的片內(nèi)擴展數(shù)據(jù)存儲器Expanded Ram(ERAM),這使得片內(nèi)數(shù)據(jù)存儲器的總?cè)萘窟_(dá)到1k字節(jié)。其數(shù)據(jù)存儲器組成如圖2所示。另外,還增加了8個特殊功能寄存器,以用于實現(xiàn) SM2965的增加功能。表1所列為SM2965增加的特殊功能寄存器。

          3 特殊功能寄存器

          3.1 ISP特殊功能寄存器

          與ISP功能有關(guān)的特殊功能寄存器有FAH、FAL、FDAT、SCONF和FCR,其中FAH×256+FAL為編程狀態(tài)下的目標(biāo)地址,F(xiàn)DAT為編程數(shù)據(jù)。SCONF為系統(tǒng)控制寄存器,SCONF中的位2與ISP功能有關(guān),而3~6位則保留未用。SCONF的復(fù)位狀態(tài)為00000010B; SCONF的各位定義如下:

          52.jpg

          其中,WDR為看門狗定時器溢出位;OME為片內(nèi)擴展數(shù)據(jù)存儲器ERAM選擇位,1選擇片內(nèi),0選擇片外;ALEI為ALE輸出禁止位;ISPE為ISP 功能總允許/禁止位,1表示允許,0表示禁止。將ISPE設(shè)置為0可屏蔽全部ISP功能,因此在執(zhí)行應(yīng)用程序時將ISPE設(shè)置為0可有效防止FLASH存儲器的內(nèi)容被非法改寫。

          FLASH控制寄存器FCR在編程時將起關(guān)鍵作用,F(xiàn)CR的2~6位保留未用。FCR復(fù)位狀態(tài)為00000000B。其各位定義如下:

          54.jpg

          其中,START為ISP功能啟動位。START=1,則啟動ISP功能,具體功能由F1、F0決定,如表2所列。START=0時,ISP操作無效。

          當(dāng)START置1后,SM2965硬件將自動鎖存地址和數(shù)據(jù),并獲得程序指針控制權(quán),直到ISP功能結(jié)束,START自動復(fù)位為0為止。下載程序中無須檢查START的狀態(tài)。

          FLASH存儲器的一個頁面為200H字節(jié)。執(zhí)行ISP功能時,需要指定FLASH存儲器地址。執(zhí)行字節(jié)編程功能時,F(xiàn)LASH存儲器地址為編程字節(jié)的目標(biāo)地址;而在執(zhí)行頁面擦除功能時,該地址則為該頁面內(nèi)的任一地址;而執(zhí)行整片擦除和芯片寫保護的地址則為0000H~0FFFFH范圍內(nèi)任一地址;

          執(zhí)行整片擦除時,SM2965將擦除ISP下載程序空間外的所有FLASH存儲器;而執(zhí)行芯片寫保護功能時,SM2965存儲器將讀出內(nèi)容全部為“00H”。

          3.2 ISP特殊功能寄存器使用舉例

          例1:編程22H到地址$1005H
          MOV SCONF,#04H;開放全部ISP功能
          MOV FAH,#10H;目標(biāo)地址高地址10H
          MOV FAL,#05H;目標(biāo)地址低地址05H
          MOV FDAT,#22H;寫入數(shù)據(jù):22H
          MOV FCON,#80H;設(shè)置START位為1,啟動字節(jié)編程功能,將22H固化到1005H,ISP功能結(jié)束后,START 自動復(fù)位為0,PC指向 下一條指令


          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();