999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

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

陳再清

十六位單片機(jī)MCS-96X序列內(nèi)部的硬件構(gòu)造比八位單片機(jī)MCS-51系列復(fù)雜,使得外圍接口電路也變得復(fù)雜,主要體現(xiàn)在片外的總線配制方面。51系列單片機(jī)的總線片內(nèi)、片外均為八位,不存在配制問題。而MCS-96片內(nèi)是十六位結(jié)構(gòu),片外的數(shù)據(jù)總線可以配制成十六位,構(gòu)成全十六位機(jī);也可以配制成八位,構(gòu)成準(zhǔn)十六位機(jī)。當(dāng)然,后者的性能會有所下降。而片外的數(shù)據(jù)總線又可分為程序存儲器(ROM或EPROM)數(shù)據(jù)總線和數(shù)據(jù)存儲器(RAM)數(shù)據(jù)總線,它們可以單獨(dú)配制成十六位或八位,由此搭配而成的方式較多。可見,片外數(shù)據(jù)總線的配制成了十六位單片機(jī)外圍接口中最復(fù)雜的部分。必須說明的是:這里所指的總線都是數(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低電平有效,而且總是按“字”進(jìn)行。

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

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

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

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

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

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

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

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

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

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

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

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

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

在器件的選用上,由于很難找到十六位的地址鎖存器,這里用兩片八位的地址鎖存器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讀入到單片機(jī)內(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)將目標(biāo)代碼文件依序分成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復(fù)位后不是從0000H開始運(yùn)行,而是從2080H開始運(yùn)行,而程序固化的起始地址卻是從2000H開始。在2000~2079H單元中,除少數(shù)被定義外,大部分被保留下來用于未來的產(chǎn)品開發(fā)。其中有一個特殊的單元2018H稱之為芯片配置字節(jié)(CCB),這個單元屬于程序存儲區(qū)的范圍,應(yīng)事先對其內(nèi)容進(jìn)行設(shè)置編程。當(dāng)系統(tǒng)復(fù)位且只有復(fù)位時,CCB的內(nèi)容才被自動裝載到芯片配置寄存器CCR中,由此可見,CCR的內(nèi)容是通過CCB的間接方式寫入的。

2018H(CCB)單元的編程方法雖有幾種,但最方便的莫過于使用編輯器來進(jìn)行。因為編輯器一般都有CCB的設(shè)置界面,操作者只須依總線的需要進(jìn)行設(shè)置,再將它與已編制好的源程序一起進(jìn)行匯編,獲得目標(biāo)程序,再進(jìn)行固化就可以了。而編輯器的種類很多,功能也不盡相同,工作的平臺也不相同,但我們總可以在集成調(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)入窗口進(jìn)行匯編,通過后,則剛才設(shè)置的內(nèi)容已寫入到2018H中。我們可以通過反匯編窗口進(jìn)行查看,將程序區(qū)向前移至2018H單元,可以看到其內(nèi)容是11111011(FBH)。

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

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

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

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

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

猜你喜歡
單片機(jī)程序
基于單片機(jī)的SPWM控制逆變器的設(shè)計與實現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
試論我國未決羈押程序的立法完善
小議PLC與單片機(jī)之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
基于單片機(jī)的平衡控制系統(tǒng)設(shè)計
電子制作(2017年19期)2017-02-02 07:08:27
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
主站蜘蛛池模板: 人与鲁专区| 日韩欧美91| 天天色天天操综合网| 免费国产高清视频| 欧美黄网在线| 国产成人精品18| 国产AV无码专区亚洲A∨毛片| 国产精品无码久久久久AV| 亚洲女同一区二区| 99视频全部免费| 91精选国产大片| 日韩毛片免费| 国产成人精品无码一区二| 欧美丝袜高跟鞋一区二区| 婷婷色婷婷| a色毛片免费视频| 午夜精品久久久久久久2023| 国产精品九九视频| 99久久国产精品无码| 色综合日本| 国产大全韩国亚洲一区二区三区| 亚洲欧美极品| 2021精品国产自在现线看| 欧美一级大片在线观看| 国产爽妇精品| 国产精品浪潮Av| 国产精品夜夜嗨视频免费视频| 国产国产人免费视频成18| 国产好痛疼轻点好爽的视频| 91久久精品国产| 国产裸舞福利在线视频合集| 91久久国产综合精品女同我| 亚洲乱码在线播放| 日本a级免费| 亚洲国产成人精品青青草原| 91视频青青草| 91丝袜在线观看| 试看120秒男女啪啪免费| 一本久道热中字伊人| 亚洲av色吊丝无码| 亚洲日韩国产精品无码专区| 亚洲美女久久| 欧美a级完整在线观看| 白浆视频在线观看| 亚洲高清免费在线观看| 四虎永久免费地址| 久久久国产精品免费视频| 中文字幕有乳无码| 日韩高清无码免费| 精品夜恋影院亚洲欧洲| 午夜影院a级片| 亚洲欧美日韩成人高清在线一区| 国产色爱av资源综合区| 91国内外精品自在线播放| 2024av在线无码中文最新| 久青草免费在线视频| 国产www网站| 视频一区亚洲| 色香蕉网站| 中文字幕在线播放不卡| 欧美成人午夜影院| 91人妻日韩人妻无码专区精品| 成人精品区| 亚洲AV电影不卡在线观看| 亚洲美女一级毛片| 欧美伊人色综合久久天天| 2020极品精品国产| 中文字幕久久精品波多野结| 伊人成人在线视频| 日本一本正道综合久久dvd| 亚洲经典在线中文字幕| 亚洲日韩精品综合在线一区二区| 午夜激情福利视频| 欧美在线一二区| 亚洲成肉网| h网址在线观看| 无码福利日韩神码福利片| 成人韩免费网站| 国产精品亚洲va在线观看| 8090午夜无码专区| 久久人人妻人人爽人人卡片av| 无码aⅴ精品一区二区三区|