《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > OTPROM型單片機內部存儲器的使用研究
OTPROM型單片機內部存儲器的使用研究
摘要: 隨著變頻調速以及微機控制技術的發展,適應電機控制的Intel 8XC196MC系列單片機應用越來越廣泛。當程序從仿真器移植到單片機的OTPROM時,并不能保證程序的一次成功性,由于單片機的不可擦除性,若程序脫機一次就使用一片單片機,顯然將造成巨大的資源浪費。另一方面,對于復雜系統,16KB的OTPROM容量如果不夠,則需要采用擴展外部存儲器,為了保證有效實現加密功能,應保留一部分程序在片內OTPROM,此時便涉及到單片機內、外存儲器的銜接問題。
Abstract:
Key words :

       隨著變頻調速以及微機控制技術的發展,適應電機控制的Intel 8XC196MC系列單片機應用越來越廣泛。    

       與80C196MC相比,87C196MC單片機帶有16 KB的OTPROM(One Tline Programmable Read-Only Memory),可以進行片內編程操作,而且可以增強加密功能。對于普通的控制系統來說,其存儲容量足夠大,不必再使用外部擴展存儲器。然而87C196MC單片機的OTPROM存在一個缺點:不可擦除,也就是說只能編程一次,不能實現重復編程,不利于大量普及使用。   

       當程序從仿真器移植到單片機的OTPROM時,并不能保證程序的一次成功性,由于單片機的不可擦除性,若程序脫機一次就使用一片單片機,顯然將造成巨大的資源浪費。另一方面,對于復雜系統,16KB的O

 

TPROM容量如果不夠,則需要采用擴展外部存儲器,為了保證有效實現加密功能,應保留一部分程序在片內OTPROM,此時便涉及到單片機內、外存儲器的銜接問題。   

       本文針對Intel 87C196MC單片機內部存儲器的不可擦除性,對兩種情況下的使用問題提供了可以有效實現重復編程的方法,并可以推廣至其他任何帶有OTPROM的單片機系列的編程應用中。

       1 87C196MC單片機內部存儲器的編程方式

      
Intel 87C196MC單片機支持三種編程方式:自動編程方式(使87C196MC單片機不用EPROM編程器即可從外部EPROM對自己編程)、從機編程方式(給外部EPROM編程器提供了一個標準接口)和實時編程方式(運行中編程方式,可以在軟件控制下實時對單個EPROM單元編程)。和其他方式不同,實時編程可以在不進入全EPROM編程方式下完成。   

       對于Intel 87C196MC單片機的OTPROM只能編程,不能擦除,但在編程時可以驗證是否已確實編程。對0TPROM可以采用2種編程方法:在從機編程方式下或在專門的OTPROM編程方式下編程。OTPROM為87C196MC單片機提供了輔助的存儲器保護手段,它可以禁止總線控制器執行外部取指周期,若企圖把一個外部地址裝載到PC寄存器,芯片將復位。這種自動復位功能對跑飛的代碼也提供了一種額外的恢復手段。使用時應根據實際需要采取不同的編程方式。

       2 87C196MC單片機內部存儲器的重復編程方法

       單片機87C196MC的EA引腳(外部訪問允許端,87C196MC PLCC84-36腳)用來控制訪問內部存儲器或外部存儲器。當EA=O時,所有訪問都是對片外存儲器的;當EA=1時,對2000H~5FFFH單元的訪問都是對片內OTPROM/ROM的。編程方式下,EA=12.5 V。由于復位時EA的電平被鎖存,難以通過外部硬件電路來實現程序空間的選擇。這里通過應用程序語句來控制程序地址范圍,相當于EA的電平變化作用。本文主要應用了Intel匯編語言的長跳轉指令UMP來實現控制訪問內、外存儲器的功能,下面介紹兩種常用的方法。

       2.1片內編程操作方法   

       所謂87C196MC單片機OTPROM的不可擦除性,實質上是不可實現從“0”到“1”的編程,而只能完成從“1”到“O”的編程。以下通過簡單的程序實例來介紹這種方法。

       LJMP NEXTl
       CSEG AT 2600H
       NEXTl:……     ;
  


     上述語句實際上代表的是LJMP2600H.其機器碼為E79C04,當地址2600H變化時,得到一組對應的機器碼,通過對這一組機器碼進行分析,就可以得到該方法的原理,如表1所列。

程序對應機器碼表


機器碼E79C04的后兩個字節代表了匯編程序語句中的地址(04代表了2600H,14代表了3600H……)。當一個字節從4位全是“1”變成4位全是“O”,且每次只有一個“l”變為“0”時,可以有多種不同的變法,如表2所列。

字節變化方法表


       由于87C196MC單片機的OTPROM只能完成從“1”到“O”的編程,而87C196MC單片機的程序從2000H開始執行,因此可以在程序從2000H執行一小段后進行跳轉,例如首先跳至4100H(對應的機器碼為E79C1F)再存儲程序的其他部分。下一次使用時,把機器碼E79C1F改為E79C1E(對應地址為4000H),程序則跳至4000H開始執行,4100H以后的程序段不再執行。再下一次使用時,把機器碼E79C1E改為E79C1c(對應地址為3A00H),程

 

序則跳至3A00H開始執行,4000H以后的程序段不再執行,以此類推(即機器碼的最后一個字節變化為F→E→c,對應表2中第一組的變化),即可以重復使用同一片單片機進行多次編程操作。   

       這種方法中,單片機87C196MC的引腳EA接高電平。它適用于程序簡短且沒有擴展外部存儲器,只有內部存儲器可用的情況。

       2.2片內、外編程操作方法   

       如果內部存儲器容量不夠或因為其他方面需要,要求擴展外部存儲器時,當然可以選擇容量較大的外部存儲器,而不使用內部存儲器,但這樣一來,程序的保密性將難以實現,而且浪費了單片機內部的存儲器空間。使用內、外結合的方法既可以滿足容量需求,叉能方便的實現加密操作。   

       鑒于87C196MC單片機的程序從2000H開始執行,將單片機87C196MC的引腳麗置“1”,那么單片機程序將從內部2000H開始執行。可以在程序從2000H執行一小段后(根據實際需要任意設定)進行跳轉,此處與片內跳轉的操作有所不同,它將直接跳出單片機87C196MC片內OTPROM的2000H~5FFFH單元的范圍。當命令被執行時,會自動轉入外部存儲器的地址范圍內,例如:LJMP8000H,其中8000H是外部存儲器的地址入口,這樣就從片內存儲器轉入到外部存儲器了。可以通過修改外部存儲器(可重復擦寫)的程序來進行程序的調試,非常方便。當然,如果需要從外部存儲器轉入內部存儲器時,操作方法是類似的。

       結  語

       本文詳細分析介紹了兩種可以實現可重復編程的單片機的使用方法,而且這兩種方法可以推廣至其他任何帶有0TPROM的單片機編程,編程的思路完全相同,具體實驗證實了這兩種方法具有切實可行性。


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美大片免费观看| 国产欧美激情| 久久精品女人的天堂av| 亚洲欧美日韩高清| 在线视频中文亚洲| 亚洲麻豆一区| 亚洲精品中文字幕在线| 亚洲电影自拍| 久久精品一区二区国产| 久久成人精品| 欧美影片第一页| 欧美有码在线观看视频| 欧美在线视频免费观看| 欧美一级在线播放| 久久精品国产69国产精品亚洲 | 久久一区视频| 久久精品视频导航| 久久精品国产99| 午夜欧美不卡精品aaaaa| 午夜精品www| 欧美一区二区视频在线观看2020| 久久精品国产亚洲精品| 性久久久久久久久久久久| 午夜天堂精品久久久久| 欧美一区二区视频97| 久久精彩免费视频| 亚洲欧洲一区二区三区| 亚洲伦理久久| 这里只有精品在线播放| 亚洲欧美国产另类| 久久精品人人做人人综合| 久久香蕉精品| 欧美精品一区在线发布| 欧美日韩中文字幕在线| 国产精品国产三级国产普通话三级| 免费欧美电影| 欧美日韩成人在线视频| 国产精品久久午夜夜伦鲁鲁| 国产午夜精品视频免费不卡69堂| 欧美日韩国产大片| 欧美日韩中文在线观看| 国产精品视频九色porn| 国产专区一区| 亚洲精品国产精品国自产观看 | 亚洲综合三区| 久久不射网站| 亚洲最新在线视频| 欧美一区亚洲一区| 欧美福利视频一区| 国产精品免费看| 韩国av一区| 亚洲精品一区二区网址| 亚洲一级黄色av| 亚洲激情社区| 亚洲欧美区自拍先锋| 久久久亚洲午夜电影| 欧美理论大片| 国产日韩在线视频| 亚洲欧洲日本一区二区三区| 亚洲性视频h| 亚洲人成网站在线播| 午夜精品亚洲一区二区三区嫩草| 亚洲私人影院| 久久精品首页| 欧美精品在线观看一区二区| 国产欧美一区二区色老头| 亚洲黄一区二区三区| 亚洲欧美综合v| 一区二区欧美亚洲| 久久人人爽人人爽爽久久| 欧美午夜在线观看| 在线国产精品一区| 亚洲欧美激情一区二区| 日韩视频在线一区| 久久久噜噜噜久久中文字免| 欧美三级小说| 亚洲福利视频二区| 欧美一进一出视频| 亚洲一区三区视频在线观看 | 欧美aa国产视频| 国产精品成人午夜| 亚洲高清在线视频| 亚洲男同1069视频| 亚洲手机成人高清视频| 老色批av在线精品| 国产精品一区二区欧美| 亚洲日本aⅴ片在线观看香蕉| 一本高清dvd不卡在线观看| 久久精品99国产精品酒店日本| 亚洲电影在线看| 午夜精彩国产免费不卡不顿大片| 先锋影音国产精品| 欧美日韩国产不卡在线看| 黑人中文字幕一区二区三区| 亚洲一区日韩在线| 亚洲色图在线视频| 欧美激情网友自拍| 1769国产精品| 久久精品午夜| 久久久精品一品道一区| 国产精品亚洲综合天堂夜夜| 夜夜狂射影院欧美极品| 99视频超级精品| 欧美成人中文| 国内外成人免费激情在线视频| 亚洲国产精品v| 久久精品99久久香蕉国产色戒| 亚洲黄色av| 久久亚洲综合| 黄色成人在线网址| 久久aⅴ国产欧美74aaa| 欧美在线视频a| 国产精品久久77777| 一区二区三区波多野结衣在线观看| 亚洲欧美在线一区二区| 亚洲欧美色一区| 国产精品国产三级国产专区53| 国内精品一区二区三区| 欧美一级日韩一级| 久久精品国产亚洲高清剧情介绍| 欧美成人a∨高清免费观看| 国产在线不卡精品| 欧美一区二区三区成人| 欧美中文字幕在线播放| 国产欧美婷婷中文| 亚洲欧美一区在线| 久久精品国产一区二区三区免费看| 欧美 日韩 国产在线| 怡红院精品视频在线观看极品| 日韩视频免费在线观看| 在线一区日本视频| 国产精品av一区二区| 亚洲午夜在线观看| 亚欧成人在线| 国产主播一区二区三区| 亚洲国产综合在线| 欧美成人一品| 亚洲日本中文字幕免费在线不卡| 欧美主播一区二区三区| 久久99伊人| 国产主播一区二区三区四区| 亚洲高清网站| 欧美激情国产日韩| 99精品国产一区二区青青牛奶 | 久久黄色网页| 国产一区观看| 亚洲每日更新| 国产精品theporn| 香蕉视频成人在线观看| 久久中文精品| 亚洲精品久久久久久久久久久| 欧美一区二区日韩| 另类春色校园亚洲| 亚洲欧洲另类| 亚洲夜间福利| 国产一区二区激情| 亚洲乱码国产乱码精品精98午夜 | 欧美日韩色一区| 亚洲图片欧洲图片av| 久久久国产精品一区二区三区| 国产精品成人久久久久| 亚洲欧美区自拍先锋| 老司机午夜免费精品视频| 亚洲精品一区二区在线观看| 午夜欧美精品| 亚洲大胆av| 亚洲欧美日韩人成在线播放| 国产性猛交xxxx免费看久久| 亚洲欧洲在线看| 国产精品乱人伦中文| 亚洲大片av| 欧美三日本三级少妇三2023 | 欧美在线综合| 亚洲国产精品久久久久秋霞不卡| 亚洲大胆人体视频| 欧美日韩精品在线播放| 欧美一区亚洲一区| 欧美日韩在线播放一区| 欧美一区视频| 欧美日韩精品免费观看| 性欧美18~19sex高清播放| 欧美精品18| 性做久久久久久久久| 欧美日韩国产精品一区二区亚洲| 亚洲美女中出| 久久精品99无色码中文字幕 | 国产一区二区三区久久悠悠色av| 亚洲特级片在线| 久久永久免费| 在线视频欧美一区| 欧美成在线观看| 欧美一区二区三区四区在线观看地址| 欧美制服丝袜| 99re6这里只有精品| 美女主播精品视频一二三四| 亚洲无玛一区| 欧美日韩国产999| 亚洲日本aⅴ片在线观看香蕉| 欧美激情一区二区三区在线视频观看| 91久久精品国产91久久性色|