當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]“在系統(tǒng)編程”(In-SystemProgramming,簡(jiǎn)稱ISP)技術(shù)的出現(xiàn)是對(duì)傳統(tǒng)編程方法的重大突破,它是指在用戶設(shè)計(jì)的微控制器系統(tǒng)中為配置新的系統(tǒng)功能而對(duì)器件進(jìn)行重新編程,并在線地將程序代碼(固件)下載到

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

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

1  SM2965的主要特點(diǎn)

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

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

2.1  程序存儲(chǔ)器

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

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

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

SM2956在標(biāo)準(zhǔn)的80C52內(nèi)核的基礎(chǔ)上增加了768字節(jié)的片內(nèi)擴(kuò)展數(shù)據(jù)存儲(chǔ)器Expanded Ram(ERAM),這使得片內(nèi)數(shù)據(jù)存儲(chǔ)器的總?cè)萘窟_(dá)到1k字節(jié)。其數(shù)據(jù)存儲(chǔ)器組成如圖2所示。另外,還增加了8個(gè)特殊功能寄存器,以用于實(shí)現(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的各位定義如下:

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

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

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

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

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

執(zhí)行整片擦除時(shí),SM2965將擦除ISP下載程序空間外的所有FLASH存儲(chǔ)器;而執(zhí)行芯片寫保護(hù)功能時(shí),SM2965存儲(chǔ)器將讀出內(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,啟動(dòng)字節(jié)編程功能,將22H固化到1005H,ISP功能結(jié)束后,START 自動(dòng)復(fù)位為0,PC指向 下一條指令  

例2:擦除$253CH地址所對(duì)應(yīng)的頁面  

以512字節(jié)為一頁,則253CH處于頁面地址范圍為2400H~25FFH,執(zhí)行下面程序后,該頁面將全部寫成#0FFH。
    MOV SCONF,#04H;開放全部ISP功能
    MOVFAH,#25H;目標(biāo)地址高地址25H或24H
    MOVFAL,#3CH;目標(biāo)地址低地址3CH或任意
    MOV FDAT,#00H;寫入數(shù)據(jù):00H或任意
    MOV FCON,#82H;設(shè)置START位為1,啟 動(dòng)

頁面擦除功能。ISP功 能結(jié)束后,START自動(dòng)復(fù)位為0,PC指向下一條指令

例3:整片擦除
    MOV SCONF,#04H;開放全部ISP功能
    MOVFAH,#00H;目標(biāo)地址高地址00H或任意
    MOVFAL,#00H;目標(biāo)地址低地址00H或任意
    MOVFDAT,#00H;寫入數(shù)據(jù):00H或任意
    MOVFCON,#83H;設(shè)置START位為1,啟動(dòng)整片擦除功能。ISP功能結(jié)束后,START自動(dòng)復(fù)位為0,PC指向下一條指令

4  M2965的在系統(tǒng)中編程方法

4.1  實(shí)現(xiàn)ISP功能的硬件電路

將主機(jī)(PC機(jī)或服務(wù)器)通過一定的通信信道與由SM2965組成的微控制器系統(tǒng)相連,即可將固件下載到SM2965的FLASH存儲(chǔ)器中。SM2965可通過并口或串口與主機(jī)相連,通常使用串口更為方便,其硬件連接如圖3所示。SM2965串行口的信號(hào)時(shí)序滿足RS232C要求,但電平為TTL電平,因此,需將TTL電平轉(zhuǎn)換為RS232C電平,轉(zhuǎn)換芯片可使用MC1488/MC14889、MAX232、ICL232等集成電路。

4.2  實(shí)現(xiàn)ISP功能的編程方法

SM2965的FLASH程序存儲(chǔ)器存儲(chǔ)有兩種程序,分別為執(zhí)行用戶程序的應(yīng)用程序和執(zhí)行ISP功能的下載程序??赏ㄟ^兩種途徑進(jìn)入下載程序,一種是在SM2965上電后,由硬件自動(dòng)判別FLASH程序存儲(chǔ)器0000H地址中的數(shù)據(jù)是否為“空”(即#0FFH),如不為#0FFH,則從0000H地址處執(zhí)行應(yīng)用程序,否則跳轉(zhuǎn)到下載程序的入口地址,其入口地址由通過編程器寫入芯片的配置來確定。另一種是從應(yīng)用程序直接跳轉(zhuǎn)到下載程序入口地址。后者常通過中斷啟動(dòng)ISP下載程序。在下載程序執(zhí)行完畢后,可以通過硬件復(fù)位、看門狗復(fù)位或直接跳到0000H地址來啟動(dòng)應(yīng)用程序。通過串行口中斷來啟動(dòng)ISP操作的軟件流程如圖4所示,而主機(jī)控制ISP的流程如圖5所示。為了防止數(shù)據(jù)在傳輸過程中出現(xiàn)誤碼,通常在發(fā)送數(shù)據(jù)包的過程中,還必須加入CRC校驗(yàn)以用于糾錯(cuò)。

以上敘述的是UART通信,使用中也可以選擇其它通信方式:如RF、IR、CAN、LAN以及Internet。若通過調(diào)制解調(diào)裝置連接到Internet,則可實(shí)現(xiàn)產(chǎn)品的遠(yuǎn)程升級(jí)和調(diào)試診斷。因此,在產(chǎn)品設(shè)計(jì)時(shí),使用具有ISP功能的電子產(chǎn)品,對(duì)于縮短開發(fā)進(jìn)程,提高產(chǎn)品適應(yīng)性,延長(zhǎng)產(chǎn)品的生存周期,及降低維護(hù)成本都具有及其重要的意義。

參考文獻(xiàn)
1.http://www.syncmos.com.tw/Datasheet/MCU/ SM2965.pdf 
2.http://www.semiconductors.philips.com/pip/ P89C51RC-P89C51RD-7.pdf 
3.FlashFlex51 MCUSST89F54/SST89F58 User Manual. Silicon Storage Technology.Inc 1999.9

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉