




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)講義
河北大學(xué)物理科學(xué)與技術(shù)學(xué)院
2016年3月
目錄
第一章系統(tǒng)組成
1-1總體結(jié)構(gòu)1-2實(shí)驗(yàn)與開發(fā)平臺(tái)
1-351/98單片單板1-4實(shí)驗(yàn)開發(fā)軟件
i-5
第二章SAC-MT熨驗(yàn)與開發(fā)平臺(tái)
2-1組成和結(jié)構(gòu)2-2電源
2-3輸入裝置2-4信號(hào)源
2-5輸出裝置2-6邏輯測(cè)試儀
2-7傳感器與檢測(cè)電2-8傳感器與電機(jī)電路
第三章SAC-51/98單片單板機(jī)硬件
3-1單片單板機(jī)組成3-2存儲(chǔ)器
3-3串行接口3-4擴(kuò)展引出接口
3-5安裝
第四章SAC-5198單片單板機(jī)監(jiān)控
4-18031/8098本機(jī)監(jiān)控命令4-28031本機(jī)監(jiān)控調(diào)用
4-38031CRT監(jiān)控程
第五章PC機(jī)上使用的軟件
5-1編輯5-2匯編
5-3反匯編5-4通信
5-5反通信5-6調(diào)試
5-7BASIC(或用戶狀態(tài))
第六章單片機(jī)原理實(shí)臉
6-1鍵盤操作6-2數(shù)據(jù)傳送實(shí)驗(yàn)
6-3多字節(jié)加法實(shí)驗(yàn)6-4雙字節(jié)乘法
6-5代碼轉(zhuǎn)換16-6代碼轉(zhuǎn)換2
6-7數(shù)據(jù)處理實(shí)驗(yàn)6-8數(shù)據(jù)排序?qū)嶒?yàn)
6-9查表程序?qū)嶒?yàn)6-10定時(shí)器實(shí)驗(yàn)
6-11中斷實(shí)驗(yàn)6-12電子時(shí)鐘實(shí)驗(yàn)
第七章接口技術(shù)實(shí)驗(yàn)
7-1可編程I/O接口電路8255應(yīng)用試驗(yàn)7-2串行通信實(shí)驗(yàn)
7-3顯小器實(shí)驗(yàn)7-4鍵盤實(shí)驗(yàn)
7-5直流電機(jī)測(cè)速實(shí)驗(yàn)7-6模擬電梯控制實(shí)驗(yàn)
7-7步進(jìn)電機(jī)控制實(shí)驗(yàn)7-88279顯示實(shí)驗(yàn)
7-9單片機(jī)與上位機(jī)的通信7-10溫度'光敏'力敏檢測(cè)
7-11A/D轉(zhuǎn)換實(shí)驗(yàn)7-12D/A轉(zhuǎn)換實(shí)驗(yàn)
第八章SAC-51/98單片單板機(jī)操作使用說明
8-1開機(jī)步驟8-2鍵盤操作說明
第一章系統(tǒng)組成
§1—1總體結(jié)構(gòu)
SAC—51/98單片機(jī)實(shí)驗(yàn)與開發(fā)集成系統(tǒng)是由兩大部分組成。51/98
單片機(jī)是一單板式結(jié)構(gòu),元件布局緊湊合理,8位8段數(shù)碼顯示器在單片機(jī)
右上角,25個(gè)鍵碼按鍵,主機(jī)板采用熱風(fēng)整平制板工藝制作,I/。及控制
信號(hào)引出插座通過60線扁平電纜與實(shí)驗(yàn)開發(fā)平臺(tái)相聯(lián)接。實(shí)驗(yàn)與開發(fā)平臺(tái)
結(jié)構(gòu)新頻、樣式美觀,上面有25個(gè)實(shí)驗(yàn)與開發(fā)經(jīng)常用到的功能單元。51/
98單片機(jī)與實(shí)驗(yàn)開發(fā)平臺(tái)構(gòu)成一個(gè)完整的實(shí)驗(yàn)與開發(fā)集成系統(tǒng)。
§1—2實(shí)驗(yàn)與開發(fā)平臺(tái)
實(shí)驗(yàn)與開發(fā)平臺(tái)采用新型的PVC面板,明亮耐磨,電氣絕緣性能好,
該實(shí)驗(yàn)與開發(fā)平臺(tái)最顯著的技術(shù)特點(diǎn)是除具備通用的常規(guī)典型的電路模塊
外,還具有一些最新穎常用的微電子線路中的多個(gè)功能模塊。做測(cè)控方面的
應(yīng)用和實(shí)驗(yàn),只需插上相應(yīng)的檢測(cè)元件即可。另一特點(diǎn)是通用性。其通用性
是來源多種總線插口及巧妙布局。
§1-3實(shí)驗(yàn)與開發(fā)軟件
SAC—51/98單片機(jī)實(shí)驗(yàn)與開發(fā)集成系統(tǒng)軟件形象直觀且易于掌握,
在組合軟件的主菜單中同時(shí)可選51系統(tǒng)程序或98系統(tǒng)程序,并可選高級(jí)
語(yǔ)言BASIC或用戶狀態(tài),以做為單片機(jī)與上位機(jī)(PC機(jī))聯(lián)機(jī)測(cè)控監(jiān)視及圖
形顯示等,向用戶提供六十多個(gè)實(shí)驗(yàn)及應(yīng)用程序,有些稍加改動(dòng)即可做為實(shí)
際開發(fā)應(yīng)用程序。實(shí)驗(yàn)教師可根據(jù)課程的內(nèi)容和進(jìn)展情況,選擇其中任一程
序做為實(shí)驗(yàn)內(nèi)容,無須做修改和調(diào)試,便可得到滿意的實(shí)驗(yàn)效果。
所有系統(tǒng)軟件連同實(shí)驗(yàn)及應(yīng)用程序都存放在磁盤內(nèi)。
§1—4機(jī)箱
機(jī)箱采用對(duì)折式可拆卸的高級(jí)鋁合金機(jī)箱/普通木制機(jī)箱,可前后對(duì)
開,也可左右擺放。
第二章SAC—MT實(shí)驗(yàn)與開發(fā)平臺(tái)
§2—1SAC—MT實(shí)驗(yàn)與開發(fā)平臺(tái)的組成和結(jié)構(gòu)
SAC—MT實(shí)驗(yàn)與開發(fā)平臺(tái)為單板式結(jié)構(gòu)。A型裝在一個(gè)28cmx20cm
x7cm的普通木制機(jī)箱內(nèi);B型裝在一個(gè)41cmx30cmx16cm的高級(jí)航空鋁
箱內(nèi)。
§2—2電源
1.BS型實(shí)驗(yàn)與開發(fā)平臺(tái)配直流電源電纜和接線插座,可選外接或PC
主機(jī)電源。電源要求+5V不低于1.5A、-5V、±12V不低于100mA。
2.B型實(shí)驗(yàn)與開發(fā)平臺(tái)內(nèi)置開關(guān)電源。開關(guān)電源提供+5V/2.5A、
+12V/1A、-5V/0.3A、-12V/0.3A的直流電。當(dāng)220V、50Hz交流電接通
時(shí),實(shí)驗(yàn)與開發(fā)平臺(tái)上電源和傳感器等檢測(cè)電路中標(biāo)有+5V、-5V、
+12V、-12V的引線插孔處均帶電,可作為電源供實(shí)驗(yàn)與開發(fā)使用。PC總
線插座上的電源是通過PC-PWR處的跨線引入的。SAC-51/98單片單板機(jī)
電源是由實(shí)驗(yàn)與開發(fā)平臺(tái)上的PC-PWR左端五腳插座通過跨線提供的。
注意:
▲電源中的PC-PWR插頭和插座出廠時(shí)是為PC總線提供的電源,做
單片單板機(jī)實(shí)驗(yàn)與開發(fā)時(shí),一定拔下。
▲如用A、BS型實(shí)驗(yàn)與開發(fā)平臺(tái),在外接電源前,一定要檢查電源的
好壞及電壓幅度,以防損壞實(shí)驗(yàn)與開發(fā)平臺(tái)的器件。
§2-3十六位二進(jìn)制輸入裝置
實(shí)驗(yàn)與開發(fā)平臺(tái)上有16只雙刀雙擲自鎖式按鈕開關(guān)KO-K15,配有與
之相應(yīng)的16個(gè)發(fā)光二極管指示和16個(gè)引線插孔(上排)。開關(guān)按下時(shí),相
應(yīng)發(fā)光二極管亮,插孔輸出高電平(已內(nèi)接上拉/限流電阻1K。至
+5V);開關(guān)抬起時(shí),相應(yīng)插孔輸出為低電平,指示燈滅。
注:十六位二進(jìn)制輸入裝置的雙刀開關(guān)有一刀未用,可與下排16個(gè)引
線插孔作為擴(kuò)展電源使用,出廠時(shí)已有布線焊盤。當(dāng)需要時(shí),把16根導(dǎo)
線的一端分別焊在16個(gè)引線孔左端(從焊接面看)的焊盤上,另一端焊在與
之對(duì)應(yīng)的開關(guān)最下面左端引腳,在9孔排電阻位置上焊接470歐的排電
阻。焊好之后,可在本輸入裝置下部左、右端引線插孔引入外部電源。這
時(shí),當(dāng)開關(guān)按下時(shí),16個(gè)引線插孔的電平與左下端輸入電平(從面板面看)
相同;當(dāng)開關(guān)抬起時(shí),16個(gè)引線插孔的電平與右下端輸入電平相同。
§2—4信號(hào)源
1.單脈沖信號(hào)源
實(shí)驗(yàn)與開發(fā)平臺(tái)標(biāo)有“一u—”和〃_n_”的兩個(gè)引線插孔為單脈沖輸出
端,復(fù)位按鈕為單脈沖產(chǎn)生按鈕,每按一次,由單穩(wěn)態(tài)電路輸出一個(gè)固定寬
度的單脈沖。電路見圖
(1).脈沖寬度:10mS
⑵?輸出電平:TTL邏輯電平
(3).負(fù)載能力:IoL=7mA,Ioh=-0.3mA
2.連續(xù)脈沖信號(hào)源
實(shí)驗(yàn)與開發(fā)平臺(tái)上提供一個(gè)頻率和脈寬可調(diào)的脈沖信號(hào)源。AMA為頻
率調(diào)整旋鈕,改變頻率不影響脈寬;PWA為脈寬調(diào)整旋鈕,在10%~90%
范圍改變脈沖寬度不影響頻率。
(1).頻率范圍:300HZ-3KHz
⑵.輸出電平:TTL邏輯電平
(3).負(fù)栽能力:IoL=500mS,Ioh=-2mS
3.交流信號(hào)源
實(shí)驗(yàn)與開發(fā)平臺(tái)上提供一個(gè)頻率和幅度可調(diào)的正弦波交流信號(hào)源,F(xiàn)SA
為頻率調(diào)整旋鈕,DGA為幅度調(diào)整旋鈕。
(1).頻率范圍:1KHZ—15KHZ
(2).幅度范圍:0-5V(有效值)
4.二位8421撥碼盤
二位獨(dú)立的加/減式8421撥碼盤,公共端已接地,8個(gè)引線插孔為
8421碼輸出端,輸出端已內(nèi)接4.7K上拉電阻至+5V,故輸出為反碼(例
如,撥盤為5時(shí),輸出不是0101,而是1010),使用時(shí)請(qǐng)注意。電路見圖
3-2o
§2—5輸出裝置
1.十六位二進(jìn)制指示器
實(shí)驗(yàn)與開發(fā)平臺(tái)上有16只發(fā)光二極管及相應(yīng)驅(qū)動(dòng)電路,與之對(duì)應(yīng)的
DO—D1516個(gè)引線插孔為正邏輯信號(hào)輸入端,該輸入端為高電平時(shí)
發(fā)光二極管亮。上排16個(gè)引線插孔為負(fù)邏輯信號(hào)輸入端,該輸入端為低電
平〃0〃時(shí)發(fā)光二極管亮。
2.四位八段數(shù)碼顯示器
實(shí)驗(yàn)與開發(fā)平臺(tái)上有四位八段碼顯示器及驅(qū)動(dòng)電路,其工作方式為動(dòng)態(tài)
掃描式,各引線插孔L0-L3為各顯示器位選信號(hào)公共端,輸入端為高電平
時(shí)有效,所有顯示器的同名端(段選信號(hào))全部并聯(lián),引線插孔a—h為
顯示器段選信號(hào)的輸入段,輸入端為〃0〃時(shí)有效,位選與段選信號(hào)均已帶
驅(qū)動(dòng)電路。電路見圖3-3。
3.蜂鳴器
實(shí)驗(yàn)與開發(fā)平臺(tái)的蜂鳴器和驅(qū)動(dòng)電路工作于開關(guān)方式,SP引線插孔為
信號(hào)輸入端,當(dāng)有音頻信號(hào)輸入時(shí),蜂鳴器發(fā)出蜂鳴聲,蜂鳴聲調(diào)隨輸入信
號(hào)頻率高低變化而不同。電路見圖3-4。
§2—6邏輯測(cè)試儀
實(shí)驗(yàn)與開發(fā)平臺(tái)的邏輯測(cè)試儀主要是對(duì)電平和脈沖信號(hào)進(jìn)行測(cè)試,P-L
引線插孔為信號(hào)輸入端。輸入電平為TTL,內(nèi)置驅(qū)動(dòng)電路。
1.電平測(cè)試功能
標(biāo)有LEVEL的發(fā)光二極管為雙色發(fā)光二極管,用于電平指示,能測(cè)試
下列功能。
⑴高電平:紅色
⑵低電平:綠色
⑶高阻或懸空:滅
每次輸入電平發(fā)生變化時(shí),脈沖指示器可能有閃亮。
2.脈沖測(cè)試功能
可完成單脈沖、連續(xù)脈沖和脈沖記憶測(cè)試功能。
⑴單脈沖測(cè)試:功能選擇按鈕PULSE/MEM按下,每來一個(gè)脈沖,脈
沖指示器閃亮一次,約0.5秒,同時(shí),電平指示器指示常態(tài)電平。
⑵連續(xù)脈沖測(cè)試功能選擇按鈕按下,脈沖指示器連續(xù)閃亮,當(dāng)輸入信
號(hào)頻率較高時(shí),指示器按固定頻率閃亮,同時(shí)電平指示器指示平均電平。
⑶脈沖記憶測(cè)試:功能選擇按鈕抬起,只要輸入一個(gè)或一個(gè)以上的脈沖,
脈沖指示器就亮,并一直保持,若要清除,轉(zhuǎn)入其它方式即可。
§2—7傳感器與檢測(cè)電路
1.橋式電路
實(shí)驗(yàn)與開發(fā)平臺(tái)上的2個(gè)橋式電路,上面的已與+5V和GND連接,下
面的Vs+和Vs-引線插孔可根據(jù)實(shí)驗(yàn)與開發(fā)的需要外加電壓,橋式電路可選
單橋/平衡橋工作方式,當(dāng)傳感器和電阻插入相應(yīng)的引線插孔時(shí),可進(jìn)行溫
敏/光敏等傳感器實(shí)驗(yàn)。
2.數(shù)字功率驅(qū)動(dòng)器
實(shí)驗(yàn)與開發(fā)平臺(tái)上有二組功率驅(qū)動(dòng)器模塊。每組功率驅(qū)動(dòng)器有4組與非
門電路,Vs+為電源引線插孔。芯片采用75452(OCL輸出),邏輯為
Y=A.B(與非)。
3.檢測(cè)、放大、運(yùn)算電路
實(shí)驗(yàn)與開發(fā)平臺(tái)上有二個(gè)檢測(cè)、放大、運(yùn)算電路。芯片采用
LM747O
工作電源已接±12V,當(dāng)RI、R2、R3、R4電阻的弓|線插孔插入不同電阻或
電容時(shí),可進(jìn)行單端/雙端檢測(cè)信號(hào)的放大和處理及運(yùn)算。
4.模擬功率驅(qū)動(dòng)器
實(shí)驗(yàn)與開發(fā)平臺(tái)上有一個(gè)NPN型和一個(gè)PNP型的典型晶體管放大電
路,Vs+和Vs-為正、負(fù)/地電源電壓的引線插孔,Vi為輸入引線插孔,
Voc引線插孔為集電極輸出端,Voe引線插孔為發(fā)射極輸出端,當(dāng)RBL
RB2、Rc和Re引線插孔插入不同電阻時(shí),可進(jìn)行信號(hào)放大,功率放大和信
號(hào)跟隨。
出廠時(shí),NPN管為9013,PNP管為9012。
5.V/F轉(zhuǎn)換電路
實(shí)驗(yàn)與開發(fā)平臺(tái)上有一個(gè)壓頻轉(zhuǎn)換電路,Vs+和Vs■為正、負(fù)/地電源
電壓的引線插孔,Vi為直流信號(hào)輸入端,F(xiàn)為脈沖信號(hào)輸出端,芯片采用
LM331。電路見圖3?5。輸出頻率F與輸入電壓Vi的關(guān)系為:
F=k*(5.1+Rs)*Vi
式中K—常數(shù),與電路元件參數(shù)有關(guān)(出廠選K=70.36Hz/kQ.V)
Rs—外加電阻,變化阻值可調(diào)基準(zhǔn)頻率,一般取3KQ—10KQ
6.F/V轉(zhuǎn)換電路
實(shí)驗(yàn)與開發(fā)平臺(tái)上有一個(gè)頻壓轉(zhuǎn)換電路。Vs+和Vs-為正、負(fù)/地電源
電壓的引線插孔,F(xiàn)i為脈沖信號(hào)輸入端,Vo為直流信號(hào)輸出端,芯片采用
LM331。電路見圖3?6。輸出電壓與輸入頻率的關(guān)系為:
VO=K*Fi/(5.1+Rs)
式中K一常數(shù),與電路元件參數(shù)有關(guān)(出廠選K=14.21V.KQ/Hz)
Rs—外加電阻,變化阻值可調(diào)基準(zhǔn)電壓,一般取3KQ—10KQe
7.直流光電耦合電路
實(shí)驗(yàn)與開發(fā)平臺(tái)上有一組四路光電耦合電路。Vsl為輸入信號(hào)的公共正
極引線插孔,Vs2為輸出信號(hào)的公共正極引線插孔,4個(gè)引線插孔K1-K4
為信號(hào)輸入端,與之對(duì)應(yīng)的C1-C44個(gè)引線插孔為輸出信號(hào)端,輸入地已
內(nèi)接,輸出地端為輸出地引線插孔。輸入限流電阻已內(nèi)接1K,輸出負(fù)載電
阻己內(nèi)接為1K,當(dāng)輸入為脈沖信號(hào)時(shí),對(duì)應(yīng)輸出端輸出同頻率的脈沖信
號(hào)。芯片為TLP521。
8.交流光電耦合電路/固態(tài)繼電器
實(shí)驗(yàn)與開發(fā)平臺(tái)上有一個(gè)交流光電耦合電路/固態(tài)繼電器,Vsl+為輸
入正極引線插孔,Vs2+為輸入交流信號(hào)源引線插孔(建議Vs2用本實(shí)驗(yàn)與開
發(fā)平臺(tái)提供的交流信號(hào)源,不要直接接220V交流電源),R1和R2為外加
限流電阻,Vi為輸入引線插孔,輸入工作電流為1mA—10mA,輸入信號(hào)
有效時(shí),可控硅導(dǎo)通。芯片為MOC3021。電路見圖3-7。例:Vsl+弓|入
+5V電源,Vs2+引入交流信號(hào)源輸出,R1和R2分別接1K電阻,輸入端
Vi引入16只雙刀雙擲開關(guān)K0-K15輸出插孔的任一輸出,輸出端V0接示
波器。當(dāng)選定開關(guān)K抬起時(shí),可控硅導(dǎo)通,V0輸出交流信號(hào),當(dāng)開關(guān)K按
下時(shí),可控硅截止,V0輸出為零。
§2-8傳感器與電機(jī)電路
傳感器與電機(jī)電路是一塊標(biāo)準(zhǔn)面包板尺寸的電路板。可固定在實(shí)驗(yàn)與開
發(fā)平臺(tái)的面包板布線區(qū)的位置。也可單獨(dú)和實(shí)瞼與開發(fā)平臺(tái)配合使用。其
中有壓敏傳感器、霍爾傳感器、直流電機(jī)和步進(jìn)電機(jī)。
1.壓敏傳感器:
壓敏傳感器標(biāo)稱電阻為120Qo傳感器與電機(jī)電路板上RP1和RP2引線
插孔為壓敏傳感器的輸出端,可接至實(shí)驗(yàn)與開發(fā)平臺(tái)上橋式電路的相應(yīng)橋
臂,電橋的其它三個(gè)橋臂可接120c電阻。當(dāng)按壓壓敏傳感器的彈簧片時(shí),
橋式電路的輸出隨其變化,實(shí)驗(yàn)中可經(jīng)運(yùn)算放大器放大后輸出。
2.直流電機(jī):
直流電機(jī)的額定電壓為3伏,傳感器與電機(jī)電路板上DR+和DR-引線
插孔為電壓輸入端?;魻杺鞲衅鳎ㄎ挥谟疑辖牵┯糜跍y(cè)量電機(jī)的轉(zhuǎn)速。+5V引
線端接實(shí)驗(yàn)與開發(fā)平臺(tái)的+5V電源,GND為接地引線插孔,OUT為霍爾傳
感器輸出引線插孔。在做計(jì)算機(jī)控制系統(tǒng)實(shí)驗(yàn)時(shí),直流電機(jī)為控制對(duì)象,霍
爾元件的輸出為轉(zhuǎn)速反饋信號(hào)。實(shí)驗(yàn)的典型電路如圖3-9。可在實(shí)驗(yàn)與平臺(tái)
上搭接。
3.步進(jìn)電機(jī):
步進(jìn)電機(jī)為雙繞組電機(jī),額定直流電壓為12伏,走一步的轉(zhuǎn)角為1.8
度,實(shí)驗(yàn)的典型電路如圖3-10。其中虛框內(nèi)的電路已在傳感器與電機(jī)電路
板內(nèi),只需在實(shí)驗(yàn)與開發(fā)平臺(tái)上搭接運(yùn)算放大器電路。
第三章SAC—51/98單片單板機(jī)硬件
§3-1單片單板機(jī)組成
SAC—51/98單片單板機(jī)硬件布局圖見圖4—1所示,它是一個(gè)CPU
為8031或8098的單片單板機(jī),如果插上8031芯片和運(yùn)行其監(jiān)控程序,
就是一個(gè)8031單片單板機(jī),倘若換上8098芯片和運(yùn)行8098的監(jiān)控程
序,就變成一臺(tái)8098單片單板機(jī)(不能同時(shí)插上兩塊CPU芯片),它由
、、并行口、
8031(8098)CPUsEPROMRAM(8255)A/D(0809).D/
A(0832)、鍵盤顯示器(8279)、串行口(MAX232)、復(fù)位電路和看門狗電路
組成。
§3-2存貯器
1.存貯器的組成
SAC-51/98機(jī)的存貯器包括地址碼8位鎖存器74LS373,地址譯碼器
74LS139。地址選擇開關(guān)SW2*3。讀寫控制電路和存貯器芯片
存貯器組成見隨機(jī)附圖。
EPROM27128,RAM6264O(FT-1)
2.低8位地址鎖存器
8031和8098芯片皆無內(nèi)部數(shù)據(jù)存貯器,工作時(shí)要外接存貯器,訪問外
部存貯器時(shí),8031用P0口作低8位地址和數(shù)據(jù)總線復(fù)用口,而8098則
用P3口為復(fù)用口,因此,必須用鎖存器將低8位地址予以鎖存。SAC-
51/98機(jī)選用74LS373作鎖存器。當(dāng)74LS373的使能端(G)為高電平時(shí),
其輸出(Q)跟隨輸入(D)端的變化而變。當(dāng)使能端(G)由高變?yōu)榈碗娖?它將
輸入狀態(tài)鎖住,直至下次使能端為高電平為止。在SAC-51/98機(jī)中將
8031(8098)的地址鎖存允許線(ALE)加到G端。用以控制鎖存地址低8位。
74LS373帶有三態(tài)輸出控制端(0C)。0C接高電平,輸出端QO-Q7呈高阻
狀態(tài),0C接低電平,QO-Q7處于輸出狀態(tài),作為地址鎖存,無需三態(tài),
將0C端直接接地。
3.地址譯碼器
SAC-51/98采用了兩種存貯器芯片EPROM和RAM.EPROM為
16K*8,用以存放程序,RAM有兩片。每片8K*8,用以存放程序或數(shù)據(jù),
EPROM地址安排在OOOOH-3FFFH,RAM安排在4OOOH-7FFFH。其
片選信號(hào)譯碼器選用74LS139,該機(jī)地址譯碼器只使用了雙四選一譯碼器
的一半.
按邏輯關(guān)系,地址為0000H-3FFFH時(shí),Y0輸出為低電平,它作為
EPROM(27128)的片選信號(hào)。地址為4OOOH-7FFFH時(shí),Y1輸出為低電
平,它作為RAM(6264)的片選信號(hào)。SAC-51/98機(jī)在YO、Y1接至I」
EPROM和RAM之間插入了一個(gè)開關(guān)SW2*3O此開關(guān)用于EPROM和
RAM的地址切換。
當(dāng)開關(guān)U15接到上方(左方),為機(jī)器正常工作情況,即Y0選27128,
Y1選6264,開機(jī)后8031(8098)自動(dòng)執(zhí)行EPROM中的程序。開始工作。
但是在用戶調(diào)試程序階段,或者是程序調(diào)試完畢試運(yùn)行時(shí),還不能給以固
化。而想在RAM中模擬在ROM中的運(yùn)行情況。SAC-51/98機(jī)考慮到了這
種要求。在線路設(shè)計(jì)時(shí)插入了U15開關(guān)。只要將U15開關(guān)按到下方。便將
RAM地址切換到0000H-3FFFH,而EPROM地址變?yōu)?000H-
7FFFH,這時(shí)啟動(dòng)機(jī)器,便自動(dòng)執(zhí)行RAM中的程序,利用此開關(guān),用戶還
可以外接仿真插頭,實(shí)現(xiàn)16K空間的訪真。
4.讀寫控制電路
8031的存貯器采用所謂哈佛結(jié)構(gòu)。它分程序存貯器與數(shù)據(jù)存貯器。而
8098則采用普林斯頓結(jié)構(gòu),它把程序和數(shù)據(jù)統(tǒng)一編址,SAC-51/98機(jī)為了
將這兩種不同的存貯器和數(shù)據(jù)存貯器改造成統(tǒng)一編址結(jié)構(gòu)。而用了把讀命
令統(tǒng)一起來的辦法。在圖中把8031的程序選通有效信號(hào)(/PSEN)與讀控
制信號(hào)(/RD)相與后形成統(tǒng)一的讀信號(hào),這時(shí)讀程序和讀數(shù)據(jù)便按地址來區(qū)
分了,不僅把8031的程序與數(shù)據(jù)信號(hào)組合到一起,而且把8098的讀信號(hào)
(/RD)通過第二級(jí)"與“門結(jié)合到一起。這三個(gè)信號(hào)中有一個(gè)有效,輸出/RD
便有效。
當(dāng)選用8031工作時(shí),8098的讀信號(hào)是懸浮的。為了打開第二級(jí)”與“門
電路,它經(jīng)一電阻接高電平VCCO
5.存貯器
(1)EPROM(27128)
27128是一16K*8的紫外線擦除電可編程只讀存貯器。單一+5V供電,
工作電流100mA,維持電流40mA。可用于12MHz的單片機(jī)系統(tǒng)。
(2)RAM(6264)
6264是8K*8位靜態(tài)隨機(jī)存貯器芯片,典型存取時(shí)間200ns。
SAC-51/98機(jī)用了兩片6264,組成了16K*8存貯器,兩片6264用地
址A13和片選線CE1進(jìn)行邏輯組合后產(chǎn)生CS1和CS2片選信號(hào)。使6264
共占用4OOOH-7FFFH
它專門用來管理鍵盤和顯示器,SAC-51/98機(jī)采用該器件。它本身可以
產(chǎn)生對(duì)
§3-3串行接口
8031和8098內(nèi)部都設(shè)有串行接口。SAC-51/98為了實(shí)現(xiàn)單片單板機(jī)與
上位計(jì)算機(jī)或其它設(shè)備進(jìn)行通訊。在片外接有一RS-232串行接口轉(zhuǎn)換器,
采用MAX232芯片,其電路見隨機(jī)附圖(FT-3)。
(1)MAX232芯片
MAX232為一新型RS-232轉(zhuǎn)換芯片,它可以實(shí)現(xiàn)TTL電平與RS-232
電平轉(zhuǎn)換。MAX232內(nèi)部有電壓倍增電路和轉(zhuǎn)換電路,僅需+5V電流便可
以工作。MAX232把8031、8098的TXD和RXD端TTL/CMOS電平(0-
5V)轉(zhuǎn)換成RS-232的電平(+10V-10V)。
(2)串行口通訊電纜的聯(lián)接
當(dāng)需要串行通訊時(shí),事先聯(lián)接好串行通訊電纜。一般PC機(jī).286.386等機(jī)
型上都有COM1(3F8H)和COM2(2F8H)兩個(gè)串行口。當(dāng)與系統(tǒng)配合使用
時(shí),可接至任一串行口,因系統(tǒng)對(duì)于兩個(gè)串行口備有相應(yīng)的串行通訊的程
序。另外串行電纜的兩端要聯(lián)接牢靠,在通訊操作之前要先檢查是否聯(lián)接完
好。
§3-4擴(kuò)展引出接口
SAC-51/98單片單板機(jī)系統(tǒng)其顯著的特色之一是為系統(tǒng)配量了一套實(shí)驗(yàn)
開發(fā)平臺(tái),即把所有與應(yīng)用操作,實(shí)驗(yàn)開發(fā)有關(guān)的各種控制、檢測(cè)。輸出信
號(hào)通過扁平電纜引至實(shí)驗(yàn)開發(fā)平臺(tái)。這樣就可在非常接近實(shí)際應(yīng)用的環(huán)境中
做各類實(shí)驗(yàn),應(yīng)用開發(fā)等。下面給出本機(jī)所有外接插口上的引腳,對(duì)應(yīng)信號(hào)
及其說明。
1.JP1:電源插座(單排5針)
這一電源插座的另一端引自實(shí)驗(yàn)開發(fā)平臺(tái)的開關(guān)電源。引出+5V、-5V、
ND,排例順序如下:
-5V-----------1
-------2
GND-----------3
-------4
+5V-----------5
2.JP2:擴(kuò)展I/O口引腳插座(雙排34針)
這一插座引出的信號(hào)為8255的PA、PB、PC三個(gè)I/O口,及INTO、
INTI.VCC、GND和P1.5。這一插座的設(shè)置主要是用于EPROM寫入器。
通過聯(lián)接電纜接至EPROM寫入板。
3JP3:系統(tǒng)總線引出口(雙排40針)
當(dāng)需要系統(tǒng)總線的信號(hào)或要針對(duì)8031(8098)本身的I/O端口開發(fā)利用時(shí),
可將此信號(hào)用扁平電纜引至實(shí)驗(yàn)開發(fā)平臺(tái)的AT總線插座的下半部分。引出
的信號(hào)有:D0-D7;A0-A15;RD、WR、X2、RESET、ALE、Y2、ESEN和
GND(8031,8098的所有并行I/O端口)。
4.JP5:串行通訊口插座(單排4針)
1234
空T1OVTRUNGND
5.JP8:單步邏輯插針(單排3針)
123
空INTOGND
INTO:8031外中斷O輸入端,也是8098外部中斷輸入端EXTINTO
正常操作時(shí)用短路子將JP8的2,3端短接,當(dāng)要進(jìn)入DEBUG狀態(tài)時(shí)則
將1,2端短接。
6.JP14:掉電保護(hù)轉(zhuǎn)換(單排3針)
123
BT16264VCC
當(dāng)需要掉電保護(hù)時(shí),將1,2端用短路塊短接。反之將2。3端短接。
7JP60:I/O接口信號(hào)插座(雙排60針)
這一插座引出了除數(shù)據(jù)線、地址線以外幾乎全部的輸入、輸出及各類接
口信號(hào)。通過60線扁平電纜引至實(shí)驗(yàn)開發(fā)平臺(tái),并有信號(hào)的標(biāo)識(shí)符,引用
時(shí)很方便,詳見隨機(jī)附圖(FT-4)。
§3—5安裝
在SAC-51/98單片機(jī)實(shí)驗(yàn)與開發(fā)集成系統(tǒng)中,單片機(jī)部分安裝在箱
體開啟的上方,用螺釘固定,JP1為單片機(jī)電源插座,通過直流電源線與實(shí)
驗(yàn)開發(fā)平臺(tái)上直流電源相連接,安裝時(shí)請(qǐng)注意直流電源的種類和極性,JP5
為串行口插座,連接串行口電纜時(shí)請(qǐng)不要直接撥插,而應(yīng)用手捏緊電纜的端
頭彈簧片,以防不慎造成損壞;JP60插座通過扁平電纜連接至實(shí)驗(yàn)開發(fā)平
臺(tái),如無必要,平時(shí)避免頻繁撥插。高級(jí)航空鋁箱體內(nèi)置開關(guān)電源,使用時(shí)
只須外接交流220V即可。
SAC-51/98地址空間分配表4-2
III74LS139|||
|地址范圍|A15A14A13A12AllA10A9|輸出|選通器件|容量|
|0000-3FFF|LLXXXXX|Y0127128|16K|
|4000-5FFF|LHLXXXX|Y116264-1|8K|
|6000-7FFF|LHHXXXX|Y1|6264-1|8K|
|8000~BFFF|HLXXXXX|Y2|未用116Kl
|C000?C1FF|HHXXXLL|Y3-Y1018255|512B|
|C800~C9FF|Illi
|DOOO-D1FF|I||512*81
|D800~D9FF||111
|EOOO~E1FF|1111
|E800-E9FF|1111
|FOOO-F1FF|1111
|F800~F9FF|1111
111
111111
|C200-C3FF|HHXXXLH|Y3-Y1118279|512B|
|CA00~CBFF||||512*8|
III
111111
|C400-C5FF|HHXXXHL|Y3-Y12|0809|512B|
|CC00-CDFF||111
1.111|512*8|
III
111111
|C600-C7FF|HHXXXHH|Y3-Y13|0832|512B|
|CEOO-CFFF||111
1.111|512*8|
1
第四章SAC—51/98單片單板機(jī)監(jiān)控
SAC—51/98監(jiān)控程序包括8031本機(jī)監(jiān)控、CRT監(jiān)控和8098本機(jī)
監(jiān)控、CRT監(jiān)控兩套4部分。它們分別用MCS—51和MCS—96兩種匯編
語(yǔ)言編寫,并全部固化在一片27128EPROM芯片上,其中8031本機(jī)監(jiān)控
占用了存儲(chǔ)空間0000H—OFFFH4K字節(jié),CRT監(jiān)控占用了1000H—
1900H的2.3K字節(jié),8098本機(jī)監(jiān)控占用了存儲(chǔ)空間2000H—2FFFH4k
字節(jié),其CPT監(jiān)控占用了3000H-3900H約2.3K字節(jié)。4部分共占用了
13K字節(jié),另外,在1A00H—1FFFH和3A00H—3FFFH單元中分別存放
了有51和98兩部分的新增功能模塊,即27128的容量基本被占用。
除以上地址空間外,監(jiān)控程序還使用了外部RAM部分單元,作數(shù)據(jù)暫
存區(qū)和內(nèi)部RAM映象區(qū)。這些單元從7E00H—7FFFH,共512字節(jié),用
戶注意不要隨便占用它們。
另外,監(jiān)控程序還使用了片內(nèi)RAM2FH—3FH及77H—7FH單元,以
上單元占用情況如下
列表:
8031占用片內(nèi)RAM單元及使用情況如下:
2FH:監(jiān)控標(biāo)志單元,位地址為78H—7FH,其中作用如下:
78H:為1表示監(jiān)控處于待命狀態(tài)1
79H:為1表示數(shù)據(jù)塊操作時(shí)源數(shù)據(jù)首地址已輸入
7AH:為1表示數(shù)據(jù)塊操作時(shí)源數(shù)據(jù)末地址已輸入
7BH:為1表示至少已執(zhí)行過一次單步
7CH:為1表示操作不合法
7DH:為1表示監(jiān)控操作進(jìn)如插入,刪除狀態(tài)
7EH:為1表示CRT監(jiān)控單步中斷
7FH:為1表示監(jiān)控進(jìn)入存儲(chǔ)器讀寫狀態(tài)
30H—32H:保留未用
33H:保存單步調(diào)試時(shí)選擇的內(nèi)部寄存器地址
34—36H:段點(diǎn)運(yùn)行工作寄存器
37H:存放D/A轉(zhuǎn)換的數(shù)字量
38H:存放A/D轉(zhuǎn)換的結(jié)果
39H:存放A/D轉(zhuǎn)換通道號(hào)
3AH:數(shù)據(jù)塊操作源首址低字節(jié)
3BH:數(shù)據(jù)塊操作源首址高字節(jié)
3CH:數(shù)據(jù)塊操作源末址低字節(jié)
3DH;數(shù)據(jù)塊操作源末址高字節(jié)
3EH:數(shù)據(jù)塊操作目的首址低字節(jié)或執(zhí)行程序時(shí)起始地址低字節(jié)
3FH:數(shù)據(jù)塊操作目的首址高字節(jié)或執(zhí)行程序時(shí)起始地址高字節(jié)
77H—7EH:被顯示數(shù)據(jù)的暫存單元,即顯示緩沖區(qū)
7FH:斷點(diǎn)設(shè)置計(jì)數(shù)單元
§4—18031/8098本機(jī)監(jiān)控命令
8031/8098本機(jī)監(jiān)控程序的使用與操作是通過鍵盤進(jìn)行的。此鍵盤有
25個(gè)按鍵,其中16個(gè)數(shù)字鍵、8個(gè)命令鍵和一個(gè)復(fù)位鍵。
監(jiān)控程序提供的功能有18種。用8個(gè)命令鍵選擇18個(gè)功能,顯然命令
鍵不夠用。為此,采取了兩個(gè)措施:一是每個(gè)鍵具有多個(gè)功能,用換檔的形
式預(yù)以區(qū)分。待命狀態(tài)。與待命狀態(tài)1就是換喈操作。待命狀態(tài)。是第一
功能,待命狀態(tài)1是第二功能;二是采用多鍵復(fù)合表示,即多個(gè)按鍵結(jié)合起
來表示不同的功能。
各功能鍵說明如下:
EXA:在存儲(chǔ)器讀寫和插入、刪除狀態(tài)下為存儲(chǔ)器加1檢查鍵,在待命狀
態(tài)0下為斷點(diǎn)檢查鍵,在待命狀態(tài)1下進(jìn)入EPROM固化操作。
RDS:在存儲(chǔ)器讀寫狀態(tài)下為減1檢查鍵,在插入、刪除狀態(tài)下為刪除
鍵,在斷點(diǎn)檢查狀態(tài)下為斷點(diǎn)刪除鍵,在待命狀態(tài)1下,為接收PC機(jī)數(shù)據(jù)
等待鍵。
WRI:在存儲(chǔ)器讀寫狀態(tài)下為寫入鍵,在插入、刪除狀態(tài)下為插入鍵,在
待命狀態(tài)0下為斷點(diǎn)設(shè)置鍵,在斷點(diǎn)檢置狀態(tài)下為斷點(diǎn)修改鍵,在待命狀態(tài)
1下為發(fā)送數(shù)據(jù)到PC機(jī)鍵。
MOV:待命狀態(tài)0下為數(shù)據(jù)塊復(fù)制鍵,待命狀態(tài)1下為E2PROM編程
鍵。
EXE:待命狀態(tài)0下為連續(xù)執(zhí)行程序鍵,待命狀態(tài)1下為單步或斷點(diǎn)執(zhí)行
鍵。
MON:進(jìn)入待命狀態(tài)。鍵。
USE:進(jìn)入待命狀態(tài)1鍵。
由以上說明可看出,各鍵根據(jù)監(jiān)控處于不同的狀態(tài),分別對(duì)應(yīng)不同的功
能,用戶在使用時(shí),首先應(yīng)熟悉如何進(jìn)入各個(gè)狀態(tài)以及在不同狀態(tài)下顯示器
上的顯示方式,方能正確理解監(jiān)控程序。
1.待命狀態(tài)0:在監(jiān)控處于任何狀態(tài)下,只要按下MON鍵,都將返回到
待命狀態(tài)0,并且在顯示器上顯示提示符叩”。
2.存儲(chǔ)器讀寫狀態(tài):在待命狀態(tài)0時(shí),輸入地址后,按下EXA鍵,顯示器
的左邊4位顯示該地址,接下去兩位顯示該地址單元內(nèi)的數(shù)據(jù),表明已進(jìn)入
存儲(chǔ)器讀寫狀態(tài)。
3.插入、刪除狀態(tài):在存儲(chǔ)器讀寫狀態(tài)時(shí),按下“USE”鍵,顯示器左邊一
位上的小數(shù)點(diǎn)被點(diǎn)亮,表明進(jìn)入了插入、刪除狀態(tài)。在此狀態(tài)下,可進(jìn)行
存儲(chǔ)器數(shù)據(jù)插入和刪除操作,在按MON鍵后,退回到存儲(chǔ)器讀寫狀態(tài)。
4.斷點(diǎn)檢查狀態(tài):在待命狀態(tài)0時(shí),直接按下EXA鍵,如果已設(shè)置有斷
點(diǎn),則在顯示器左邊四位上顯示第1個(gè)斷點(diǎn)的地址,從左至右第6個(gè)LED
顯示塊上顯示該斷點(diǎn)的序號(hào)。表明已處于斷點(diǎn)檢查狀態(tài),可進(jìn)行斷點(diǎn)檢查、
修改和刪除操作。如果沒有設(shè)置斷點(diǎn),則左邊四位顯示0000,第6位也顯
示
5.待命狀態(tài)1:除存儲(chǔ)器讀寫狀態(tài)外,在其它任何監(jiān)控狀態(tài)下,按下
"USE”健,都將返回到待命狀態(tài)1,顯示器上顯示提示符“PJ。
多個(gè)按鍵組合起來使用可完成監(jiān)控程序的功能。即:
1.存儲(chǔ)器數(shù)據(jù)輸入
2.存儲(chǔ)器減1檢查
3.存儲(chǔ)器加1檢查
4.插入一字節(jié)數(shù)據(jù)
5.刪除一字節(jié)數(shù)據(jù)
6.連續(xù)執(zhí)行程序
7.斷點(diǎn)設(shè)置
8.斷點(diǎn)檢查
9.斷點(diǎn)刪除
10.斷點(diǎn)修改
11.單步執(zhí)行程序
12.斷點(diǎn)方式執(zhí)行程序
13.多操作數(shù)設(shè)置鍵
14.存儲(chǔ)器數(shù)據(jù)復(fù)制
15.向PC機(jī)發(fā)送數(shù)據(jù)
16.接收PC機(jī)的數(shù)據(jù)
17.EPR0M固化
18.E2PROM固化
§4—28031本機(jī)監(jiān)控調(diào)用
上電復(fù)位初始化程序
1.掃描鍵盤KEY_SCAN子程序
始末地址:0109H~010FH。
入口參數(shù):無
出口參數(shù):A=0無腱按下,A><0有鍵按下。
功能:判斷有無鍵按下。
2.關(guān)閉顯示器子程序OFF-DISP
始末地址Q960H~O972H.
入口參數(shù):無
出口參數(shù):完成任務(wù)返回功能:將顯示緩沖區(qū)7EH77H置成16H(顯示
全黑)。
3.顯示子程序DISPLAY
始末地址
:017HOIB5Ho
入口參數(shù):顯示緩沖區(qū)7EH77H中放有顯示內(nèi)容。
出口參數(shù):顯示器上顯示7EH77H單元中的內(nèi)容。
功能:將顯示緩沖區(qū)(7EH77H)內(nèi)容顯示在顯示器上,在插入,刪除狀
態(tài)下,地址碼最高位小數(shù)點(diǎn)點(diǎn)亮。
§4—38031CRT監(jiān)控程序
8031CRT監(jiān)控程序,就是利用PC機(jī)開發(fā)調(diào)試SAC-51/98型機(jī)存貯器
內(nèi)程序的一個(gè)監(jiān)控程序。所謂CRT監(jiān)控程序就是裝在SAC-51/98機(jī)上
27128EPROM內(nèi),接收PC機(jī)發(fā)出的命令,執(zhí)行PC機(jī)發(fā)出的命令,并把
結(jié)果發(fā)回PC機(jī)的程序。
本節(jié)就來介紹8031CRT監(jiān)控程序的功能。
本監(jiān)控程序是配合上位機(jī)的DEBUG功能,用上位機(jī)的CRT顯示和鍵盤
控制本機(jī)操作,實(shí)現(xiàn)程序輸入、修改、查看以及執(zhí)行等功能,用上位機(jī)的
CRT顯示和鍵盤控制本機(jī)操作,它用MCS-51匯編語(yǔ)言編寫。
進(jìn)入CRT監(jiān)控程序有兩種方法:一是在本機(jī)監(jiān)控狀態(tài)下,直接輸入DRT監(jiān)
控程序的首地址“1000H“后按“EXE”鍵,即開始連續(xù)運(yùn)行CRT監(jiān)控程序。另
一種方法是將8031P3.1腳(即INTO輸入端)懸空,然后上電或按下復(fù)位鍵
使8031復(fù)位,系統(tǒng)即能自動(dòng)進(jìn)入CRT監(jiān)控程序。
本程序由兩大部分組成:一是初始化部分;二是命令處理部分,初始化的功
能如下:
Q)堆棧起始指針:50H;
(2)TMOD:#20H;定時(shí)器1方式2
(3)THl:#0DD;
(4)TL1:#ODD;波特率600BIT/S
(5)PCON:#80H;波特率加倍,為120BIT/S
(6)SCON:#0D2H;串行口方式3,啟動(dòng)接收
(7)工作寄存器組選為0區(qū)
設(shè)置完有關(guān)參數(shù)以后,向PC機(jī)發(fā)回車、換行符,再發(fā)#號(hào),在PC機(jī)的
CRT上顯示出#號(hào),等待PC機(jī)發(fā)出命令和參數(shù)。
PC機(jī)發(fā)出命令和參數(shù)后,監(jiān)控判斷命令字符,然后轉(zhuǎn)入相應(yīng)的命令處理
模塊。
下面介紹一下L_CMD模塊的作用。
L.CMD顯示命令處理模塊
本命令為顯示給定地址(包括給定地址)之間的存貯器單元內(nèi)容。
PC機(jī)發(fā)出命令的格式如下:
LaddlzLadd2
addl和add2為地址碼,addl為內(nèi)存首地址,add2為末地址,目
addl<add2,否則出錯(cuò)。
(一)L_CMD模塊的功能
I.向PC機(jī)發(fā)回兩地址之間的所有單元的內(nèi)容。
2.向PC機(jī)上顯示格式為:每一行開始顯示本行第一個(gè)字節(jié)所在地址,接
下去是連續(xù)顯示以后各單元的內(nèi)容,內(nèi)容與內(nèi)容之間隔有空格。
3.當(dāng)一行地址增加到末位為0時(shí),另起一行顯示。
(-)L_CMD模塊調(diào)用的子程序
1.0UT.CHAR發(fā)送顯示一個(gè)字符子程序
始末地址:10CEH-10D6Ho
入口參數(shù):將要發(fā)送的字符送入A。
出口參數(shù):在PC機(jī)CRT上顯示該字符。
功能:向PC機(jī)發(fā)送一個(gè)字符。
2.0UT_CR回車換行子程序
始末地址10D7H-10DFHo
入口參數(shù):無
出口參數(shù):在PC機(jī)CRT上將光標(biāo)回車換行。
功能:向PC機(jī)發(fā)送回車換行字符。
3.GETJZHAR讀取PC機(jī)發(fā)來的一個(gè)字符子程序
始末地址:10E0H-10FCHo
入口參數(shù):無
出口參數(shù):讀取字符存在A中。
功能:接收一個(gè)字符,變小寫為大寫,并向PC機(jī)發(fā)回該字符。
4.ASC_HEXASC碼變16進(jìn)制數(shù)子程序
始末地址:10FDH-110AH
入口參數(shù):要轉(zhuǎn)換字符存入Ao
出口參數(shù):轉(zhuǎn)換后的數(shù)存入A。
功能:把A中的ASC碼變成對(duì)應(yīng)的16進(jìn)制數(shù)。
5.GET.ADDR讀取地址子程序
始末地址:1119H-113FH。
入口參數(shù):用在有地址的命令之后。
出口參數(shù):將高位地址存60H單元,低位地址存61H單元。
功能:接收PC機(jī)發(fā)來的地址碼,并將它轉(zhuǎn)換成壓縮BCD碼存入60H、
61H。
6.LENGTH地址大小判斷子程序
始末地址:1597H-15B3H。
入口參數(shù):兩個(gè)地址分別存入60H61H、62H63HO
出口參數(shù):60H61H>62H63H.D5H位二0反之D5H位=1。
功能:比較兩個(gè)地址大小,設(shè)置標(biāo)志位D5H。
7.DIS_BYTE發(fā)送字節(jié)子程序
始末地址:146DH-147CHe
入口參數(shù):A中存有發(fā)送字節(jié)。
出口參數(shù):發(fā)完返回。
功能:以兩個(gè)16進(jìn)制數(shù)的形式向PC機(jī)發(fā)送當(dāng)前地址單元的內(nèi)容。
8.HEX_ASC十六進(jìn)制數(shù)換成ASCII字符子程序
始末地址:110BH-1118HO
入口參數(shù):A中存放欲轉(zhuǎn)換的16進(jìn)制數(shù)。
出口參數(shù):轉(zhuǎn)換ASC碼結(jié)果存入A。
功能:將16進(jìn)制數(shù)轉(zhuǎn)換成對(duì)應(yīng)的ASC碼。
9.DIS_ADDR發(fā)送地址子程序
始末地址:13B0H-13C9HO
入口參數(shù)彳寺發(fā)送的地址送入DPTR。
出口參數(shù):發(fā)送完返回。
功能以4位ASC碼形式發(fā)送DPTR內(nèi)的地址碼。
10.ERRO錯(cuò)誤提示子程序
始末地址:10B5H-10CDHe
入口參數(shù):無
出口參數(shù):發(fā)送回車換行符,再發(fā)ERRO?提示符。
功能:發(fā)送ERRO?提示符后,返回CMDHDLE.
第五章PC機(jī)上使用的軟件
為了提供在PC機(jī)等上位機(jī)上進(jìn)行51/98單片機(jī)程序的開發(fā)和調(diào)試,
SAC-51/98隨機(jī)帶有系統(tǒng)軟盤,分別用于51和98機(jī)。系統(tǒng)軟盤上有婦下
幾個(gè)軟件:
1.MCS-51.MCS-96匯編語(yǔ)言的匯編和反匯編程序,可以將匯編語(yǔ)言的
源程序匯編成目標(biāo)程序,或者將機(jī)器碼程序反匯編成匯編語(yǔ)言程序。
2.程序開發(fā)用編輯軟件。該軟件選用全屏幕編輯程序PE,用它可以將機(jī)
下編好的匯編語(yǔ)言源程序輸入PC機(jī)進(jìn)行編輯,待程序經(jīng)審食無誤后便可用
匯編程序?qū)⑵滢D(zhuǎn)換成機(jī)器碼。
3.DEBUG軟件,SAC-51/98機(jī)具有CRT監(jiān)控程序,即可在PC機(jī)CRT
屏幕上對(duì)單片機(jī)的程序進(jìn)行調(diào)試。DEBUG軟件將裝在PC機(jī)上的軟件與裝
在SAC-51/98的CRT監(jiān)控程序配合工作,實(shí)現(xiàn)CRT監(jiān)控操作的軟件。
4.SAC-51/98與PC機(jī)通訊軟件。該程序與裝在SAC-51/98監(jiān)控程序中
通訊軟件配合,可在SAC-51/98與PC機(jī)之間實(shí)現(xiàn)目標(biāo)程序的互相傳送。
5.SAC-51/98監(jiān)控程序清單。固化在27128中的監(jiān)控程序清單,也在上
述軟盤中提供一個(gè)副本。
對(duì)配有硬盤的PC機(jī),也可將上述軟盤上的軟件拷貝到硬盤上,在硬盤中
調(diào)用它。向硬盤上拷貝時(shí),建議拷到SAC子目錄下。
下面介紹一下這些軟件的使用方法。
PC機(jī)執(zhí)行MAIN軟件,屏幕上出現(xiàn)如下提示菜單:
1.EDIT-編輯
2.ASSEMBLE-匯編
3.REASSEMBLE-反匯編
4.C0MMUNICATION-通信
5.REC0MM-反通信
6.DEBUG-調(diào)試
7.BASIC/USER-上位機(jī)進(jìn)入BASIC(或用戶)狀態(tài)
8.EXIT-退回到DOS狀態(tài)
這時(shí)可以用數(shù)碼鍵或?qū)⒐鈽?biāo)移至某一菜單下按回車鍵,選擇不同的功能,
進(jìn)入該功能的子程序。
下面分別說明這些功能如何使用。
§5—1編輯(EDIT)
選擇此功能后,在MESSAGE窗口下方提示你輸入要編輯的文件名。輸
入文件名,按回車鍵后,表示系統(tǒng)進(jìn)入PE全屏幕編輯狀態(tài)。
按下回車鍵后,便可在屏幕上輸入你的源程序,進(jìn)行編輯。編輯命令輸入
與程序輸入由ESC鍵控制轉(zhuǎn)換。編輯完成后,可按F3鍵將源程序存入磁盤
退出編輯狀態(tài),進(jìn)入總菜單,然后繼續(xù)選擇其它功能,進(jìn)行工作。
§5—2匯編(ASSEMBLER)
匯編功能是苜蟋主菜單旁出現(xiàn)子菜單。
?MCS-51
用戶根據(jù)匯編語(yǔ)言的不同,可選擇不同的子菜單。
若選擇子菜單1,在MESSAGE窗口中出現(xiàn):
SOURE:
LIST:
OBJ
提示用戶輸入源文件名()、列表文件名()和目標(biāo)文件名()。
注意三個(gè)文件名都不能省略,否則不產(chǎn)生目標(biāo)文件。為方便以后的使用建
議將擴(kuò)展名帶上。輸完三個(gè)文件名后,再按回車鍵,則開始將源文件進(jìn)行匯
編,產(chǎn)生目標(biāo)代碼,屏幕上顯示:
MCS-51ASSEMBLERVERSION01.10
MCS-51ASSEMBLERPASS1
MCS-51ASSEMBLERPASS2
若全部匯編完后無錯(cuò)誤,則顯示出所有標(biāo)號(hào)的匯編地址,接著顯示:
NOERRORS
OUTPUT>PRNORNOT?(Y/N)
選擇(Y/N)表示你是否將輸出的標(biāo)號(hào)地址和列表文件送打印機(jī)打印。如果
匯編出錯(cuò),則顯示錯(cuò)誤信息提示及總數(shù),接著顯示:
PRESSANYKEYTORETURNMAINMENU
按任意鍵后回到主菜單,你可選擇編輯命令對(duì)源文件進(jìn)行修改擴(kuò)展。出
錯(cuò)后,匯編程序會(huì)生成一個(gè)擴(kuò)展名為ERR的錯(cuò)誤文件,可由此文件查出出
錯(cuò)的行號(hào)以及錯(cuò)誤性質(zhì),以便進(jìn)行修改。
§5-3反匯編
此功能是將單片機(jī)的機(jī)器碼程序反匯編成匯編語(yǔ)言程序,便于閱讀和分析
該程序。
選擇此功能后,主菜單旁出現(xiàn)子菜單:
1.MCS-51
2.MCS-96
用戶根據(jù)需要可選擇相應(yīng)的子菜單。
選擇子菜單1后將決行MCS-51匯編語(yǔ)言的反匯編功能。
屏幕上出現(xiàn):
8051/8031/8751MIEROCOMPUTERDISASSEMBLERP1.31986-
OBJECTFILE:
要求用戶輸入目標(biāo)代碼文件名。在該文件中應(yīng)存放有用戶所需反匯編程序
的目標(biāo)碼,并且目標(biāo)代碼的存放格式應(yīng)符合QBJ文件的約定格式,即前四
個(gè)字節(jié)為程序的首地玨,緊接著四個(gè)字節(jié)為程序末地址,然后才是有效的機(jī)
器碼。
輸入正確的文件名后回車,系統(tǒng)即開始讀取文件中的目標(biāo)代碼。讀取完畢
后,屏幕上顯示:
ENDOFINPUTOBJECTFILE:****H-****H
接著顯示:
MESSAGEFILE:
提示用戶輸入信息文件名,該信息文件中存放的應(yīng)是有關(guān)目標(biāo)代碼的各種
信息,包括哪里是指令,哪里是數(shù)據(jù),哪里尚未識(shí)別等。該文件不能由用戶
編輯產(chǎn)生,而是在上一次對(duì)目標(biāo)文件反匯編后退出時(shí)自動(dòng)生成的。在反匯編
一個(gè)復(fù)雜的大程序時(shí),MESSAGE文件就特別有用。當(dāng)一次不能反匯編完整
個(gè)程序時(shí),可以在退出時(shí)產(chǎn)生一個(gè)MESSAGE文件,下次再進(jìn)入反匯編時(shí)將
該文件調(diào)入,隨后即可以接著上一次的工作繼續(xù)進(jìn)行,而不必重新開始。對(duì)
反匯編一個(gè)新的程序時(shí),則可以對(duì)該項(xiàng)提示忽略,直接回車即可。
接著屏幕上出現(xiàn)用戶即可以鍵入各種有效命令進(jìn)行反匯編工作。
該反匯編功能能夠識(shí)別順序指令、無條件轉(zhuǎn)移、條件轉(zhuǎn)移、轉(zhuǎn)子程序、返
回、簡(jiǎn)單的命令散轉(zhuǎn)和簡(jiǎn)單的數(shù)據(jù)表等,并提供一套命令給用戶定義目標(biāo)文
件中的特定數(shù)據(jù)格式等,使得反匯編過程中,用戶能夠參加進(jìn)來,提供正確
的格式,有效地將機(jī)器碼反匯編成匯編源程序,大大提高效率。
下面分別介紹有關(guān)的命令及格式。
1.A命令
命令格式為:-AADDRESS,LENGTH
其中。為任選項(xiàng);ADDRESS為命令開始有效的十六進(jìn)制地址,LENGTH
為指定的長(zhǎng)度,若缺省則取15。初始地址指針值為目標(biāo)文件中指定的起始
地址,命令執(zhí)行完后當(dāng)前地址指針值為ADDRESS+LENGTH。下面的B、
C、D、I、L、N、S、T、W、T命令的命令格式以及缺省項(xiàng)的含義與A命
令都相同,后面就不再重復(fù),請(qǐng)讀者注意。
命令把ADDRESS開始的LENGTH字節(jié)作為地址顯示。
若有任選項(xiàng)"一,則反匯編程序?qū)⒂涀∵@些字節(jié)已被定義成“地址”,直到
再次用其它命令改變它們。
2.B命令
命令把從ADDRESS開始的LENGTH個(gè)字節(jié)作為十六進(jìn)制數(shù)據(jù)字節(jié)顯示
出來。若有任選項(xiàng)則反匯編程序記住這些字節(jié)已被定義為“十六進(jìn)制數(shù)
據(jù)”。直到再次用其它命令改變?yōu)橹埂?/p>
3.C命令
該命令把從ADDRESS開始的LENGTH個(gè)字節(jié)作為〃字符〃顯示出來,
若有任選項(xiàng)”」,則程序?qū)⒂涀∵@些字節(jié)已被定義成"字符"形式
4.D命令
該命令把從ADDRESS開始的LENGTH個(gè)字節(jié)作為十進(jìn)制數(shù)據(jù)字節(jié)顯示
出來,若有任選項(xiàng)”」,則程序?qū)⒂涀∵@些字節(jié)被定義成”十進(jìn)制數(shù)據(jù)”形式。
5.1命令
該命令從ADDRESS開始顯示LENGTH條指令,若有任選項(xiàng)"」,則程序
將記住這些字節(jié)是“指令”。
6.L命令
該命令在ADDRESS處設(shè)置一個(gè)標(biāo)號(hào)(LABLE),反匯編程序?qū)⒂涀∵@個(gè)標(biāo)
號(hào)。
7.N命令
該命令把從ADDRESS開始的LENGTH個(gè)字節(jié)作為十進(jìn)制數(shù)據(jù)字節(jié)顯示
出來,若有任選項(xiàng)則程序?qū)⒂涀∵@些字節(jié)已被定義成”十六進(jìn)制數(shù)據(jù)字”。
8.W命令
該命令把從ADDRESS開始的LENGTH個(gè)字節(jié)作為十六進(jìn)數(shù)據(jù)字節(jié)顯示
出來,若有選項(xiàng)"一,則程序?qū)⒂涀∵@些字節(jié)已被定義成”十六進(jìn)制數(shù)據(jù)字,
9.S命令
該命令在ADDRESS處設(shè)置一個(gè)作為子程序入口的標(biāo)號(hào)
(SUBROUTINE),反匯編程序?qū)⒂涀∵@個(gè)標(biāo)號(hào)。
10.T命令
該命令在ADDRESS處設(shè)置一個(gè)作為表頭的標(biāo)號(hào)(TABLE),反匯編程序?qū)?/p>
記住這個(gè)標(biāo)號(hào)。
11.Y命令
該命令把從ADDRESS開始的LENGTH個(gè)字節(jié)置為尚未識(shí)別
(UNKNOWN),留待下面進(jìn)一步分析。剛進(jìn)入反匯編程序時(shí),如果沒有給
出MESSAGE文件,則所有的目標(biāo)代碼字節(jié)都是尚未識(shí)別的。
12.G命令
該命令將從ADDRESS處開始搜索盡可能多的指令,如果有任選項(xiàng)”」,
則反匯編程序?qū)⒃谒阉鬟^程中自動(dòng)處理散轉(zhuǎn)和數(shù)據(jù)表,否則僅僅顯示出可能
涉及到散轉(zhuǎn)和數(shù)據(jù)表的指令和地址,而沒有散轉(zhuǎn)表和數(shù)據(jù)表。
13.F命令
該命令將從目標(biāo)程序的第一條指令開始依次找出尚未識(shí)別的字節(jié),并從該
字節(jié)開始搜索出盡可能的指令。對(duì)任選項(xiàng)。的處理與命令相同。
一般對(duì)于簡(jiǎn)單的目標(biāo)代碼程序,僅用F命令即可得到反匯編結(jié)果;對(duì)于復(fù)
雜的程序,則需借助上述命令來找出特定的表格、數(shù)據(jù)和地址等,以幫助反
匯編程序識(shí)別代碼,加快反匯編過程,得到正確的結(jié)果。
14.P命令
該命令從ADDRESS開始顯示長(zhǎng)度為L(zhǎng)ENGTH的目標(biāo)程序。
15.M命令
該命令顯示出目標(biāo)程序的起始地址、結(jié)束地址和長(zhǎng)度。
16.Z命令
該命令將顯示出目標(biāo)程序中尚未識(shí)別的非零字節(jié)的地址和長(zhǎng)度,若有任選
項(xiàng),這些尚未識(shí)別的非零字節(jié)將被置成十六進(jìn)制數(shù)據(jù)字節(jié)。
17.Q命令
該命令為退出反匯編程序。
退出反匯編程序時(shí),系統(tǒng)將相繼出現(xiàn)提示信息:
USTFILE?
ASSEMBLEFILE?
MESSAGEFILE?
分別提示用戶輸入列表文件名、匯編源程序文件名和信息文件名,這些文
件都是在反匯編結(jié)束后由系統(tǒng)按照反匯編的結(jié)果生成的。如果用戶不想生成
某一文件,則在該文件名提示后直接按回車鍵即可。
注意:列表文件和匯編文件都可能很大,應(yīng)該確保您的磁盤上有足夠的空
間存放它們。反匯編程序產(chǎn)生相應(yīng)的輸出并寫入到磁盤文件中后,即結(jié)束反
匯編過程,返回到主菜單。
§5—4通信(COMMUNCATION)
選擇此功能后,主菜單旁出現(xiàn)子菜單:
1.C0MMUN1
2.C0MMUN2
其中子菜單1對(duì)應(yīng)PC機(jī)的串行口3F8,子菜單2對(duì)應(yīng)PC機(jī)的串行口
2F8。此功能是PC機(jī)送數(shù)據(jù)到單片機(jī),步驟如下:
(-)單片機(jī)在P.狀態(tài)(按下use鍵后)下,按下RDS鍵,作好接收準(zhǔn)備。
(二)在PC機(jī)上輸入目標(biāo)文件名(必須帶上驅(qū)動(dòng)器號(hào))后回車即開始發(fā)送數(shù)
據(jù)。
注意:該過程中必須是單片機(jī)先作好接收準(zhǔn)備,然后才能啟動(dòng)PC機(jī)發(fā)送數(shù)
據(jù),同時(shí)必須用通信目纜線將單片機(jī)通信口和PC機(jī)上的相應(yīng)串行口聯(lián)接
好,才能夠正常通信,得到正確的結(jié)果。
在通信過程中,PC機(jī)屏幕上顯示正在發(fā)送的數(shù)據(jù),通信結(jié)束后將自動(dòng)退
出并返回到主菜單。在通信過程中可以用ESC健強(qiáng)行結(jié)束。
§5—5反通信(RECOMM)
選擇此功能后,主菜單旁出現(xiàn)子菜單:
1.REC0MM1
2.REC0MM2
其中主菜單1對(duì)應(yīng)PC機(jī)的串行口3F8,子菜單2對(duì)應(yīng)PC機(jī)的串行口
2F8。此功能是單片傳輸數(shù)據(jù)到PC機(jī),步驟為:
(-)在PC機(jī)上輸入待接收數(shù)據(jù)的文件名后回車,注意必須帶上驅(qū)動(dòng)器
號(hào)。
(二)單片機(jī)在"P."狀態(tài)下,借助(F)設(shè)置好待通訊數(shù)據(jù)塊的首末地址,然后
按WRI鍵即可進(jìn)行傳送輸出操作。
注意:該過程與通訊過程正好相反,即應(yīng)是PC機(jī)先作好接收準(zhǔn)備(輸入文
件名后回車),然后才能在單片機(jī)上啟動(dòng)發(fā)送數(shù)據(jù),否則得不到正確的結(jié)
果。PC機(jī)在接收過程中將顯示出接收到的數(shù)據(jù)。此過程也可用ESC鍵退
出。
§5—6調(diào)試(DEBUG)
此功能是在PC機(jī)上調(diào)試單片單板機(jī)上的程序,它應(yīng)與單片單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)老院院長(zhǎng)知識(shí)培訓(xùn)課件
- 企業(yè)資料歸檔與檔案管理模板
- 樞紐標(biāo)識(shí)系統(tǒng)一致性評(píng)價(jià)報(bào)告
- 2025年社會(huì)工作者之初級(jí)社會(huì)工作實(shí)務(wù)考前沖刺試卷A卷含答案
- 2025年新能源汽車推廣應(yīng)用資金申請(qǐng)政策解讀與產(chǎn)業(yè)布局優(yōu)化報(bào)告
- 印花數(shù)字化技術(shù)影響研究報(bào)告
- 2024年事業(yè)單位考試尼瑪縣《公共基礎(chǔ)知識(shí)》深度預(yù)測(cè)試題含解析
- 數(shù)據(jù)驅(qū)動(dòng)配件生產(chǎn)成本分析報(bào)告
- 2025年生態(tài)修復(fù)工程中生態(tài)系統(tǒng)服務(wù)功能評(píng)估與生態(tài)修復(fù)工程效果評(píng)價(jià)報(bào)告
- 個(gè)人養(yǎng)老金制度變革對(duì)2025年金融市場(chǎng)投資策略調(diào)整與投資機(jī)會(huì)研究報(bào)告
- 立柱樁施工匯總
- 雙塊式無砟軌道施工工藝及質(zhì)量控制
- 管理會(huì)計(jì)知識(shí)點(diǎn)整理
- 導(dǎo)管相關(guān)血流感染的治療
- 工程進(jìn)度款支付申請(qǐng)書
- 我國(guó)常見的草坪草
- 后腹腔鏡下腎囊腫去頂減壓術(shù)ppt課件
- 火力發(fā)電廠除灰設(shè)計(jì)規(guī)程
- 商品混凝土企業(yè)管理ppt課件
- 學(xué)校食堂登記表(10個(gè)表)全
- 佐羅塔耶夫《兒童組曲NO.1》的演奏分析
評(píng)論
0/150
提交評(píng)論