亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        十六位單片機MCS-96數(shù)據(jù)總線控制

        2004-03-14 21:32:10陳再清
        電子世界 2004年2期
        關(guān)鍵詞:單片機程序

        陳再清

        十六位單片機MCS-96X序列內(nèi)部的硬件構(gòu)造比八位單片機MCS-51系列復雜,使得外圍接口電路也變得復雜,主要體現(xiàn)在片外的總線配制方面。51系列單片機的總線片內(nèi)、片外均為八位,不存在配制問題。而MCS-96片內(nèi)是十六位結(jié)構(gòu),片外的數(shù)據(jù)總線可以配制成十六位,構(gòu)成全十六位機;也可以配制成八位,構(gòu)成準十六位機。當然,后者的性能會有所下降。而片外的數(shù)據(jù)總線又可分為程序存儲器(ROM或EPROM)數(shù)據(jù)總線和數(shù)據(jù)存儲器(RAM)數(shù)據(jù)總線,它們可以單獨配制成十六位或八位,由此搭配而成的方式較多??梢?,片外數(shù)據(jù)總線的配制成了十六位單片機外圍接口中最復雜的部分。必須說明的是:這里所指的總線都是數(shù)據(jù)總線,因為不管片內(nèi)片外,地址線均為十六位。在MCS-96中,以片內(nèi)無程序存儲器的芯片80C196XX(如80C196KB等)價格最低廉,故應(yīng)用也最廣。

        1.與系統(tǒng)總線有關(guān)的幾條控制線

        系統(tǒng)總線的各種配制是依賴MCS-96的有關(guān)幾條控制線(輸入或輸出腳)與芯片配置寄存器CCR的有關(guān)設(shè)置共同來實現(xiàn)的。它們是:

        (1)地址總線分離控制線 ALE / ADV 地址片的鎖存信號,高電平有效的 ALE,或低電平有效的ADV。

        (2)讀控制線 RD 從片外讀取指令或數(shù)據(jù)時,RD低電平有效,而且總是按“字”進行。

        (3)寫控制線 WRL 和 WRH或 WR、BHE、A0向片外數(shù)據(jù)存儲器寫入數(shù)據(jù)時,有寫高位字節(jié)、寫低位字節(jié)、同時寫高位和低位字節(jié)(一個字)三種寫入方式。根據(jù)總線配置的方式的不同,會出現(xiàn)不同的控制信號。

        (4)總線寬度選擇線 BUSWIDTH 為0時選擇八位;為1時選擇十六位。但它還須與芯片配置寄存器CCR的D1位聯(lián)合進行控制。

        (5)取指信號線 INST80C196KB還輸出一根取指信號線,平時該線輸出低電平,只有在向片外取指時變?yōu)楦唠娖剑ㄔ诘刂酚行趦?nèi))。利用這一特性可以將片外的程序存儲空間和數(shù)據(jù)存儲空間分開(類似51系列的PSEN信號線),使總的存儲空間比原來的多出一倍。

        (6)準備就緒信號線READY80C196為了適應(yīng)片外慢速存儲器或外設(shè)的時序要求,在正常執(zhí)行的狀態(tài)周期中插入等待周期,是否等待或等待多久由CCR寄存器的D5、D4位確定。

        為了使單片機能實現(xiàn)多種總線配置方案,滿足存儲器的接口要求和就緒控制,所有可供靈活選擇的信息都集中在芯片配置寄存器CCR中。有關(guān)該寄存器內(nèi)各位功能請見前期的“準十六位單片機8098及80C198”一文中的表2。

        外部數(shù)據(jù)總線的寬度不光與CCR 的D1位有關(guān),還與控制線BUSWIDTH 的狀態(tài)有關(guān),兩者的關(guān)系,如表 1所示。只有當D1=1,BUSWIDTH=1 時,數(shù)據(jù)總線寬度才為十六位。顯見,當D1=1時,由BUSWIDTH的狀態(tài)就可以單獨決定總線的寬度,這可以通過地址線譯碼或程序運行來設(shè)定,使總線寬度隨著功能的需求而進行動態(tài)的改變。

        2.MCS-96外部數(shù)據(jù)總線的四種控制方式

        (1)標準總線方式當CCR D2=1,CCR D3=1 時,80C196提供寫信號WR、BHE 和地址鎖存信號ALE。當總線寬度為十六位時(BUSWIDTH=1),須由WR、BHE和地址線A0通過譯碼電路獲得WR HIGH、WR LOW信號,用來分別寫偶單元字節(jié)(低位字節(jié))和奇單元字節(jié)(高位字節(jié))。當總線寬度為八位時(BUSWIDTH=0),只須用WR信號就可。地址線送出時,ALE變高,其下降沿作為外部地址的鎖存信號。

        (2)寫選通方式 當CCR D1=1,且總線寬為十六位時( BUSWIDTH=1),WR、BHE 被WRL、WRH替代,分別向偶單元和奇單元寫入一個字節(jié)。當總線寬度為八位時(BUSWIDTH=0),只使用WRL便可。地址鎖存信號仍為ALE。寫選通方式比標準方式的外部接口要簡單,不需要譯碼電路,便可直接輸出寫信號。

        此外還有地址有效選通方式,地址有效寫選通方式以1、2兩種較為常用。單片機還會因片內(nèi)是否有程序存儲器而使外部的系統(tǒng)總線有所區(qū)別。當內(nèi)部有程序存儲器時(ROM、EPROM等),其外部總線只涉及數(shù)據(jù)存儲器(RAM),結(jié)構(gòu)顯然要簡單。

        外部程序存儲器和數(shù)據(jù)存儲器的數(shù)據(jù)總線并不要求使用相同的寬度,可以分別使用八位和十六位,這兩者又會出現(xiàn)四種搭配方式:①八位總線程序存儲器 + 八位總線數(shù)據(jù)存儲器;②十六位總線程序存儲器 + 八位總線數(shù)據(jù)存儲器;③十六位總線程序存儲器 + 十六位總線數(shù)據(jù)存儲器;④八位總線程序存儲器 + 十六位總線數(shù)據(jù)存儲器。其中第四種通常不用。限于篇幅,下面僅以③為例進行說明。

        十六位總線程序存儲器 + 十六位總線數(shù)據(jù)存儲器 其電原理圖見圖1,這是一種全十六位機,我們采用了最常見的80C196KB。它的封裝采用68腳的PLCC結(jié)構(gòu)。本電路的總線方式為寫選通方式,芯片配制寄存器CCR的內(nèi)容為:11111011B(FBH),其意是:無保密,不等待,地址信號線ALE,寫選通信號WRL和WRH,數(shù)據(jù)總線寬度十六位,BUSWIDTH=1。

        采用寫選通方式,寫信號線由標準方式的WR、BHE 自動轉(zhuǎn)換為WRL、WRH,并直接對存儲器進行寫控制。它的取指及數(shù)據(jù)的讀、寫都是十六位的字操作(寫數(shù)據(jù)時還可以單獨由WRL或WRH分別對IC6或IC7進行字節(jié)操作)。故運行速度是最快的。

        在器件的選用上,由于很難找到十六位的地址鎖存器,這里用兩片八位的地址鎖存器IC2、IC3串級使用,分別用于低八位、高八位的地址鎖存,這是一種價廉物美的方式,使用上也方便。同樣的原因,十六位的程序存儲器也采用了這種方式,用兩片八位的EPROM芯片IC4、IC5串級使用,分別用于低八位(偶單元)的程序存儲和高八位(奇單元)的程序存儲。由于程序存儲空間為16K×16位,存儲芯片只能用兩片27128。地址區(qū)間為0000~7FFFH。

        對于數(shù)據(jù)存儲器,也是用兩片八位的RAM芯片IC6、IC7串級使用,IC6、IC7應(yīng)用62128型號,該型號難找,此處用62256代替,將該片的地址腳A14接地即可。地址區(qū)間為8000~FFFFH。

        必須說明的是:經(jīng)IC2、IC3鎖存器輸出的地址線A0~A15中,A0必須空出,而將A1~A14依次接到IC4、IC5的地址腳A0~A13上。原因是取指時每次讀一個字(IC4、IC5各讀一個字節(jié),且兩片的地址相同),給出的地址必須能包含IC4低位字節(jié)(偶單元)和IC5高位字節(jié)(奇單元)。采用上述接法可以選中一個字中對應(yīng)的低位字節(jié)和高位字節(jié),并通過AD0~AD7和AD8~AD15讀入到單片機內(nèi)。

        對于數(shù)據(jù)存儲器,地址線A0也空出不用,A1~A14依次分別接到數(shù)據(jù)存儲器IC6、IC7的A0~A13腳。不過,寫數(shù)據(jù)存儲器時,有三種寫法:①可以寫一個字(WRL、WRH同時變低),寫低八位字節(jié)(WRL變低),寫高八位字節(jié)(WRH變低)。

        它的地址譯碼由地址線A15控制,為低時選通程序存儲器IC4、IC5;為高時通過反相器D選通數(shù)據(jù)存儲器IC6、IC7。圖2給出了相應(yīng)的時序圖。

        因IC4、IC5分別為偶單元和奇單元的存儲芯片,應(yīng)將目標代碼文件依序分成0、2、4、6……2N(偶單元文件)和1、3、5、7……2N+1(奇單元文件)兩個文件,并分別固化到IC4、IC5中。

        CCR芯片配置寄存器參數(shù)寫入法 CCR是一個特殊的專用寄存器,無法通過對內(nèi)部RAM的訪問來改變CCR的內(nèi)容,而該寄存器的內(nèi)容對總線的設(shè)置又至關(guān)重要。80C196KB復位后不是從0000H開始運行,而是從2080H開始運行,而程序固化的起始地址卻是從2000H開始。在2000~2079H單元中,除少數(shù)被定義外,大部分被保留下來用于未來的產(chǎn)品開發(fā)。其中有一個特殊的單元2018H稱之為芯片配置字節(jié)(CCB),這個單元屬于程序存儲區(qū)的范圍,應(yīng)事先對其內(nèi)容進行設(shè)置編程。當系統(tǒng)復位且只有復位時,CCB的內(nèi)容才被自動裝載到芯片配置寄存器CCR中,由此可見,CCR的內(nèi)容是通過CCB的間接方式寫入的。

        2018H(CCB)單元的編程方法雖有幾種,但最方便的莫過于使用編輯器來進行。因為編輯器一般都有CCB的設(shè)置界面,操作者只須依總線的需要進行設(shè)置,再將它與已編制好的源程序一起進行匯編,獲得目標程序,再進行固化就可以了。而編輯器的種類很多,功能也不盡相同,工作的平臺也不相同,但我們總可以在集成調(diào)試軟件界面的主菜單—子菜單中,找到一個有關(guān)的設(shè)置界面,其中有五項是對CCB參數(shù)的設(shè)置。從1~5依次是總線寬度設(shè)置、寫控制線設(shè)置、地址選通設(shè)置、等待周期設(shè)置、保密設(shè)置。它們依次對應(yīng)于CCR中的D1、D2、D3、D4、D5、D6D7。下述的具體設(shè)置對應(yīng)于圖1總線的寫選通方式。

        設(shè)置完畢后,再將欲匯編的源程序調(diào)入窗口進行匯編,通過后,則剛才設(shè)置的內(nèi)容已寫入到2018H中。我們可以通過反匯編窗口進行查看,將程序區(qū)向前移至2018H單元,可以看到其內(nèi)容是11111011(FBH)。

        奇、偶單元固化文件的獲取 當程序存儲器采用十六位數(shù)據(jù)總線時,如前面所述,必須將原來的固化文件一分為二,構(gòu)成對應(yīng)的偶(低八位)固化文件和奇(高八位)固化文件,并分別固化到偶(低八位)程序存儲器IC4和奇(高八位)程序存儲器IC5中。注意:這里所說的固化文件是指能用于程序存儲器固化的可執(zhí)行的二進制文件,而不是其它的文本文件。這類文件的后綴是 . ROM或 . BIN。 后綴為 .OBJ文件屬格式機器碼,這里不能使用。

        采用編輯器可以很方便地獲得固化文件,但要將固化文件(暫取名為:FILE.ROM)一分為二獲得對應(yīng)的偶文件(暫取名為:FILE(0).ROM)和奇文件(暫取名為:FILE(1).ROM),幾乎所有的編輯器都無能為力。這需要我們自己動手編制軟件才能完成。

        首先,我們應(yīng)先由FILE.ASM文件獲取二進制固化文件FILE.ROM。獲取該文件有多種方法,也可以采用編輯器。我們將文件的名稱定為:FILE.ROM,記住文件的長度(字節(jié)數(shù)),將該文件放在某個子目錄下(如C:A96FILE.ROM)。

        下面,我們用C語言和BASIC語言各編制出一個程序(程序見本刊網(wǎng)站),用于將固化文件一分為二獲得對應(yīng)的奇、偶文件,這兩個程序的效果是相同的,讀者可以根據(jù)自己熟悉的語言選用一種。以C語言程序為例說明其使用方法,將上面的二進制文件FILE.ROM的長度填入程序的第8行(a=XX)*[1],再將文件名及路徑填入第10、16、17、18、25、32行*[2]。然后運行該程序。運行通過后,退出菜單界面,便可顯示原二進制固化文件FILE.ROM及偶文件FILE(0).ROM和奇文件FILE(1).ROM的內(nèi)容(以十六進制方式顯示,便于查看)。讀者可將三個文件進行核對,正確與否一看便知。在子目錄A96下即可獲得對應(yīng)的奇、偶文件。圖3給出了C語言程序的簡易流程圖,BASIC語言程序的流程圖與圖3大同小異,只是某些過程順序有些改動,該程序填入文件長度(第2行*[1])和文件名及路徑(第3、4、5行*[2]),運行后將直接顯示上述三個文件的十六進制值。將偶文件和奇文件分別固化到IC4 和 IC5中,并分別插入各自的插座,不可插錯。

        運行C語言程序時,有時需要連續(xù)運行兩次方能獲得對應(yīng)的奇偶文件,而BASIC程序可以一次到位。

        猜你喜歡
        單片機程序
        基于單片機的SPWM控制逆變器的設(shè)計與實現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        試論我國未決羈押程序的立法完善
        小議PLC與單片機之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        失能的信仰——走向衰亡的民事訴訟程序
        “程序猿”的生活什么樣
        英國與歐盟正式啟動“離婚”程序程序
        基于單片機的平衡控制系統(tǒng)設(shè)計
        電子制作(2017年19期)2017-02-02 07:08:27
        創(chuàng)衛(wèi)暗訪程序有待改進
        欧洲国产精品无码专区影院| 久久久久久久妓女精品免费影院| 亚洲av首页在线| 国产激情自拍在线视频| 亚洲成a人片在线观看高清| 又白又嫩毛又多15p| 一区二区三区四区草逼福利视频| 国产目拍亚洲精品一区二区| 欧洲精品免费一区二区三区| 亚洲av日韩一区二区| 香蕉亚洲欧洲在线一区| 亚洲精品毛片一区二区三区| 国产成人无码a区在线观看导航| 午夜一区二区三区在线观看| 久久天堂av色综合| 人妻丰满熟妇av无码处处不卡| 国产精品毛片无遮挡| 成人影院在线观看视频免费| 亚洲av日韩一区二三四五六七| 国产丝袜精品不卡| 躁躁躁日日躁| 久久久久亚洲av成人网人人网站| 久久伊人这里都是精品| 蜜桃视频一区视频二区| 国产精品亚洲av网站| 亚洲日本va99在线| 国产成人av一区二区三区在线| 久久99国产精一区二区三区| 丁香五月缴情在线| 亚洲精品国产一区二区免费视频| 视频一区中文字幕亚洲| 亚洲欧美日韩国产精品网| 欧洲熟妇乱xxxxx大屁股7| 特级做a爰片毛片免费看108| 一本色道久久综合狠狠躁篇| 日本人妻免费在线播放| 在线不卡av一区二区| 精品少妇人妻久久免费| 激情中文丁香激情综合| 91综合在线| 射精情感曰妓女色视频|