![[機(jī)械儀表]單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)2011修改_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/29/e5963e86-5340-420b-a140-a07d3303d13c/e5963e86-5340-420b-a140-a07d3303d13c1.gif)
![[機(jī)械儀表]單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)2011修改_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/29/e5963e86-5340-420b-a140-a07d3303d13c/e5963e86-5340-420b-a140-a07d3303d13c2.gif)
![[機(jī)械儀表]單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)2011修改_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/29/e5963e86-5340-420b-a140-a07d3303d13c/e5963e86-5340-420b-a140-a07d3303d13c3.gif)
![[機(jī)械儀表]單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)2011修改_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/29/e5963e86-5340-420b-a140-a07d3303d13c/e5963e86-5340-420b-a140-a07d3303d13c4.gif)
![[機(jī)械儀表]單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)2011修改_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-5/29/e5963e86-5340-420b-a140-a07d3303d13c/e5963e86-5340-420b-a140-a07d3303d13c5.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)單片機(jī)原理及接口技術(shù) 實(shí)驗(yàn)教學(xué)指導(dǎo)書(shū)洪榮晶 張永勝 編南京工業(yè)大學(xué)機(jī)械與動(dòng)力工程學(xué)院2011年2月目 錄第一章 dvcc(5286jh+)系列單片機(jī)仿真實(shí)驗(yàn)系統(tǒng)性能- 3第二章 mcs51實(shí)驗(yàn)系統(tǒng)安裝與啟動(dòng)- 4第三章 軟件實(shí)驗(yàn)- 5實(shí)驗(yàn)一 清零實(shí)驗(yàn)- 5實(shí)驗(yàn)二 拼字實(shí)驗(yàn)- 7實(shí)驗(yàn)三 數(shù)據(jù)傳送子程序- 9實(shí)驗(yàn)四 無(wú)符號(hào)雙字節(jié)快速乘法子程序- 12實(shí)驗(yàn)五 電腦時(shí)鐘(定時(shí)器、中斷綜合實(shí)驗(yàn))- 16第四章 硬件實(shí)驗(yàn)- 25 實(shí)驗(yàn)一 p3.3口輸入 p1口輸出- 25實(shí)驗(yàn)二 工業(yè)順序控制- 29實(shí)驗(yàn)三 8255控制交通燈- - 32實(shí)驗(yàn)四 簡(jiǎn)單i/o口擴(kuò)展實(shí)驗(yàn)- 36實(shí)驗(yàn)
2、五 a/d 轉(zhuǎn)換實(shí)驗(yàn)- 39實(shí)驗(yàn)六 d/a轉(zhuǎn)換實(shí)驗(yàn)- 42實(shí)驗(yàn)七 串并轉(zhuǎn)換實(shí)驗(yàn)- 45實(shí)驗(yàn)八 定時(shí)計(jì)數(shù)器8253a應(yīng)用- 48第五章 擴(kuò)展實(shí)驗(yàn)- 50 實(shí)驗(yàn)一 語(yǔ)音控制- 50實(shí)驗(yàn)二 步進(jìn)電機(jī)控制- 54實(shí)驗(yàn)三 直流電機(jī)調(diào)速實(shí)驗(yàn)- 56實(shí)驗(yàn)四 繼電器控制實(shí)驗(yàn)- 59第一章 dvcc(5286jh+)系列單片機(jī)仿真實(shí)驗(yàn)系統(tǒng)性能1 仿真、實(shí)驗(yàn)相結(jié)合。2 實(shí)驗(yàn)?zāi)K化結(jié)構(gòu),互不影響,通過(guò)連線又可將各模塊有機(jī)結(jié)合。3 實(shí)驗(yàn)內(nèi)容設(shè)置豐富、合理,滿(mǎn)足教學(xué)大綱要求。4 每項(xiàng)實(shí)驗(yàn)連線方便,既能滿(mǎn)足學(xué)生動(dòng)手能力愿望,又能充分發(fā)揮學(xué)生的創(chuàng)新能力,提高教學(xué)實(shí)驗(yàn)的質(zhì)量和效率。5 自帶集成調(diào)試環(huán)境,win9x/nt軟件平
3、臺(tái),含:源程序庫(kù)、芯片資料庫(kù)、原理圖庫(kù)、元器件位置圖庫(kù)、實(shí)驗(yàn)說(shuō)明、動(dòng)態(tài)調(diào)試工具庫(kù)。6 提供源程序編輯、匯編、鏈接。7 電路具有過(guò)壓保護(hù),確保系統(tǒng)安全、可靠工作。8 整機(jī)采用熱風(fēng)整平工藝基板、波峰焊接,實(shí)驗(yàn)連接接口采用圓孔插座,整機(jī)可靠性好。9 自帶eprom寫(xiě)入器,可對(duì)27128、2764eprom進(jìn)行寫(xiě)入。10 自帶鍵盤(pán)顯示器,進(jìn)口鍵座,專(zhuān)用彩色鍵帽,決無(wú)按鍵不可靠現(xiàn)象。11 系統(tǒng)用串行口、用戶(hù)用串行口相互獨(dú)立,在通過(guò)rs232與上位機(jī)聯(lián)機(jī)狀態(tài)下同樣可以調(diào)試用戶(hù)串行口程序。12 系統(tǒng)帶有示波器功能,通過(guò)rs232口,可將測(cè)得的信號(hào)顯示在上位機(jī)的屏幕上。該系統(tǒng)通過(guò)rs232口可連pc機(jī),在wi
4、n9x/nt軟件平臺(tái)進(jìn)行仿真開(kāi)發(fā)和實(shí)驗(yàn)。同時(shí)系統(tǒng)自帶鍵盤(pán)顯示器,無(wú)須計(jì)算機(jī)也能獨(dú)立工作。第二章 mcs51實(shí)驗(yàn)系統(tǒng)安裝與啟動(dòng) 2.1 mcs51實(shí)驗(yàn)系統(tǒng)安裝與啟動(dòng)1. dvcc系列實(shí)驗(yàn)系統(tǒng)在出廠時(shí)均為51狀態(tài) a.sk1位15置on,位610置off; b.sk2位12置on;c.sk3置on;d.sk4置off e.臥式kbb置51、96位置f.dl1dl4連1、22. 如果系統(tǒng)用于仿真外接用戶(hù)系統(tǒng),將40芯仿真電纜一頭插入系統(tǒng)中j6插座,另一頭插入用戶(hù)系統(tǒng)的8051cpu位置,注意插入方向,仿真頭上小紅點(diǎn)表示第一腳,對(duì)應(yīng)用戶(hù)8051cpu第一腳。3. 接上+5v電源,將隨機(jī)配備的2芯電源線
5、,紅線接入外置電源的+5v插孔,黑線接入外置電源地插座。上電后,dvcc系列實(shí)驗(yàn)系統(tǒng)上顯示“p.”閃動(dòng)。連pc機(jī)工作時(shí),必須將隨機(jī)配備的d型9芯插頭一端插入dvcc系統(tǒng)j2插座,另一端插入上位機(jī)串行口com1com2任選。然后按dvcc實(shí)驗(yàn)系統(tǒng)pcdbg鍵,再運(yùn)行上位機(jī)上的dvcc聯(lián)機(jī)軟件,雙方建立通信。 2.2 dvcc系列實(shí)驗(yàn)系統(tǒng)實(shí)驗(yàn)調(diào)試有關(guān)說(shuō)明1. 實(shí)驗(yàn)的一般步驟a. 運(yùn)行dvcc軟件b. 編寫(xiě)源程序、匯編排錯(cuò)、形成正確的源文件.asm,并生成中間文件.obj。c. 編譯、連接,形成最終目標(biāo)文件.asm(或.hex)。d. 裝載最終目標(biāo)文件到實(shí)驗(yàn)系統(tǒng)的仿真ram區(qū)。e. 調(diào)試實(shí)驗(yàn)程序,若
6、有錯(cuò)則重復(fù)bd。2. 實(shí)驗(yàn)過(guò)程中的幾點(diǎn)特別說(shuō)明:a. 在進(jìn)入實(shí)驗(yàn)前請(qǐng)仔細(xì)閱讀本說(shuō)明。b. 本指導(dǎo)書(shū)理圖上的粗實(shí)線部分表示用戶(hù)實(shí)驗(yàn)時(shí)要用導(dǎo)線連接的。c. 所有實(shí)驗(yàn)都是相互獨(dú)立的。 d. 指導(dǎo)書(shū)中涉及打印機(jī)、鍵盤(pán)顯示接口芯片8279等請(qǐng)參見(jiàn)相關(guān)書(shū)籍。e. 指導(dǎo)書(shū)中每個(gè)實(shí)驗(yàn)的實(shí)驗(yàn)步驟僅供參考。第一個(gè)實(shí)驗(yàn)的實(shí)驗(yàn)步驟很詳盡,望學(xué)生仔細(xì)閱讀,以便掌握如何裝載實(shí)驗(yàn)程序、運(yùn)行實(shí)驗(yàn)程序、觀察實(shí)驗(yàn)結(jié)果。相對(duì)來(lái)說(shuō),第二個(gè)實(shí)驗(yàn)以后的實(shí)驗(yàn)步驟較為簡(jiǎn)單。3. 實(shí)驗(yàn)過(guò)程中實(shí)驗(yàn)結(jié)果的查看a. 仿真實(shí)驗(yàn)系統(tǒng)除在連續(xù)運(yùn)行或和上位機(jī)聯(lián)機(jī)狀態(tài)下,一般不按總清鍵,只按mon鍵返回監(jiān)控。b. 實(shí)驗(yàn)中某些實(shí)驗(yàn)結(jié)果的查看可采用下列辦法:以單
7、步方式運(yùn)行后,再進(jìn)入存貯器、寄存器檢查、修改等狀態(tài),以查看結(jié)果。在合適的地方設(shè)置斷點(diǎn)或結(jié)束地址,全速運(yùn)行程序,當(dāng)程序運(yùn)行到斷點(diǎn)時(shí)會(huì)自動(dòng)停下來(lái),再進(jìn)入存貯器、寄存器檢查、修改等狀態(tài),以查看結(jié)果。開(kāi)啟有關(guān)變量窗、寄存器窗口,以連續(xù)單步方式運(yùn)行程序,在窗口中觀察運(yùn)行結(jié)果。第三章 軟件實(shí)驗(yàn) 實(shí)驗(yàn)一 清零實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康恼莆諈R編語(yǔ)言設(shè)計(jì)和調(diào)試方法,熟悉鍵盤(pán)操作。二、實(shí)驗(yàn)內(nèi)容把7000h70ffh的內(nèi)容清零。三、實(shí)驗(yàn)程序框圖四、實(shí)驗(yàn)程序:org 0030hclear: mov r0,#00hmov dptr,#7000hclear1: clr amovx dptr,ainc dptrinc r0cjne
8、r0,#00h,clear1sjmp clearend五、實(shí)驗(yàn)步驟:1、當(dāng)dvcc單片機(jī)仿真實(shí)驗(yàn)系統(tǒng)獨(dú)立工作時(shí) (1) 將固化區(qū)eprom中實(shí)驗(yàn)程序目標(biāo)碼傳送到仿真ram區(qū),操作如下:輸入0后按f1鍵,再輸入0fff后按f2鍵,再輸入0后按epmov稍等,系統(tǒng)返回初始狀態(tài),顯示“p.”。 (2) 根據(jù)表21所示,通過(guò)鍵盤(pán)輸入實(shí)驗(yàn)程序的起始地址0030h,再按執(zhí)行鍵exec,表示連續(xù)運(yùn)行該程序,稍侯,按reset鍵退出運(yùn)行;如果以單步運(yùn)行程序,則輸入0030后,按setp鍵,按一次執(zhí)行一條語(yǔ)句,直到執(zhí)行到003ch為止,按mon鍵退出運(yùn)行;如果以斷點(diǎn)運(yùn)行程序,則先輸入003ch(斷點(diǎn)地址),再按
9、f1鍵,再輸入0030(起始地址),然后按exec鍵執(zhí)行程序,當(dāng)執(zhí)行到003ch時(shí)自動(dòng)停下來(lái),此時(shí)按mon鍵退出。 (3) 用存貯器讀寫(xiě)方法檢查7000h70ffh中的內(nèi)容應(yīng)全是00h。2、當(dāng)dvcc仿真實(shí)驗(yàn)系統(tǒng)聯(lián)pc機(jī)時(shí)(1) 在閃動(dòng)“p.”狀態(tài),按pcdbg鍵;(2) 在pc機(jī)處于在win95/98軟件平臺(tái)下,單擊dvcc圖標(biāo)。(3) 在“系統(tǒng)設(shè)置”選項(xiàng)中設(shè)定仿真模式為內(nèi)程序、內(nèi)數(shù)據(jù)。對(duì)硬件實(shí)驗(yàn)4、5、6、7、8、9、12、15而言,仿真模式應(yīng)設(shè)定為內(nèi)程序、外數(shù)據(jù)。(4) 根據(jù)屏幕提示進(jìn)入51/96動(dòng)態(tài)調(diào)試菜單。(5) 聯(lián)接dvcc實(shí)驗(yàn)系統(tǒng)(ctrl+h)(6) 裝載目標(biāo)文件(ctrl+l
10、)(7) 設(shè)置pc起始地址(8) 從起始地址開(kāi)始連續(xù)運(yùn)行程序(f9)或單步(f8)或斷點(diǎn)運(yùn)行程序(9) 單步、斷點(diǎn)運(yùn)行完后,在存貯器窗口內(nèi)檢查7000h70ffh中的內(nèi)容是否全為00h一、 思考:假使要把700070ffh中的內(nèi)容改成ff,如何編制程序。實(shí)驗(yàn)二 拼字實(shí)驗(yàn) 一、實(shí)驗(yàn)?zāi)康倪M(jìn)一步掌握匯編語(yǔ)言設(shè)計(jì)和調(diào)試方法。二、實(shí)驗(yàn)內(nèi)容把7000h、7001h的低位相拼后送入7002h,一般本程序用于把顯示緩沖區(qū)的數(shù)據(jù)取出拼裝成一個(gè)字節(jié)。三、實(shí)驗(yàn)程序框圖 (7000h)送a,屏蔽高位(7001h)送a,屏蔽高位開(kāi)始交換高低位后送ba和b相或后送7002h結(jié)束四、實(shí)驗(yàn)程序:org 0070hpword:
11、mov dptr,#7000hmovx a,dptranl a,#0fhswap amov b,ainc dptrmovx a,dptranl a,#0fhorl a,binc dptrmovx dptr,apword1: sjmp pword1end五、實(shí)驗(yàn)步驟: 將7000h單元中內(nèi)容置03h,7001h單元中的內(nèi)容置04h 用單步或斷點(diǎn)方式從0070h開(kāi)始運(yùn)行程序(輸入0070后按step鍵為單步運(yùn)行)。 按mon鍵退出。 檢查7002h中的內(nèi)容應(yīng)為34h實(shí)驗(yàn)三 數(shù)據(jù)傳送子程序一、實(shí)驗(yàn)?zāi)康恼莆誶am中的數(shù)據(jù)操作。二、實(shí)驗(yàn)內(nèi)容把(r2、r3)源ram區(qū)首址內(nèi)的(r6、r7)個(gè)字節(jié)數(shù)據(jù),傳送
12、到(r4、r5)目的ram區(qū)。三、實(shí)驗(yàn)程序框圖 開(kāi)始源地址內(nèi)容送a(a)送目的地址源地址加1目的地址加1字節(jié)數(shù)到嗎?結(jié)束ny四、實(shí)驗(yàn)程序:org 0090hdmve: mov sp,#70hmov dpl,r3mov dph,r2movx a,dptrmov dpl,r5mov dph,r4movx dptr,acjne r3,#0ffh,dmve1inc r2dmve1:inc r3cjne r5,#0ffh,dmve2inc r4dmve2:inc r5cjne r7,#00h,dmve5cjne r6,#00h,dmve6mov r0,7ehmov a,#0ffhmov r4,#06hd
13、mve3:mov r0,adec r0djnz r4,dmve3mov 7eh,#8chdmve4:lcall dispdsjmp dmve4dmve5:dec r7sjmp dmvedmve6:dec r7dec r6sjmp dmvedispd:setb 0d4hmov r1,#7ehmov r2,#20hmov r3,#00hdispd1: mov dptr,#0ff21hmov a,r2movx dptr,amov a,r1mov dptr,#0ff22hmovx dptr,adispd2: djnz r3,dispd2dec r1clr cmov a,r2rrc amov r2,aj
14、nz dispd1mov a,#0ffhmov dptr,#0ff22hmovx dptr,aclr 0d4hretend五、實(shí)驗(yàn)步驟: 在r2、r3中裝入源首址例如6000h,r4、r5中裝入目的地址例如7000h, r6、r7中裝入字節(jié)數(shù)0fffh。 用單步、斷點(diǎn)方法從起始地址0090h開(kāi)始運(yùn)行實(shí)驗(yàn)程序(輸入0090后按step鍵為單步運(yùn)行;先輸入末地址00c4后按f1鍵,再輸入0090后,按exec鍵為斷點(diǎn)運(yùn)行)。 如果是斷點(diǎn)運(yùn)行,運(yùn)行到斷點(diǎn)處會(huì)自動(dòng)停下來(lái),再按mon鍵返回“p.”態(tài)。如果是單步運(yùn)行,運(yùn)行到末址00c4時(shí),按mon鍵返回即“p.”態(tài)。 檢查7000h開(kāi)始的內(nèi)容和6000h
15、開(kāi)始的內(nèi)容是否完全相同。實(shí)驗(yàn)四 無(wú)符號(hào)雙字節(jié)快速乘法子程序一、實(shí)驗(yàn)?zāi)康恼莆誱cs51匯編語(yǔ)言程序設(shè)計(jì)方法。二、預(yù)備知識(shí)本程序是利用單字節(jié)的乘法指令,根據(jù)下面的公式進(jìn)行乘法運(yùn)算的。(r2r3)*(r6r7)=(r2)*28+(r3)*(r6)*28+(r7)=(r2)*(r6)*216+(r2)*(r7)+(r3)*(r6)*28+(r3)*(r7)三、實(shí)驗(yàn)內(nèi)容將(r2r3)和(r6r7)中雙字節(jié)無(wú)符號(hào)整數(shù)相乘,積送r4r5r6r7中。四、實(shí)驗(yàn)程序框圖 開(kāi)始被乘數(shù)和乘數(shù)低字節(jié)相乘積高位送r5,低位送r7被乘數(shù)高字節(jié)和乘數(shù)低字節(jié)相乘積低位加r5r4,高位加cyr5被乘數(shù)低字節(jié)和乘數(shù)高字節(jié)相乘積低位
16、加r4r6,高位加r5r5,cyf0被乘數(shù)和乘數(shù)高字節(jié)相乘積低位加r5,cyr5,高位加f0r4結(jié)束五、實(shí)驗(yàn)程序:org 01d0hmov sp,#50hmov dptr,#7000hmovx a,dptrmov r2,ainc dptrmovx a,dptrmov r3,ainc dptrmovx a,dptrmov r6,ainc dptrmovx a,dptrmov r7,ancmul:mov a,r3mov b,r7mul abxch a,r7mov r5,bmov b,r2mul abadd a,r5mov r4,aclr aaddc a,bmov r5,amov a,r6mov b
17、,r3mul abadd a,r4xch a,r6xch a,baddc a,r5mov r5,amov psw.5,cmov a,r2mul abadd a,r5mov r5,aclr amov acc.0,cmov c,psw.5addc a,bmov r4,ainc dptrmov a,r4movx dptr,ainc dptrmov a,r5movx dptr,ainc dptrmov a,r6movx dptr,ainc dptrmov a,r7movx dptr,amov r0,#7ehmov a,#0ffhmov r4,#06hncmul1: mov r0,adec r0mov
18、7eh,#8ch ;disp pdjnz r4,ncmul1ncmul2: lcall dispdsjmp ncmul2dispd:setb 0d4hmov r1,#7ehmov r2,#20hmov r3,#00hdispd1: mov dptr,#0ff21hmov a,r2movx dptr,amov a,r1mov dptr,#0ff22hmovx dptr,adispd2: djnz r3,dispd2dec r1clr cmov a,r2rrc amov r2,ajnz dispd1mov a,#0ffhmov dptr,#0ff22hmovx dptr,aclr 0d4hrete
19、nd六、實(shí)驗(yàn)步驟: 7000h7001h中存放無(wú)符號(hào)整數(shù)作為被乘數(shù)000ah,7002h7003h中存放乘數(shù)0019h。 用連續(xù)或單步從起始地址01d0h運(yùn)行本實(shí)驗(yàn)程序(輸入01d0后按exec鍵或step鍵)。 用mon或reset鍵退出。 檢查兩個(gè)數(shù)的乘積70047007單元中的內(nèi)容應(yīng)為000000fah。實(shí)驗(yàn)五 電腦時(shí)鐘(定時(shí)器、中斷綜合實(shí)驗(yàn))一、實(shí)驗(yàn)?zāi)康?熟悉mcs51定時(shí)器、串行口和中斷初始化編程方法,了解定時(shí)器應(yīng)用在實(shí)時(shí)控制中程序的設(shè)計(jì)技巧。 編寫(xiě)程序,從dvcc系列單片機(jī)實(shí)驗(yàn)儀鍵盤(pán)上輸入時(shí)間初值,用定時(shí)器產(chǎn)生0.1s定時(shí)中斷,對(duì)時(shí)鐘計(jì)數(shù)器計(jì)數(shù),并將數(shù)值實(shí)時(shí)地送數(shù)碼管顯示。二、實(shí)驗(yàn)
20、程序框圖 開(kāi)始清顯示緩沖區(qū)初始化定時(shí)計(jì)數(shù)器顯示初值000000從鍵盤(pán)設(shè)置時(shí)鐘初值判時(shí)鐘初值合乎規(guī)定否?開(kāi)定時(shí)器顯示器顯示當(dāng)前時(shí)鐘值 主程序: n y 定時(shí)器中斷服務(wù)程序:定時(shí)中斷恢復(fù)初值,保護(hù)1秒到嗎?0.1秒加1秒加1分加1時(shí)加1時(shí)單元清零堆棧返回nnnny 0.1秒單元清零,60秒到嗎? y秒單元清零,60分到嗎? y分單元清零,24小時(shí)到嗎? y四、實(shí)驗(yàn)程序:org 000bhljmp tintruporg 0340h;sy11clock0: mov sp,#50hmov r0,#7ehmov r4,#06hclr aclock1: mov r0,adec r0djnz r4,clock
21、1mov a,#7ehmov dptr,#1fffhmovx dptr,amov 76h,#00hmov 77h,#00hlcall keydisp0lcall disda0mov tmod,#01horl ie,#82hmov tl0,#0b7hmov th0,#3chmov 23h,#00hsetb tr0clock2: lcall displcall disda0sjmp clock2disda0: mov r0,#79hmov a,22hacall disdamov a,21hacall disdamov a,20hacall disdaretdisda:mov r1,aacall d
22、isda1mov a,r1swap adisda1: anl a,#0fhmov r0,ainc r0rettintrup: mov tl0,#0b7hmov th0,#3chpush pswpush accsetb 0d3hinc 23hmov a,23hcjne a,#0ah,tintrup1mov 23h,#00hmov a,22hinc ada amov 22h,acjne a,#60h,tintrup1mov 22h,#00hmov a,21hinc ada amov 21h,acjne a,#60h,tintrup1mov 21h,#00hmov a,20hinc ada amov
23、 20h,acjne a,#24h,tintrup1mov 20h,#00htintrup1:pop accpop pswretikeydisp0:lcall keyjnc fanckeydatakey:lcall datakey1db 79h,7ehsjmp keydisp0fanckey:cjne a,#16h,keydisp0mov a,7ahswap aorl a,79hmov 22h,acjne a,#60h,fanckey1fanckey1:jnc fanckey4mov a,7chswap aorl a,7bhmov 21h,acjne a,#60h,fanckey2fancke
24、y2:jnc fanckey4mov a,7ehswap aorl a,7dhmov 20h,acjne a,#24h,fanckey3fanckey3:jnc fanckey4retfanckey4:clr tr0ljmp clock0datakey1:mov r4,amov dptr,#1fffhmovx a,dptrmov r1,amov a,r4mov r1,aclr apop 83hpop 82hmovc a,a+dptrinc dptrcjne a,01h,datakey3dec r1clr amovc a,a+dptrdatakey2:push 82hpush 83hmov dp
25、tr,#1fffhmovx dptr,apop 83hpop 82hinc dptrpush 82hpush 83hretdatakey3:dec r1mov a,r1sjmp datakey2key0:mov r6,#20hmov dptr,#1fffhmovx a,dptrmov r0,amov a,r0mov r7,amov a,#10hmov r0,akey3:lcall keydispjnb 0e5h,key2djnz r6,key3mov dptr,#1fffh ;*movx a,dptrmov r0,a ;*mov a,r7mov r0,akey:mov r6,#50hkey1:
26、lcall keydispjnb 0e5h,key2 ;*djnz r6,key1sjmp key0key2:mov r6,amov a,r7mov r0,amov a,r6 ;a=keydatakeyend: retkeydisp:lcall displcall keysmmov r4,a ;keydatamov r1,#76h ;datasame timemov a,r1mov r2,ainc r1mov a,r1mov r3,a ;last keydataxrl a,r4 ;two time keydatamov r3,04h ;new keydata-r3mov r4,02h ;tim
27、e-r4jz keydisp1mov r2,#88hmov r4,#88hkeydisp1:dec r4mov a,r4xrl a,#82hjz keydisp2mov a,r4 ;r4=timexrl a,#0ehjz keydisp2mov a,r4orl a,r4jz keydisp3mov r4,#20h ;r4=20hdec r2ljmp keydisp5keydisp3:mov r4,#0fhkeydisp2:mov r2,04hmov r4,03hkeydisp5:mov r1,#76hmov a,r2mov r1,ainc r1mov a,r3mov r1,amov a,r4
28、;*cjne r3,#10h,keydisp4keydisp4:retdisp:setb 0d4hmov r1,#7ehmov r2,#20hmov r3,#00hdisp1:mov dptr,#0ff21hmov a,r2movx dptr,amov dptr,#datacomov a,r1movc a,a+dptrmov dptr,#0ff22hmovx dptr,adisp2:djnz r3,disp2dec r1clr cmov a,r2rrc amov r2,ajnz disp1mov a,#0ffhmov dptr,#0ff22hmovx dptr,aclr 0d4hretdata
29、co: db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90hdb 88h,83h,0c6h,0a1h,86h,8eh,0ffh,0ch,89h,0dehkeysm:setb 0d4hmov a,#0ffhmov dptr,#0ff22hmovx dptr,a ;off dispkeysm0: mov r2,#0fehmov r3,#08hmov r0,#00hkeysm1: mov a,r2mov dptr,#0ff21hmovx dptr,anoprl amov r2,amov dptr,#0ff23hmovx a,dptrcpl anopnopno
30、panl a,#0fhjnz keysm2inc r0;nokeydjnz r3,keysm1sjmp keysm10keysm2: ;ykeycpl ajb 0e0h,keysm3mov a,#00hsjmp keysm7keysm3: jb 0e1h,keysm4mov a,#08hsjmp keysm7keysm4: jb 0e2h,keysm5mov a,#10hsjmp keysm7keysm5: jb 0e3h,keysm10mov a,#18hkeysm7: add a,r0clr 0d4hcjne a,#10h,keysm9keysm9: jnc keysm10mov dptr
31、,#keydatamovc a,a+dptrkeysm10:retkeydata:db 07h,04h,08h,05h,09h,06h,0ah,0bhdb 01h,00h,02h,0fh,03h,0eh,0ch,0dhend五、實(shí)驗(yàn)步驟: 用連續(xù)方式從起始地址0340h開(kāi)始執(zhí)行程序(輸入0340后輕按exec鍵)。 續(xù)運(yùn)行程序,在鍵盤(pán)上輸入時(shí)間初值。如果輸入時(shí)分秒初值超范圍,則顯示000000后要求重新設(shè)置初值,初值的默認(rèn)值為000000。 再次按exec鍵時(shí)鐘開(kāi)始工作,數(shù)碼管上實(shí)時(shí)顯示時(shí)間值。六、思考:(1) 電子鐘走時(shí)精度和程序中哪些常數(shù)有關(guān)?(2) 修改程序使定時(shí)器工作方式改變,調(diào)節(jié)有關(guān)
32、參數(shù),進(jìn)一步提高精度。第四章 硬件實(shí)驗(yàn)實(shí)驗(yàn)一 p3.3口輸入 p1口輸出一、實(shí)驗(yàn)?zāi)康?掌握p3口、p1口簡(jiǎn)單使用。 學(xué)習(xí)延時(shí)程序的編寫(xiě)和使用。二、實(shí)驗(yàn)內(nèi)容1. p3.3口做輸入口,外接一脈沖,每輸入一個(gè)脈沖,p1口按十六進(jìn)制加一。2. p1口做輸出口,編寫(xiě)程序,使p1口接的8個(gè)發(fā)光二極管l1l8按16進(jìn)制加一方式點(diǎn)亮發(fā)光二極管。三、實(shí)驗(yàn)說(shuō)明 1、 p1口是準(zhǔn)雙向口,它作為輸出口時(shí)與一般的雙向口使用方法相同,由準(zhǔn)雙向口結(jié)構(gòu)可知:當(dāng)p1口作為輸入口時(shí),必須先對(duì)它置高電平,使內(nèi)部mos管截止,因內(nèi)部上拉電阻是20k40k,故不會(huì)對(duì)外部輸入產(chǎn)生影響。若不先對(duì)它置高,且原來(lái)是低電平,則mos管導(dǎo)通,讀入
33、的數(shù)據(jù)是不正確的。2、 延時(shí)子程序的延時(shí)計(jì)算問(wèn)題。對(duì)于延時(shí)程序 delay :mov r6, #00h delay1:mov r7, #80h djnz r7, $ djnz r6, delay1查指令表可知mov、djnz指令均需用兩個(gè)機(jī)器周期,而一個(gè)機(jī)器周期時(shí)間長(zhǎng)度為12/ 6.0mhz,所以該段指令執(zhí)行時(shí)間為:(80+1)256+1)2(126000000)=132.1ms四、實(shí)驗(yàn)程序框圖 p3.3真的為高嗎?p3.3為低嗎?開(kāi) 始p3.3為高嗎延 時(shí)延 時(shí)a+1送p1口循 環(huán)nnnyyy主程序: nnyr6設(shè)初值ffh延時(shí)子程序:r7設(shè)初值ffhr7-1=0否?r6-1=0否返回y五、
34、實(shí)驗(yàn)接線圖:六、實(shí)驗(yàn)程序:org 0540hha1s:mov a,#00hha1s1:jb p3.3,ha1s1mov r2,#20hlcall delayjb p3.3,ha1s1ha1s2:jnb p3.3,ha1s2mov r2,#20hlcall delayjnb p3.3,ha1s2inc apush acccpl amov p1,apop accajmp ha1s1delay:push 02hdelay1: push 02hdelay2: push 02hdelay3: djnz r2,delay3pop 02hdjnz r2,delay2pop 02hdjnz r2,delay1
35、pop 02hdjnz r2,delayretend七、實(shí)驗(yàn)步驟 p3.3用插針連至k1, p1.0p1.7用插針連至l1l8。 從起始地址0540h開(kāi)始連續(xù)運(yùn)行程序(輸入0540后按exec鍵)。 開(kāi)關(guān)k1每撥動(dòng)一次,l1l8發(fā)光二極管按16進(jìn)制方式加一點(diǎn)亮。實(shí)驗(yàn)二 工業(yè)順序控制一、實(shí)驗(yàn)?zāi)康恼莆展I(yè)順序控制程序的簡(jiǎn)單編程,中斷的使用。二、實(shí)驗(yàn)預(yù)備知識(shí) 在工業(yè)控制中,象沖壓、注塑、輕紡、制瓶等生產(chǎn)過(guò)程,都是一些斷續(xù)生產(chǎn)過(guò)程,按某種程序有規(guī)律地完成預(yù)定的動(dòng)作,對(duì)這類(lèi)斷續(xù)生產(chǎn)過(guò)程的控制稱(chēng)順序控制,例注塑機(jī)工藝過(guò)程大致按“合模注射延時(shí)開(kāi)模產(chǎn)伸產(chǎn)退”順序動(dòng)作,用單片機(jī)最易實(shí)現(xiàn)三、實(shí)驗(yàn)內(nèi)容 8032的p
36、1.0p1.6控制注塑機(jī)的七道工序,現(xiàn)模擬控制七只發(fā)光二極管的點(diǎn)亮,高電平有效,設(shè)定每道工序時(shí)間轉(zhuǎn)換為延時(shí),p3.4為開(kāi)工啟動(dòng)開(kāi)關(guān),低電平啟動(dòng)。p3.3為外故障輸入模擬開(kāi)關(guān),p3.3為0時(shí)不斷告警,p1.7為報(bào)警聲音輸出,設(shè)定6道工序只有一位輸出,第七道工序三位有輸出。四、實(shí)驗(yàn)說(shuō)明: 實(shí)驗(yàn)中用外部中斷0,編中斷服務(wù)程序的關(guān)鍵是: 1. 保護(hù)進(jìn)入中斷時(shí)的狀態(tài),并在退出中斷之前恢復(fù)進(jìn)入的狀態(tài)。 2. 必須在中斷程序中設(shè)定是否允許中斷重入,即設(shè)置ex0位。一般中斷程序進(jìn)入時(shí)應(yīng)保護(hù)psw、acc以及中斷程序使用但非其專(zhuān)用的寄存器,本實(shí)驗(yàn)中未涉及。五、實(shí)驗(yàn)程序框圖:主程序:開(kāi)始 中斷、p1口、p3口初始
37、化p1口全低工序2延時(shí)工序1延時(shí)等開(kāi)工工序7延時(shí) 恢復(fù)現(xiàn)場(chǎng)故障清除了嗎?返回報(bào) 警保護(hù)現(xiàn)場(chǎng)關(guān)輸出中斷服務(wù)子程序:yn六、實(shí)驗(yàn)接線圖:七、實(shí)驗(yàn)程序:org 0013hljmp ha2s3org 0580h ha2s:mov p1,#07fhorl p3,#00hha2s1:jnb p3.4,ha2s1orl ie,#84horl ip,#04hmov psw,#00hmov sp,#53hha2s2:mov p1,#07ehacall ha2s7mov p1,#07dhacall ha2s7mov p1,#07bhacall ha2s7mov p1,#077hacall ha2s7mov p1,
38、#06fhacall ha2s7mov p1,#05fhacall ha2s7mov p1,#03fhacall ha2s7sjmp ha2s2ha2s3:mov b,r2ha2s4:mov p1,#07fhmov 20h,#0a0hha2s5:setb p1.7acall ha2s6clr p1.7acall ha2s6djnz 20h,ha2s5clr p1.7acall ha2s6jnb p3.2,ha2s4mov r2,bretiha2s6:mov r2,#06hacall delayretha2s7:mov r2,#30hacall delayretdelay:push 02hdel
39、ay1: push 02hdelay2: push 02hdelay3: djnz r2,delay3pop 02hdjnz r2,delay2pop 02hdjnz r2,delay1pop 02hdjnz r2,delayretend八、實(shí)驗(yàn)步驟: p3.4連k1,p3.3連k2,p1.0p1.6分別連到l1l7,p1.7連sin(電子音響輸入端)。 k1開(kāi)關(guān)撥在上面,k2撥在上面。 用連續(xù)方式從起始地址0580h開(kāi)始運(yùn)行程序(輸入0580后按exec鍵),此時(shí)應(yīng)在等待開(kāi)工狀態(tài)。 k1撥至下面(顯低電平),各道工序應(yīng)正常運(yùn)行。 k2撥至下面(低電平),應(yīng)有聲音報(bào)警(人為設(shè)置故障)。k2撥至
40、上面(高電平),即排除故障,程序應(yīng)從剛才報(bào)警的那道工序繼續(xù)執(zhí)行。九、思考:修改程序,使每道工序中有多位輸出。實(shí)驗(yàn)三 8255控制交通燈一、實(shí)驗(yàn)?zāi)康模?了解8255芯片的結(jié)構(gòu)及編程方法,學(xué)習(xí)模擬交通燈控制的實(shí)現(xiàn)方法。二、實(shí)驗(yàn)內(nèi)容: 用8255做輸出口,控制十二個(gè)發(fā)光二極管燃滅,模擬交通燈管理。三、實(shí)驗(yàn)說(shuō)明: 1. 因?yàn)楸緦?shí)驗(yàn)是交通燈控制實(shí)驗(yàn),所以要先了解實(shí)際交通燈的變化情況和規(guī)律。假設(shè)一個(gè)十字路口為東西南北走向。初始狀態(tài)0為東西紅燈,南北紅燈。然后轉(zhuǎn)狀態(tài)1東西綠燈通車(chē),南北紅燈。過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)2,東西綠燈滅,黃燈閃爍幾次,南北仍然紅燈。再轉(zhuǎn)狀態(tài)3,南北綠燈通車(chē),東西紅燈。過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)4,南
41、北綠燈滅,閃幾次黃燈,延時(shí)幾秒,東西仍然紅燈,最后循環(huán)至狀態(tài)1。開(kāi)始8255初始化四個(gè)路口紅燈亮東西綠燈亮,南北紅燈亮,延時(shí)東西黃燈閃爍,南北紅燈亮,延時(shí)東西紅燈亮,南北綠燈亮,延時(shí)東西紅燈亮,南北黃燈閃爍,延時(shí)四、實(shí)驗(yàn)程序框圖:五、實(shí)驗(yàn)接線圖:六、實(shí)驗(yàn)程序:org 0630hha4s:mov sp,#60hmov dptr,#0ff2bhmov a,#80hmovx dptr,amov dptr,#0ff29hmov a,#49hmovx dptr,ainc dptrmov a,#49hmovx dptr,amov r2,#25hlcall delayha4s3:mov dptr,#0ff2
42、9hmov a,#08hmovx dptr,ainc dptrmov a,#61hmovx dptr,amov r2,#55hlcall delaymov r7,#05hha4s1: mov dptr,#0ff29hmov a,#04hmovx dptr,ainc dptrmov a,#51hmovx dptr,amov r2,#20hlcall delaymov dptr,#0ff29hmov a,#00hmovx dptr,ainc dptrmov a,#41hmovx dptr,amov r2,#20hlcall delaydjnz r7,ha4s1mov dptr,#0ff29hmov
43、 a,#03hmovx dptr,ainc dptrmov a,#0chmovx dptr,amov r2,#55hlcall delaymov r7,#05hha4s2:mov dptr,#0ff29hmov a,#02hmovx dptr,ainc dptrmov a,#8ahmovx dptr,amov r2,#20hlcall delaymov dptr,#0ff29hmov a,#02hmovx dptr,ainc dptrmov a,#08hmovx dptr,amov r2,#20hlcall delaydjnz r7,ha4s2ljmp ha4s3delay: push 02hdelay1: push 02hdelay2: push 02hdelay3: djnz r2,delay3pop 02hdjnz r2,delay2pop 02hdjnz r2,delay1pop 02hdjnz r2,delayretend七、實(shí)驗(yàn)步驟: 8255 pc0pc7、pb0pb3依次接發(fā)光二極管l1l12。 以連續(xù)方式從0630h開(kāi)始執(zhí)行程序,初始態(tài)為四個(gè)路口的紅燈全亮之后,東西路口的綠
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- SB/T 11235-2023人像攝影服務(wù)機(jī)構(gòu)誠(chéng)信評(píng)價(jià)規(guī)范
- 2025年軍隊(duì)文職人員招聘之軍隊(duì)文職管理學(xué)與服務(wù)全真模擬考試試卷A卷含答案
- 2025年軍隊(duì)文職人員招聘之軍隊(duì)文職管理學(xué)提升訓(xùn)練試卷B卷附答案
- 新泰數(shù)學(xué)初一試題及答案
- 安全防火知識(shí)培訓(xùn)課件
- 2025年黨史競(jìng)賽知識(shí)題庫(kù)50題及答案
- 監(jiān)理基礎(chǔ)知識(shí)培訓(xùn)課件
- 人工智能醫(yī)療輔助系統(tǒng)應(yīng)用及操作指南
- 唐宋八大家之一王安石介紹與作品欣賞教案
- 公司股份制改革法律文件匯編手冊(cè)
- 育英學(xué)校與社區(qū)及家長(zhǎng)聯(lián)系制度
- 北京豐臺(tái)區(qū)2024第二批事業(yè)單位招聘55人歷年公開(kāi)引進(jìn)高層次人才和急需緊缺人才筆試參考題庫(kù)(共500題)答案詳解版
- 枯死松樹(shù)清理服務(wù)投標(biāo)方案(完整技術(shù)標(biāo))
- 第4課 中古時(shí)期的亞洲(教學(xué)課件)-【中職專(zhuān)用】《世界歷史》同步課堂(同課異構(gòu))(高教版2023?基礎(chǔ)模塊)
- 《監(jiān)理企業(yè)安全責(zé)任清單(2.0版)參考模板》
- 小區(qū)停車(chē)收費(fèi)方案
- 《讓我們的家更美好》教學(xué)設(shè)計(jì)
- 提升漁業(yè)與水產(chǎn)養(yǎng)殖技術(shù)的高效養(yǎng)殖模式
- 曲率系數(shù)不均勻系數(shù)自動(dòng)計(jì)算
- 垃圾分揀項(xiàng)目可行性報(bào)告
- 陜09J08 樓梯 欄桿 欄板圖集
評(píng)論
0/150
提交評(píng)論