![MCS196 單片機(jī)原理指導(dǎo)書_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/4/fb8a7cf2-250d-470b-882f-9622c6661a6a/fb8a7cf2-250d-470b-882f-9622c6661a6a1.gif)
![MCS196 單片機(jī)原理指導(dǎo)書_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/4/fb8a7cf2-250d-470b-882f-9622c6661a6a/fb8a7cf2-250d-470b-882f-9622c6661a6a2.gif)
![MCS196 單片機(jī)原理指導(dǎo)書_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/4/fb8a7cf2-250d-470b-882f-9622c6661a6a/fb8a7cf2-250d-470b-882f-9622c6661a6a3.gif)
![MCS196 單片機(jī)原理指導(dǎo)書_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/4/fb8a7cf2-250d-470b-882f-9622c6661a6a/fb8a7cf2-250d-470b-882f-9622c6661a6a4.gif)
![MCS196 單片機(jī)原理指導(dǎo)書_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-10/4/fb8a7cf2-250d-470b-882f-9622c6661a6a/fb8a7cf2-250d-470b-882f-9622c6661a6a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)原理及應(yīng)用實(shí)驗(yàn)指導(dǎo)書河南工程學(xué)院電氣信息工程系目 錄1. 實(shí)驗(yàn)一:tsc-51/96實(shí)驗(yàn)開發(fā)系統(tǒng)的使用(2)2. 實(shí)驗(yàn)二:簡(jiǎn)單i/o口擴(kuò)展實(shí)驗(yàn)(21)3. 實(shí)驗(yàn)三:?jiǎn)纹瑱C(jī)定時(shí)器實(shí)驗(yàn)(25)4. 實(shí)驗(yàn)四:?jiǎn)纹瑱C(jī)串行口實(shí)驗(yàn)(28)5. 實(shí)驗(yàn)五:8255a可編程并行口實(shí)驗(yàn)(30)6. 實(shí)驗(yàn)六:mcs-51單片機(jī)鍵盤實(shí)驗(yàn)(32)7. 實(shí)驗(yàn)七:8051a/d轉(zhuǎn)換實(shí)驗(yàn)(34)8. 實(shí)驗(yàn)八:8051d/a轉(zhuǎn)換實(shí)驗(yàn)(36)9. 實(shí)驗(yàn)九:?jiǎn)纹瑱C(jī)音響實(shí)驗(yàn)(38)10. 實(shí)驗(yàn)十:繼電器控制實(shí)驗(yàn)(42)42實(shí)驗(yàn)一 tsc-51/96實(shí)驗(yàn)開發(fā)系統(tǒng)使用1. tsc-51/196實(shí)驗(yàn)開發(fā)系統(tǒng)原理和組成1.1 總體框圖
2、tsc-51/196系列單片機(jī)實(shí)驗(yàn)開發(fā)系統(tǒng)總體框圖如下: 圖一 tsc-51/196實(shí)驗(yàn)開發(fā)系統(tǒng)總框圖1.2 元件位置圖 圖二 元件位置圖1.3 微處理器tsc51/196實(shí)驗(yàn)開發(fā)系統(tǒng)可以對(duì)mcs51和mcs196兩種系列單片機(jī)進(jìn)行實(shí)驗(yàn)和開發(fā),出廠時(shí)設(shè)置為mcs51實(shí)驗(yàn)開發(fā)系統(tǒng)。當(dāng)用戶想進(jìn)行mcs196單片機(jī)實(shí)驗(yàn)時(shí),只需將j19右半部上的短路片拔下,插在j19左半部,同時(shí)將開關(guān)k4撥向80c196r的一邊即可。1.4 片外存貯器tsc實(shí)驗(yàn)系統(tǒng)中mcs51和mcs196兩種芯片,采用程序存貯器和數(shù)據(jù)存貯器統(tǒng)一編址的方法,其存貯空間分配如下: 0000h3fffh u34 27c128 監(jiān)控程序
3、4000h0ffffh u50 62256 用戶程序數(shù)據(jù) 0c000h0ffffh 供用戶擴(kuò)展雖然0000h3fffh存貯區(qū)被系統(tǒng)占用,但開發(fā)系統(tǒng)中特殊功能寄存器、片內(nèi)ram和中斷向量區(qū)等用戶可照常使用。存貯器及存貯器地址譯碼電路圖如下: 圖三 存儲(chǔ)器及存儲(chǔ)器地址譯碼電路1.5 i/o地址 在tsc-51/196系統(tǒng)中i/o地址和存貯器地址是統(tǒng)一編碼的,tsc開發(fā)系統(tǒng)將ib00hibff地址作為i/o地址。具體安排如下:1) ib00hib3fh為實(shí)驗(yàn)中可選用i/o地址,通過譯碼電路系統(tǒng)提供8個(gè)引出插孔,其標(biāo)號(hào)與地址對(duì)應(yīng)關(guān)系為:0007ib00ib07 2027ib20ib27080fib08
4、ib0f 282fib28ib2f1017ib10ib17 3037ib30ib37181fib18ib1f 383fib38ib3f2) ib40h-ib7fh 為eprom寫入專用地址。3) ib80h-ibbfh 為串行接口芯片8250地址。4) ibc0h-ibffh 為狀態(tài)控制專用地址。5) ib00h-ib07h 在對(duì)eprom操作時(shí)作為8255專用地址。6) ib30h-ib37h 為8279芯片專用地址。1.6 tsc-51/196實(shí)驗(yàn)開發(fā)系統(tǒng)占用資源考慮到性價(jià)比,本實(shí)驗(yàn)開發(fā)系統(tǒng)占用了單片機(jī)少量資源。1) 地址0000h3fffh之間的存儲(chǔ)區(qū)。其中0000h007fh提供mcs
5、51中斷地址區(qū);2000h200fh提供mcs96中斷向量區(qū),ib00hib3fh提供用戶做i/o設(shè)備地址,以上區(qū)域地址用戶可以使用但不能另外設(shè)置,當(dāng)用戶將開發(fā)系統(tǒng)作為用戶板的仿真器時(shí),用戶板的存貯區(qū)0000h0bfffh平移至開發(fā)系統(tǒng)的4000h0ffffh存貯區(qū)。2) 開發(fā)系統(tǒng)在開中斷方式下運(yùn)行,且用到了外部中斷,一般情況下,用戶在編程時(shí)不關(guān)閉中斷系統(tǒng),開發(fā)系統(tǒng)軟、硬件設(shè)計(jì)使得用戶仍可使用外部中斷,就象系統(tǒng)沒有占用外部中斷一樣。3)在mcs51執(zhí)行指令單步運(yùn)行時(shí),使用了外部中斷0輸入引腳p3.2,用戶在執(zhí)行指令級(jí)單步時(shí),該位狀態(tài)不一定正確。4)在mcs51系統(tǒng)中,監(jiān)控程序使用了8個(gè)字節(jié)的用
6、戶堆棧,這種占用對(duì)用戶程序的運(yùn)行不會(huì)產(chǎn)生影響,但用戶在堆棧大小的安排時(shí)應(yīng)考慮到系統(tǒng)的占用情況。1.7系統(tǒng)板上插座的設(shè)置 系統(tǒng)板上有若干插座如圖二所示,用于對(duì)外的連接。各插座的作用如下:j1 直流電機(jī)插座j2 12v,5v電源插座j3 8255所用的+5(用短路片連接)j4 繼電器輸出插座j5 微型打印機(jī)插座j6 喇叭用插座j7 溫度測(cè)量時(shí)鉑電阻的接入插座j8 步進(jìn)電機(jī)插座j9 8096仿真插座j10 8051仿真插座j11 adc0809所用+5v電源(用短路片連接)j12 dac0832所用+5v電源(用短路片連接)j13 單片機(jī)串行口對(duì)外插座j14 與主機(jī)通訊的串行口插座j15 8279所
7、用+5v電源(用短路片連接)j16 備用j19 用于8031和80c196轉(zhuǎn)換1.8 系統(tǒng)板上開關(guān)的設(shè)置 系統(tǒng)板上有三個(gè)開關(guān),如圖二所示,作用如下: k2系統(tǒng)板直流電源開關(guān)。通過開關(guān)可切斷或接通開發(fā)系統(tǒng)電源 k3時(shí)鐘切換開關(guān),當(dāng)開發(fā)系統(tǒng)用作用戶板仿真器時(shí),此開關(guān)可切換時(shí)鐘,當(dāng)開關(guān)打向左邊時(shí),使用開發(fā)系統(tǒng)時(shí)鐘,頻率為6.144mhz,當(dāng)打向右邊時(shí),使用用戶板上時(shí)鐘。k4 單片機(jī)選擇開關(guān),打在左邊時(shí)選擇mcs51工作方式,打在右邊時(shí)選擇mcs96工作方式。2. 上機(jī)操作及編程知識(shí)21 tsc開發(fā)系統(tǒng)基本軟件tsc開發(fā)系統(tǒng)必須在相關(guān)軟件的支持下,才能進(jìn)行開發(fā)實(shí)驗(yàn),有關(guān)軟件及其作用如下:tmsd.ex
8、e 多種源語(yǔ)言調(diào)試程序,它管理整個(gè)系統(tǒng)的運(yùn)行,幫助用戶調(diào)試自己的程序。tmsd.hlp tmsd 幫助文件tmsd.dat tmsd幫助文件的數(shù)據(jù)文件ved.exe 全屏幕編輯文件ved.hlp ved幫助文件asm51.exe mcs51宏匯編編譯程序plm51.exe mcs51的plm編譯程序rl51.exe mcs51連接定位程序oh.exe 將目標(biāo)碼轉(zhuǎn)換成十六進(jìn)制(.hex) 文件thcon.exe 將十六進(jìn)制文件轉(zhuǎn)換成tmsd需要的二進(jìn)制(.bin)文件filter.exe 文件過濾程序。作一般編輯軟件產(chǎn)生的源程序,必須經(jīng)過filter.exe的過濾后才能進(jìn)行匯編或plm編譯,否則
9、會(huì)發(fā)生錯(cuò)誤。convert.exe 生成rl51連接可重新定位模塊時(shí)所需文件t1234567。plm51.libplm51庫(kù)uti51.libplm51串操作庫(kù)lib51.exemcs51庫(kù)生成管事理程序a51.bat用于8051匯編源程序處理的批操作,生成的.bin文件的裝入地址為4000ha51b.bat用于8051匯編源程序處理的批操作,生成的.bin文件的裝入地址為0000h,tmsd能對(duì)它處理過的程序進(jìn)行源語(yǔ)言級(jí)調(diào)試。plc51.bat用于plm51源程序批操作,生成的.bin文件裝入地址為0000h,tmsd能對(duì)它處理過的plm51程序進(jìn)行源語(yǔ)言調(diào)試。asm96.exemcs96宏
10、匯編編譯程序plm96.exeplm96編輯程序rl96.exemcs96連接定位程序plm96.libplm96庫(kù)fpal96.libplm96浮點(diǎn)庫(kù)lib96.exemcs96庫(kù)文件生成管理程序a96.bat用于mcs96匯編語(yǔ)言的批操作,生成的. bin文件裝入地址為4000h。a96b.bat用于mcs96匯編語(yǔ)言的批操作,生成的.bin 文件裝入地址為0000h。tmsd對(duì)它處理過的mcs96匯編程序進(jìn)行源語(yǔ)言調(diào)試。plc96.bat用于plm96源程序批操作,生成的.bin文件裝入地址為0000h,tmsd能對(duì)它處理過的plm96程序進(jìn)行源語(yǔ)言級(jí)調(diào)試。t01.asm-t24.asm
11、 mcs51 實(shí)驗(yàn)匯編語(yǔ)言源程序t01.bin-t24.bin mcs51 實(shí)驗(yàn)二進(jìn)制目標(biāo)程序c01.asm-c27.asm mcs96 實(shí)驗(yàn)匯編語(yǔ)言源程序c01.bin-c27.bin mcs96實(shí)驗(yàn)二進(jìn)制目標(biāo)程序plc01.plm-plc27.plm mcs96實(shí)驗(yàn)plm語(yǔ)言源程序22 單片機(jī)匯編程序設(shè)計(jì)基本步驟使用任何語(yǔ)言進(jìn)行程度設(shè)計(jì)的第一步都是確定解決問題的目標(biāo),根據(jù)目標(biāo),設(shè)計(jì)出程度流程圖,然后根據(jù)流程圖設(shè)計(jì)調(diào)試程序。使用匯編語(yǔ)言進(jìn)行程序設(shè)計(jì),在確定程序流程圖,設(shè)計(jì)出源程序后,還包括以下幾個(gè)過程。1 使用編輯軟件對(duì)源程序進(jìn)行編輯修改,建立一個(gè)以擴(kuò)展名為asm的源文件,常用的編輯軟件有w
12、ord 、ved、edit、ultraedit等軟件。2 .對(duì)源程序進(jìn)行預(yù)處理,以生成調(diào)試文件*.bin。3 利用tmsd多種源語(yǔ)言調(diào)試程序?qū)μ幚砗蟮脑次募M(jìn)行調(diào)試,檢驗(yàn)文件的運(yùn)行情況。匯編語(yǔ)言程序設(shè)計(jì)計(jì)建立修改*.asm源文件對(duì)源文件進(jìn)行預(yù)處理生成*.bin等文件正確ntmsd調(diào)試yn結(jié)束正確?在第二、三步如發(fā)現(xiàn)語(yǔ)法錯(cuò)誤或邏輯錯(cuò)誤,返回第一步對(duì)源文件進(jìn)行修改,然后重復(fù)第二、第三步直到程序正確運(yùn)行達(dá)到預(yù)期功能為止。其過程可用流程圖表示如下:下面我們分別介紹以上三個(gè)步驟的使用方法。一、 編輯器的使用在計(jì)算機(jī)上進(jìn)行程序的編譯調(diào)試,首先是要建立一個(gè)源文件,源文件是以文本文件的形式,以*.asm為文件
13、名存放在計(jì)算機(jī)磁盤中?,F(xiàn)在有很多編輯軟件如word、wps、 edit、ved、ultraedit等。為了方便用戶,出廠時(shí)提供了一個(gè)全屏幕編輯軟件ved。這是一個(gè)通用的全屏幕編輯系統(tǒng),適用于pc系列及其兼容微機(jī),直接支持及自動(dòng)識(shí)別單顯、cga、vga、tvga及長(zhǎng)城系列等顯示卡,能利用pc機(jī)的所有內(nèi)存和擴(kuò)展存儲(chǔ)器(lim/emc)作為編輯緩沖區(qū),還可使用磁盤作為緩沖區(qū),所編輯文本的大小和行列的長(zhǎng)度不限。該系統(tǒng)處理速度和顯示速度非???,平均是wordstar的10倍以上,其控制命令和下拉菜單相結(jié)合,既滿足熟練的使用者,又適合初學(xué)者的學(xué)習(xí)與掌握。該系統(tǒng)可在最小配置為100k內(nèi)存的pc機(jī)上正常工作,
14、如果還配有ems,則只需要84k內(nèi)存空間。這個(gè)屏幕編輯軟件雖然有簡(jiǎn)單、實(shí)用、功能較強(qiáng)等優(yōu)點(diǎn),但如果用戶有更好的全屏幕編輯軟件,或者對(duì)某一編輯軟件已使用習(xí)慣,則可不使用此全屏幕編輯軟件,同時(shí)也就不需要閱讀本章。在dos 提示符下鍵入全屏幕編輯文件名ved后,按回車鍵,即進(jìn)入全屏幕編輯狀態(tài)。運(yùn)行全屏幕編輯軟件的開關(guān)參數(shù)設(shè)置如下:/lf換行符(linefeed)編輯有效/sn 西文顯示方式下屏幕無雪花/ns西文顯示方式下屏幕有雪花/as每隔25分鐘自動(dòng)存盤/dt直接編輯數(shù)據(jù)文件(如exe文件)/bw不使用彩色顯示方式編輯器根據(jù)屏幕提示輸入所編輯文件的名字,輸入文件名后即可開始對(duì)源文件進(jìn)行編輯,編輯命
15、令如下: 1 幫助信息 任何時(shí)候都可以按下 鍵(按下alt 鍵的同時(shí)按下h鍵,以下同)以獲得幫助,它將告訴你如何進(jìn)行操作2光標(biāo)移動(dòng)光標(biāo)左移一個(gè)字符 或光標(biāo)右移一個(gè)字符 或光標(biāo)下移一行 或光標(biāo)上移一行 或光標(biāo)上移一頁(yè) 或pgup光標(biāo)下移一頁(yè) 或pgdn光標(biāo)左移一句(字)或或小鍵盤上的“*”光標(biāo)右移一句(字)或或小鍵盤上的“”光標(biāo)左移半頁(yè) f5 光標(biāo)右移半頁(yè) f6光標(biāo)移到首行 home光標(biāo)移到首尾 end光標(biāo)移到文件首 或f1光標(biāo)移到文件尾 或f2光標(biāo)移到下一段首 f3屏幕上滾一行 屏幕下滾一行 光標(biāo)移到絕對(duì)行 f7 若將光標(biāo)移到x行;按f7鍵,輸入行值x后 回車。光標(biāo)移到絕對(duì)列 f8 若將光標(biāo)移
16、到y(tǒng)列;按f8鍵,輸入列值y后回車。3 磁盤操作存盤并退回操作系統(tǒng)f10或先按,再按x鍵存盤后繼續(xù)編輯f9 或先按,再按s鍵不存盤退回操作系統(tǒng),按下shift鍵的同時(shí)按下f10鍵,以下相同不存盤開始編輯另一文件先按,再按y鍵存盤后開始編輯另一文件先按,再按d鍵讀一文件到光標(biāo)位置,在按以前,如果沒有用鍵規(guī)定文本范圍,那么按鍵就是把另外一個(gè)文件插入到當(dāng)前光標(biāo)處。塊寫文件按,如果用確定了文本范圍,那么就是把該范圍內(nèi)的內(nèi)容作為一個(gè)文件存起來。這樣利用“塊寫文件”和“讀一文件到光標(biāo)位置”這樣兩項(xiàng)功能可以把一個(gè)文件一部分插入到另一文件中去。4刪除操作刪除光標(biāo)位置上的字符或del刪除光標(biāo)前的一個(gè)字符主鍵盤上
17、的“”鍵(backspace)刪除光標(biāo)開始的一句(字)或小鍵盤上的“+”刪除光標(biāo)所在行刪除從行首到光標(biāo)刪除從光標(biāo)到行尾 5串搜尋和替換按下(或先按, 再按f鍵)鍵以后,在提示行會(huì)看到要求輸入要搜尋的字符串,字符串可以是除功能以外的所有代碼組成的串,如asc碼,ctrl碼,alt +數(shù)字鍵產(chǎn)的碼及漢字代碼。輸入字符串后,在整個(gè)文本范圍內(nèi)可以按f4或鍵進(jìn)行搜尋或替換。在這里按f4鍵來搜尋字符串,按是用一個(gè)字符串替換已經(jīng)搜尋到的字符串,操作過程如下:(1) 按后,輸入要搜尋的字符串。(2) 輸入字符串后,按f4光標(biāo)停在第一個(gè)搜尋到的字符串處,再按f4搜尋下一個(gè),一直到整個(gè)文本搜尋一遍。搜尋的次序是從
18、光標(biāo)開始到文件尾,再?gòu)奈募椎剿褜てヅ涞拇?,光?biāo)移到此處,按f4繼續(xù)。(3) 輸入字符串后,若按,提標(biāo)行會(huì)要求輸入要替換的字符串,輸入替換字符串后,按f4鍵,光標(biāo)停在第一個(gè)要替換的字符串處,提示行要求回答是否確認(rèn)替換,若回答“y”則搜尋到的字符串被替換,再按y就替換第二個(gè)。如果在這種替換以前用功能定義了文本范圍,則在整個(gè)范圍內(nèi)一次替換所有搜尋到的匹配字符串。6 文本移動(dòng)首先在第一個(gè)點(diǎn)用設(shè)置一個(gè)標(biāo)志,然后移動(dòng)光標(biāo)到另一個(gè)希望的位置,這時(shí)第一點(diǎn)到第二點(diǎn)之間的文本行用反視頻顯示,規(guī)定了一個(gè)文本范圍(定義區(qū)間),如果在第二點(diǎn)用設(shè)置另一個(gè)標(biāo)志,則兩個(gè)標(biāo)起之間的文本被刪除并被保存到一區(qū)的內(nèi)容并插入到光標(biāo)
19、位置,實(shí)現(xiàn)文本的移動(dòng)。這一方法還可完成文本的刪除、文本的任意份復(fù)制、文件之間的文本移動(dòng)和復(fù)制等。7 塊移動(dòng)該功能實(shí)現(xiàn)了文本按矩形方塊進(jìn)行刪除、移動(dòng)和復(fù)制,便于圖表管理。首先在第一個(gè)位置用設(shè)置一個(gè)標(biāo)志,然后在第二點(diǎn)用設(shè)置另一個(gè)標(biāo)志,這樣兩個(gè)點(diǎn)為對(duì)角線的一個(gè)矩形塊的內(nèi)容被刪除并保存到緩沖區(qū)中,以后無論在任何位置按下+,都將恢復(fù)這一文本的內(nèi)容,并按矩形區(qū)域插到光標(biāo)位置。8 西文大小寫字符的轉(zhuǎn)化首先用設(shè)定區(qū)間首位置的標(biāo)志,然后移動(dòng)光標(biāo)以確定需要操作的區(qū)域,區(qū)域內(nèi)變?yōu)榉匆曨l顯示。再按,此時(shí)提示行讓你回答是大寫改小寫(選擇1)還是小寫改大寫(選擇2),根據(jù)提示回答以后,在整個(gè)已定義的范圍內(nèi)將西文的小寫字符
20、改為大寫或大寫字符改為小寫,實(shí)現(xiàn)了ascii碼的大小寫轉(zhuǎn)換功能。9 畫線把光標(biāo)移到畫線的首位置,按下,此時(shí)在提示行上顯示制表標(biāo)志和當(dāng)前的光標(biāo)行、列位置,然后移動(dòng)光標(biāo)到另一位置,再按下,即可畫線。若兩次按下的位置在同一行上,則在此間畫出一條橫線;若兩次按下的位置在同一列上,則在此間畫出一條豎線;否則就以這兩個(gè)位置為對(duì)角畫一個(gè)矩形表格。10 專用圖形符號(hào)的輸入:利用上檔(shift)鍵和小鍵盤的鍵可以輸入一些專用圖形符號(hào),具體對(duì)應(yīng)關(guān)系如下: 小鍵盤 圖形符號(hào) 7 8 9 左shift 鍵 + 4 5 6 + = 1 2 3 0 。 、小鍵盤圖形符號(hào) 8 右shift鍵 + 4 6 = 2 11 高
21、級(jí)功能代碼直接輸入 alt+數(shù)字(小鍵盤)例:按下、,則屏幕顯示數(shù)字1按下、,則屏幕顯示字母a顯示字符屬性 編輯位置顯示 記憶輸入 選擇下拉菜單 esc鍵12 下拉菜單任意時(shí)刻按下esc鍵,在屏幕的右側(cè)將列出下拉菜單,內(nèi)容包括上述各種操作。對(duì)初學(xué)者而言,不必記住繁瑣的命令,只需選擇菜單中相應(yīng)操作的項(xiàng),就可完成所有屏幕編輯的功能。二、 對(duì)源文件進(jìn)行處理 處理步驟如下:1) 使用filter.exe對(duì)源程序進(jìn)行預(yù)處理如: filer *.asm2) 針對(duì)不同語(yǔ)言編寫的程序,使用不同的編譯程序(plm51,plm9c, asm51, asm96, c-51, c-96)對(duì)源文件進(jìn)行編譯以生成*.ob
22、j和*.lst文件,如: asm96 *.asm db sb ep3) 對(duì)編譯后的目標(biāo)文件使用連接定位程序rl51,rl96進(jìn)行連接和定位,生成無擴(kuò)展名可執(zhí)行文件*.,和目標(biāo)映象文件*.m96或*.m51如:rl96 *.obj, rom(2000h-200fh, 2080h-2082h, 4000h-7fffh), ram(8000h-0bfdfh)4) 使用目標(biāo)碼轉(zhuǎn)換程序oh.exe將無擴(kuò)展名可執(zhí)行文件,轉(zhuǎn)換為十六進(jìn)制文件*.hex, 如: oh *. 5) 使用thcon.exe轉(zhuǎn)換文件將 *.hex文件轉(zhuǎn)換成tmsd可執(zhí)行文件*.bin, 如 thcon/k *.hex。不帶開關(guān)或k=
23、0時(shí),*.bin 文件從0000h開始k=1時(shí),*.bin 文件從2000h開始k=2時(shí), *.bin 文件從2000h開始,并將2000h-200fn中斷向量浮動(dòng)到4000-400fhk=3時(shí),*.bin文件人4000h開始系統(tǒng)進(jìn)行語(yǔ)言級(jí)調(diào)試時(shí)k=0,為減少*.bin文件長(zhǎng)度k設(shè)置為3。6)幾個(gè)用于預(yù)處理mcs51程序的批操作文件(1)a51.bat(2)a51b.bat三 、tmsd的使用tmds (tsinghua multiplex source language debugger)清華大學(xué)計(jì)算機(jī)廠為tsc開發(fā)系統(tǒng)而設(shè)計(jì)的多種源語(yǔ)言調(diào)試程序, 軟件采用層又疊式窗口技口技,以菜單形式進(jìn)行
24、操作。 1) tmsd啟動(dòng)tmsd是一dos文件,在dos方式下,鍵入tmsd 即進(jìn)入tmsd系統(tǒng),屏幕上出現(xiàn)tmsd字樣,按回車鍵后,屏幕上提示選擇計(jì)算機(jī)與開發(fā)系統(tǒng)連接的通訊口,在選擇及開發(fā)系統(tǒng)連接正常且開發(fā)系統(tǒng)電源接通的性情況下,再按回車鍵系統(tǒng)進(jìn)入tmsd主窗口。另外tmsd啟動(dòng)可以帶串口開關(guān)和被調(diào)試文件名啟動(dòng)。如系統(tǒng)選擇串口1,且打開*.btn文件,其操作命令為tmsd/1 * 2) tmsd 菜單及提示行tmsd調(diào)試主窗口如下圖所示systemmemoryregisterrundebugepromwindowhelpopen programopen module f3 工作欄emula
25、tordebug modedosshellquit alt-xf1 help提示及狀態(tài)行3)各子菜單目錄說明主菜單條, tmsd是多窗口操作方式 ,在主窗口工作欄中可同時(shí)打開多個(gè)窗口,一個(gè)窗口通常有幾部構(gòu)成.(關(guān)閉圖標(biāo))(標(biāo)題條)(窗口號(hào))(變焦圖標(biāo))滾動(dòng)條disassembly 2 滾動(dòng)條 system (系統(tǒng)) 子目錄l open program 打開一個(gè)處理過的源程序l open module 打開源代碼中的一個(gè)模塊l emulator 設(shè)置仿真參數(shù)l debug mode 確定是源代碼調(diào)試方式,還是目標(biāo)代碼調(diào)試方式l select board 該項(xiàng)目于一帶四系統(tǒng)中,選擇被調(diào)系統(tǒng)l st
26、atus 顯示當(dāng)前系統(tǒng)狀態(tài)l dosshell 臨時(shí)退出 tmsd l quit 退出tmsd,返回dos退出系統(tǒng)存儲(chǔ)器 memory (存儲(chǔ)器) 子目錄l dump 顯示從指定地址開始的ram內(nèi)容l fill 向?qū)嶒?yàn)臺(tái)上的ram塊填充新的內(nèi)容l find 在指定的存儲(chǔ)區(qū)中查找某一個(gè)字符中l(wèi) search again 查找下一個(gè)匹配的字符串l move 把存儲(chǔ)區(qū)中一個(gè)塊的內(nèi)容傳送到另一個(gè)塊去l compare 比較兩塊存儲(chǔ)區(qū)的內(nèi)容,顯示出兩塊中內(nèi)容不一致的第一個(gè)地址及其內(nèi)容.l load 將一個(gè)*.bin文件裝入raml save 將一塊存儲(chǔ)區(qū)內(nèi)容保存在文件中l(wèi) save disam code
27、 以符號(hào)反匯編形式(*.asm)或列表形式(*.lst)將存儲(chǔ)區(qū)內(nèi)的一段內(nèi)容以文件形式保存在磁盤上l disassemble form 對(duì)存儲(chǔ)區(qū)的內(nèi)容進(jìn)行反匯編,顯示在目標(biāo)碼窗口內(nèi)l assemble 從指定地址進(jìn)行簡(jiǎn)單的匯編 regiwter (寄存器)子目錄l display 顯示有關(guān)寄存器的內(nèi)容l add register 增加顯示的寄存l delete register 冊(cè)掉顯示的寄存器. l modify pc 修改程序計(jì)數(shù)器.l modify psw 修改程序狀態(tài)字l write register 修改寄存器l set user register 此功能用于匯編時(shí)使用 run (運(yùn)
28、行)子目錄l go 從當(dāng)前pc處執(zhí)行程序l step 單步執(zhí)行l(wèi) trace 跟蹤執(zhí)行,能夠跟蹤進(jìn)過程或子程序l run to cursor 從pc處運(yùn)行到光標(biāo)處.l set pc to cursor 將程序計(jì)數(shù)器pc置到光標(biāo)所在處l reload 將源程序重新裝入.l restart 將pc復(fù)位到程序入口處l demostrate 以流覽方式執(zhí)行程序. debug (調(diào)試)子目錄l add watch 在watch(監(jiān)視)窗口增加被監(jiān)視的變量l delete watch 在watch窗口中刪除被監(jiān)視的變量l delete all watch 刪除在watch窗口中所有的變量. l toggl
29、e breakpoint 斷點(diǎn)設(shè)置乒乓開關(guān)l clear all breakpoint 刪除全部斷點(diǎn)l list breakpoint 列出全全部斷點(diǎn)l evaluate 表達(dá)式計(jì)算 eprom 子目錄l check 檢查eprom是否為空l(shuí) read eprom 讀eprom的內(nèi)容l program對(duì)eprom進(jìn)行編程,即寫eprom。l compare將一個(gè)eprom的內(nèi)容讀出來,與指定文件的內(nèi)容比較。windowl size/move對(duì)當(dāng)前窗口進(jìn)行移動(dòng)或修改大小。l zoom對(duì)當(dāng)前窗口進(jìn)行變焦操作。l close關(guān)閉當(dāng)前窗口。l next使下一個(gè)窗口成為當(dāng)前窗口。l previous使上
30、一個(gè)窗口成為當(dāng)前窗口。 l close all關(guān)閉所有窗口。匯編程序偽指令表偽指令格 式說 明bit符號(hào)名bit地址定義一個(gè)位數(shù)據(jù)空間的地址bsegbsegat絕對(duì)地址定義一個(gè)位地址空間的絕對(duì)地址code符號(hào)名code表達(dá)式一個(gè)符號(hào)賦予code段內(nèi)一個(gè)地址csegcsegat絕對(duì)地址定義代碼地址空間的絕段data符號(hào)名data表達(dá)式一個(gè)符號(hào)賦予片內(nèi)一個(gè)數(shù)據(jù)地址db標(biāo)號(hào):db表達(dá)式生成字節(jié)值表dbit標(biāo)號(hào):dbit表達(dá)式以位為單位在bit段內(nèi)保留空間ds標(biāo)號(hào):ds表達(dá)式以字節(jié)為單位保留空間dsegdsegat絕對(duì)地址定義一個(gè)間接尋址數(shù)據(jù)空間的一個(gè)絕對(duì)段dw標(biāo)號(hào):dw表達(dá)式生成字值表endend表
31、明程序結(jié)束equ符號(hào)名equ表達(dá)式或符號(hào)名equ特殊匯編符號(hào)永久地設(shè)置符號(hào)值extrnextrn段類型(符號(hào)名列表)引用在其它模塊定義但在當(dāng)前模塊中訪問的符號(hào)idata符號(hào)名idata表達(dá)式符號(hào)名賦予一個(gè)間接尋址的內(nèi)部地址isegisegat絕對(duì)地址定義一個(gè)內(nèi)部數(shù)據(jù)空間的絕對(duì)段namename模塊名規(guī)定當(dāng)前模塊名orgorg表達(dá)式設(shè)置當(dāng)前段的位置計(jì)算器publicpublic符號(hào)名列表說明能用于當(dāng)前模塊之外的符號(hào)名列表rsegrseg段名選擇一個(gè)可以重新定位的段segment符號(hào)名segment段類型定義一個(gè)可以重新定位的段set符號(hào)名set表達(dá)式或符號(hào)名set特殊匯編符號(hào)永久地設(shè)置符號(hào)值us
32、ingusing表達(dá)式設(shè)置r0-r7寄存器地址并為規(guī)定的寄存器組保留空間xdata符號(hào)名xdata表達(dá)符號(hào)名分配給一個(gè)片外數(shù)據(jù)地址xsegxsegat絕對(duì)地址在外部數(shù)據(jù)地址空間內(nèi)定義一個(gè)絕對(duì)段四、程序設(shè)計(jì)調(diào)試舉例利用p0口使8個(gè)發(fā)光管循環(huán)點(diǎn)亮,用8根導(dǎo)線把p0口和發(fā)光管連接即可。1編寫程序org 4000hljmp startorg 4200hstart:mov a,#01h loop:mov p0,a acall delay rl a ljmp loopdelay:mov r5,#10 del1:mov r6,#200 del2:mov r7,#126 del3:djnz r7,del3 d
33、jnz r6,del2 djnz r5,del1 end2. 利用編輯軟件將編寫的程序,以文本文件的形式存放在源文件,e01.asm文件中。3用asm51 e01.asm db sb ep軟件對(duì)文件e01.asm文件進(jìn)行編譯(如有錯(cuò)誤;回到編輯方式對(duì)源文件進(jìn)行修改)4利用批處理文件a51.bat,或a51b.bat,對(duì)源程序進(jìn)行處理。5鍵入tmsd,選擇串行通訊口,進(jìn)入tmsd調(diào)試環(huán)境。6通過菜單systeml |open program 或memorg | lood 打開被調(diào)試文件;7通過memorg |damp 菜單打開存貯窗,觀察4200h為起始地址的一段存貯區(qū)中內(nèi)容;通過registe
34、rdisply 打開寄存器觀察窗口;在窗口中通過registeradd register增加寄存器。8通過單步執(zhí)行鍵f8,單步執(zhí)行程序,觀察并記錄程序每步對(duì)寄存器和存貯器的改變。或運(yùn)行run|go,觀察發(fā)光管的變化情況。 9可修改程序,觀察發(fā)光管的變化情況。 五、medwin調(diào)試仿真軟件的使用 學(xué)習(xí)medwin軟件的使用,可在課余時(shí)間進(jìn)行模擬調(diào)試。方法如下: 啟動(dòng)medwin,新建一個(gè)文件后就出現(xiàn)編輯窗,我們?cè)诰涂梢栽谶@個(gè)窗中編寫匯編或c原程序。 當(dāng)編寫完成后,應(yīng)先保存。再按下圖步驟產(chǎn)生燒寫單片機(jī)用的hex文件。 先在工具欄中按“”按鈕,主窗體下面會(huì)出現(xiàn)匯編或編譯過程提示,若錯(cuò)誤=0,就編譯或
35、匯編成功;若有錯(cuò)誤,請(qǐng)以依提示逐個(gè)排除錯(cuò)誤后再按“”按鈕匯編或編譯,直至錯(cuò)誤=0,編譯或匯編成功。 最后從菜單中點(diǎn)擊“項(xiàng)目管理”下的“輸出 intel hex 文件 (h).”,在c:c51mypro下就生成與原程序同名的hex文件。 下面我們用流水燈程序直接做一遍 將光盤中mcucailiushun的liu1.asm復(fù)制到c:c51mypro目錄中,取掉其只讀屬性。啟動(dòng)medwin,打開c:c51myproliu1.asm 。 編輯窗中就是用匯編語(yǔ)言編寫的流水燈程序?,F(xiàn)在我們不要管他是什么意思,按下面步驟將這些匯編“符號(hào)”生成單片機(jī)需要的代碼就行啦。 第一步,點(diǎn)擊工具按鈕“”生成medwin
36、調(diào)試代碼;第二步,從菜單中點(diǎn)擊“項(xiàng)目管理”下的“輸出 intel hex 文件 (h).”, 燒寫單片機(jī)所需要的 hex 文件已產(chǎn)生在 c:c51myproliushui目錄下,名字為“l(fā)iu1.hex”。 接下來,我們將“l(fā)iu1.hex”燒寫到單片機(jī)中. 六、實(shí)驗(yàn)報(bào)告1. 寫出實(shí)驗(yàn)儀的主要功能及使用方法。2. 寫出調(diào)試程序的數(shù)據(jù)、結(jié)果及調(diào)試過程、心得體會(huì)。3. 問題與討論。實(shí)驗(yàn)二 簡(jiǎn)單i/0口擴(kuò)展實(shí)驗(yàn)(一)數(shù)字循環(huán)顯示實(shí)驗(yàn)一、實(shí)驗(yàn)題目以實(shí)驗(yàn)臺(tái)提供的2片74ls273作為輸出口,控制實(shí)臺(tái)上6個(gè)七段數(shù)碼管,通過程序延時(shí),在數(shù)碼管上循環(huán)顯示不同數(shù)字。二、實(shí)驗(yàn)?zāi)康? 學(xué)習(xí)擴(kuò)展簡(jiǎn)單i/o接口的方法2
37、了解七段數(shù)碼管顯示數(shù)字的原理三、實(shí)驗(yàn)原理七段數(shù)碼管是通過八個(gè)發(fā)光二極管的不同組合來顯示數(shù)據(jù)的顯示原理如圖,圖中用一片74ls273的八位輸出來驅(qū)動(dòng)數(shù)碼管各段的顯示,用另一片74ls273來選擇將要顯示數(shù)字的數(shù)碼管。四、實(shí)驗(yàn)電路1u4(74ls273)的o11-o18接數(shù)碼管a-h,cs2,接譯碼電路00-07(1b00h-ib07)2u5(74ls273)的o21-o26接數(shù)碼管ld0-ld5,cs3,接譯碼電路08-0f(1b08h-ib0fh)實(shí)驗(yàn)電路如圖所示五、硬軟件調(diào)試在tmsd調(diào)試窗口中進(jìn)memorgdump菜單,打開1b00h存i/0區(qū)(存貯區(qū))。在1b08-1b0f中任一單元輸入
38、01(注:窗口顯示單元顯示不一定正確),在1b00-1b07中任一單元分別輸入01,02,04,08,10,2h,40h,80h,使數(shù)碼管各段依次發(fā)光,用這一方法可找出數(shù)碼管各段所對(duì)應(yīng)的的數(shù)位,并依此可找出顯示數(shù)碼的字形碼;如在1b00h單元填寫3fh時(shí)數(shù)碼管將顯示數(shù)字0,依可找出下表其余數(shù)碼的字形碼,在輸出字形碼不變的情況下給1b00h單元分別輸入02,04,08h,10h,20h數(shù)據(jù)。0123456789abcdef-3f實(shí)驗(yàn)電路六、程序設(shè)計(jì)開始(1b00h) 字型碼a 01b 延時(shí)時(shí)間常數(shù)(1b08h) a延時(shí) a左移一位a=40h?a=01yn按以下程序流程圖設(shè)計(jì)一循環(huán)顯示程序,使6位
39、數(shù)碼管從右到左逐位顯示,某一數(shù)碼,調(diào)整延時(shí)時(shí)間使循環(huán)由慢到快,直到6位數(shù)碼管顯示同一數(shù)字為止。(二)數(shù)碼顯示實(shí)驗(yàn)一、實(shí)驗(yàn)題目利用上一實(shí)驗(yàn)所用的簡(jiǎn)單i/0接口,驅(qū)動(dòng)實(shí)驗(yàn)臺(tái)上數(shù)碼管,以十進(jìn)制形式顯示ex寄存器中數(shù)據(jù)。二、實(shí)驗(yàn)?zāi)康?掌握利用有關(guān)指令實(shí)現(xiàn)4位十六進(jìn)制數(shù)到十進(jìn)制數(shù)轉(zhuǎn)換的編程技巧。2掌握用一個(gè)段鎖存器和一個(gè)位鎖存器顯示多位數(shù)字的技術(shù)三、實(shí)驗(yàn)原理1從上一實(shí)驗(yàn)可知,當(dāng)字符循環(huán)時(shí)間設(shè)定為恰當(dāng)時(shí)間時(shí),符循環(huán)顯示的6位數(shù)碼管看起來好象同時(shí)顯示的6位數(shù)字,如果分別讓每位數(shù)碼管循環(huán)顯示某位數(shù)字,則6個(gè)數(shù)字可顯示6位數(shù),例如有6位數(shù)分別存放在t0,t1,t2t5六個(gè)字節(jié)中,如循環(huán)顯示程序在選中l(wèi)d0時(shí),將
40、t0數(shù)字的字形碼送給段鎖存器;選中l(wèi)d1時(shí),將t1數(shù)字的字形碼送給段鎖存器。依次不斷地循環(huán)數(shù)碼管上將顯示t0,t1t6這六位數(shù)據(jù)。2在mcs51程序中可利用除法指令將四位(二個(gè)字節(jié))十六進(jìn)制數(shù)轉(zhuǎn)換為bcd碼,因四位十六進(jìn)制數(shù)最大表示為(65535)五位十進(jìn)制數(shù),如將這四位十六進(jìn)制數(shù)除以10000,其商為bcd碼的最高位;然后將其余數(shù)除1000,其商為次高位;依次相除直到除10,其商便是十位數(shù),余數(shù)為個(gè)位數(shù)。我們將各位數(shù)分別存入t6t0,存貯單元,然后執(zhí)行顯示程序則ex中四位十六進(jìn)制數(shù)可通過此方法,顯示在數(shù)碼管上。四、實(shí)驗(yàn)電路五、程序設(shè)計(jì)1將片內(nèi)ram的1ah-1fh定義為t0-t5存貯單元2將
41、數(shù)碼的字形碼存放在以4800h單元為首地址的存貯區(qū)中3按以下程序流程圖編寫并調(diào)試程序開始將寄存器中數(shù)據(jù)轉(zhuǎn)換為五位bcd碼,并將其分別存入t0-t5單元設(shè)定顯示位及顯示緩存單元的指針初值延時(shí)循環(huán)顯示下一位五位顯示完否?yn結(jié)束六、實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)三 單片機(jī)定時(shí)器實(shí)驗(yàn)(一)定時(shí)器t1實(shí)驗(yàn)定時(shí)中斷一實(shí)驗(yàn)題目利用并行擴(kuò)展口74ls273(u4)的輸出o11-o18接8只發(fā)光二極管,用定時(shí)器1控制它,按每秒鐘循一次逐個(gè)點(diǎn)亮下一只發(fā)光二極管。二實(shí)驗(yàn)?zāi)康?掌握定時(shí)器1的工作原理2掌握定時(shí)器1的使用和編程方法3掌握定時(shí)器中斷程序的設(shè)計(jì)方法三實(shí)驗(yàn)原理1t1為16位只讀計(jì)數(shù)器,時(shí)鐘源是固定的,每8個(gè)狀態(tài)周期使其加1,
42、在tcs-51/196系統(tǒng)中,時(shí)鐘為6.144mhz,每個(gè)時(shí)鐘周期為162.76ns,每個(gè)狀態(tài)周期為325.52ns,8個(gè)狀態(tài)周期為2.6 s,這樣t1的溢出周期為655362.6s,約等于171ms,1秒中需要t1中斷6次。2.在程序運(yùn)行后點(diǎn)亮l0發(fā)光二極管,然后定時(shí)器每中斷6次使下一個(gè)發(fā)光二極管點(diǎn)亮.四、實(shí)驗(yàn)電路實(shí)驗(yàn)電路如右圖五、電路調(diào)試1鍵入tmsd進(jìn)入調(diào)試方式2進(jìn)入memorydump菜單,顯示ib00h存貯區(qū)3給i/o端口ibofh輸入01,02,04,08,10h,20h,40h,80h觀察發(fā)光二極管的發(fā)光情況。六、程序設(shè)計(jì)1定義定時(shí)器溢出中斷失量地址內(nèi)存放中斷程序入口地址。2按以
43、下流程圖編寫調(diào)試程序定時(shí)器1中斷程序框圖開始置sp、關(guān)中斷置定時(shí)器1中斷次數(shù)為6,點(diǎn)亮發(fā)光二極管l1開中斷等待定時(shí)器1中斷關(guān)中斷重置定時(shí)器1中斷次數(shù)為6,發(fā)光二極管l1l8循環(huán)左移1位點(diǎn)亮定時(shí)器1中斷6次嗎?開中斷返回主程序yn(二)定時(shí)器t1和t0同時(shí)產(chǎn)生中斷實(shí)驗(yàn)一 實(shí)驗(yàn)題目用程序在p2.5引腳產(chǎn)生一周期脈沖,作為t0的外部時(shí)鐘,在p2.0端接發(fā)光二極管,編寫程序,使t1中斷時(shí),p2.0=1,t0中斷時(shí),p2.0=0,觀察發(fā)光二極管的亮滅,了解t1和t0的溢出中斷。二實(shí)驗(yàn)?zāi)康?了解定時(shí)器t0的結(jié)構(gòu)原理和使用方法2掌握t1、t0都有可能產(chǎn)生中斷時(shí),中斷程序的設(shè)計(jì)方法三實(shí)驗(yàn)原理在8051中t1和
44、t0各有中斷入口地址和外部脈沖輸入腳,一個(gè)作為延時(shí),一個(gè)為記數(shù)狀態(tài)。四、實(shí)驗(yàn)電路電路參考教材五、硬件調(diào)試 1. 鍵入tmsd進(jìn)入程序調(diào)試方式。 2. 進(jìn)入registerwrite register 萊單。修改p2口0a0h地址的狀態(tài)使p2。0發(fā)生變化,觀察發(fā)光二極管的亮滅情況。六、程序設(shè)計(jì)1. 在2000h定時(shí)器溢出中斷失量地址中存放中斷服務(wù)程序入口地址。2. 按以下程序流程圖編寫程序。開始置sp、關(guān)中斷置參數(shù)開中斷使p2.5產(chǎn)生頻率約0.1ms脈沖關(guān)中斷定時(shí)器0中斷嗎?點(diǎn)亮發(fā)光二極管l1定時(shí)器中斷程序框圖定時(shí)器1中斷嗎?中斷次數(shù)夠4次嗎?開中斷、返回主程序熄滅發(fā)光二極管l1ynynyn 七
45、、實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)四 串行口實(shí)驗(yàn)(一、)串并轉(zhuǎn)換實(shí)驗(yàn)一、 實(shí)驗(yàn)題目 利用8051串行口,和并行輸出串行移位寄存器74ls164,擴(kuò)展i/o口,在數(shù)碼管上循環(huán)顯示09這10個(gè)數(shù)字。二、實(shí)驗(yàn)?zāi)康?掌握8051串行口方式0的工作方式及編程方法。2掌握利用串行口擴(kuò)展i/o口通道的方法。三、實(shí)驗(yàn)原理串行口工作在方式0時(shí),可通過外接移位寄存器實(shí)現(xiàn)串行并行轉(zhuǎn)換。在這種方式下,數(shù)據(jù)為8位,只能從rxd端輸入輸出,txd端用于輸出移位同步時(shí)鐘信號(hào),其波特率固定為振蕩頻率的1/12。由軟件置位串行控制寄存器的ren位后才能啟動(dòng),串行接收,在cpu將數(shù)據(jù)寫入sbuf寄存器后,立即啟動(dòng)發(fā)送。待8位數(shù)據(jù)輸完后,硬件將sco
46、n寄存器的t1位置1,必須由軟件清零。四、實(shí)驗(yàn)電路如右圖所示五、線路連接將8051的txd端接74ls164的sclk端,rxd端接164的sin端,164的qh-qa分別接數(shù)碼管的a-h,數(shù)碼顯示的ld0接高電平,ld1-ld5接低電平。六、程序設(shè)計(jì)程序流程圖如下: 七、實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)五、8255a可編程并行口實(shí)驗(yàn)一、實(shí)驗(yàn)題目利用可編程并行接口芯片8255,進(jìn)行交通燈控制實(shí)驗(yàn)。二、實(shí)驗(yàn)?zāi)康? 掌握單片機(jī)系統(tǒng)中擴(kuò)展外圍芯片的方法。2 了解8255芯片的結(jié)構(gòu)及編程方法。三、實(shí)驗(yàn)原理1了解交通路燈的燃滅規(guī)律,設(shè)有一個(gè)十字路口,初始態(tài)為四個(gè)路口的紅燈全亮,之后,東西口綠燈亮,延遲一段時(shí)間后,綠燈滅,黃
47、燈閃爍幾次,紅燈亮,之后循環(huán)。2. 8255具有三個(gè)8位并行口,分別為pa口、pb口、pc口,其中pc口又分為低四位和高四位,都可通過編程來改變i/o工作方式。8255有三種基本工作方式,其中方式0是一種基本的輸入或輸出方式,適合于無條件的傳輸數(shù)據(jù)的設(shè)備。四 實(shí)驗(yàn)電路 五 線路連接8255的pb4-pb7接l1-l4,pc0-pc7接l5-l12,8255的cs端cs1接00-07端。六 程序設(shè)計(jì)流程圖如下: 七、實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)六、鍵盤實(shí)驗(yàn)一、實(shí)驗(yàn)題目利用實(shí)驗(yàn)臺(tái)上提供的8279,鍵盤電路和led顯示電路,組成一個(gè)鍵盤分析電路,編寫程序,要求在鍵盤上按一個(gè)數(shù)字鍵,將此鍵代碼顯示在led上。二、實(shí)驗(yàn)?zāi)康?、 進(jìn)一步了解8279鍵盤、顯示電路的編程方法。2、 進(jìn)一步了解鍵盤電路的工作原理及編程方法。 三、實(shí)驗(yàn)原理1、 識(shí)別鍵盤的閉合,常采用行掃描法和行反轉(zhuǎn)法。鍵的去抖動(dòng)方法,即執(zhí)行一段延時(shí)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工現(xiàn)場(chǎng)施工防化學(xué)災(zāi)害制度
- 應(yīng)急物資裝備應(yīng)急預(yù)案
- 醫(yī)療護(hù)理醫(yī)學(xué)培訓(xùn) 吸痰護(hù)理技術(shù)課件
- DB6103T 87-2025企業(yè)簡(jiǎn)易注銷登記服務(wù)規(guī)程
- XX村電排建設(shè)及維護(hù)合同書2025
- 個(gè)人股權(quán)抵押融資合同樣本
- 臨時(shí)促銷服務(wù)合同
- 中小企業(yè)融資合作合同協(xié)議
- 京東商城代運(yùn)營(yíng)合同模板
- 個(gè)人質(zhì)押貸款合同模板
- 某縣城區(qū)地下綜合管廊建設(shè)工程項(xiàng)目可行性實(shí)施報(bào)告
- 《架空輸電線路導(dǎo)線舞動(dòng)風(fēng)偏故障告警系統(tǒng)技術(shù)導(dǎo)則》
- 2024年計(jì)算機(jī)二級(jí)WPS考試題庫(kù)
- 廣東省廣州黃埔區(qū)2023-2024學(xué)年八年級(jí)上學(xué)期期末數(shù)學(xué)試卷(含答案)
- 法理學(xué)課件馬工程
- 《無菌檢查培訓(xùn)》課件
- 2024-2030年中國(guó)香菇行業(yè)銷售狀況及供需前景預(yù)測(cè)報(bào)告
- 高中英語(yǔ)必背3500單詞表(完整版)
- GB/T 44570-2024塑料制品聚碳酸酯板材
- 禁止送禮的協(xié)議書
- 2024年版《輸變電工程標(biāo)準(zhǔn)工藝應(yīng)用圖冊(cè)》
評(píng)論
0/150
提交評(píng)論