單片機(jī)原理實(shí)驗(yàn)指導(dǎo)_第1頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)_第2頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)_第3頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)_第4頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目錄第1章實(shí)驗(yàn)臺(tái)使用說(shuō)明- 1 -1.1 實(shí)驗(yàn)臺(tái)總體結(jié)構(gòu)- 1 -1.2 通用實(shí)驗(yàn)?zāi)K- 1 -1.2.1 邏輯電平開(kāi)關(guān)電路- 1 -1.2.2 LED單色燈顯示電路- 3 -1.2.3 信號(hào)源電路- 3 -1.2.4 雙色燈電路- 3 -1.2.5 繼電器及驅(qū)動(dòng)電路- 3 -1.2.6 單脈沖電路- 4 -1.2.7 模擬電壓信號(hào)輸入電路- 4 -1.2.8 電源模塊- 4 -1.2.9 打印機(jī)接口插座- 4 -1.3 實(shí)驗(yàn)臺(tái)使用注意事項(xiàng)- 5 -1.3.1 實(shí)驗(yàn)時(shí)取下自檢接口卡- 5 -1.3.2 系統(tǒng)切換- 5 -1.3.3 “自鎖緊插孔”使用方法- 5 -1.3.4 嚴(yán)禁帶電連接、拔插

2、、更改實(shí)驗(yàn)用的導(dǎo)線- 5 -第2章 LCA51ET軟件調(diào)試- 6 -2.1 LCA51ET性能特點(diǎn)- 6 -2.2 LCA51ET軟件使用介紹- 6 -2.3熱鍵表- 9 -第3章實(shí)驗(yàn)指導(dǎo)- 10 -3.2 P1口輸入輸出實(shí)驗(yàn)- 10 -3.2.1 實(shí)驗(yàn)?zāi)康? 11 -3.2.2 實(shí)驗(yàn)預(yù)習(xí)要求- 12 -3.2.3 實(shí)驗(yàn)內(nèi)容- 12 -3.2.4 實(shí)驗(yàn)報(bào)告- 17 -實(shí)驗(yàn)成績(jī)- 19 -3.3 定時(shí)器實(shí)驗(yàn)/計(jì)數(shù)器實(shí)驗(yàn)- 19 -3.3.1 實(shí)驗(yàn)?zāi)康? 22 -3.3.2 實(shí)驗(yàn)預(yù)習(xí)要求- 22 -3.3.3 實(shí)驗(yàn)內(nèi)容- 22 -3.3.4 實(shí)驗(yàn)報(bào)告- 27 -實(shí)驗(yàn)成績(jī)- 29 -3.5 模/數(shù)轉(zhuǎn)

3、換實(shí)驗(yàn)- 29 -3.5.1 實(shí)驗(yàn)?zāi)康? 30 -3.5.2 實(shí)驗(yàn)預(yù)習(xí)要求- 30 -實(shí)驗(yàn)內(nèi)容- 30 -3.5.4 實(shí)驗(yàn)報(bào)告- 32 -實(shí)驗(yàn)成績(jī)- 34 -第1章實(shí)驗(yàn)臺(tái)使用說(shuō)明單片機(jī)原理實(shí)驗(yàn)臺(tái)選用上海航宏高科技有限公司生產(chǎn)的AEDK-T598D教學(xué)實(shí)驗(yàn)系統(tǒng)。該實(shí)驗(yàn)系統(tǒng)由AEDK-T598D實(shí)驗(yàn)臺(tái)、標(biāo)準(zhǔn)RS232(9針)串行通訊電纜、系統(tǒng)計(jì)算機(jī)和調(diào)試軟件組成。調(diào)試界面基于Windows操作平臺(tái)具有VC風(fēng)格,支持多窗體操作,調(diào)試軟件支持匯編語(yǔ)言和高級(jí)語(yǔ)言混合編譯、調(diào)試,編譯器支持錯(cuò)誤定位,用戶可在同一界面下完成修改、編譯和調(diào)試,支持軟件仿真,可脫機(jī)仿真調(diào)試用戶程序。AEDK-T598D教學(xué)實(shí)驗(yàn)系

4、統(tǒng)操作方法請(qǐng)見(jiàn)第二章。1.1實(shí)驗(yàn)臺(tái)總體結(jié)構(gòu)采用臺(tái)式結(jié)構(gòu),自帶電源。集INTEL8088、MCS51、MCS196三個(gè)CPU系統(tǒng)于一體,均可與PC機(jī)通過(guò)串行通訊連接實(shí)現(xiàn)獨(dú)立運(yùn)行,三種狀態(tài)之間采用軟件切換。實(shí)驗(yàn)臺(tái)由實(shí)驗(yàn)機(jī)內(nèi)核和34個(gè)實(shí)驗(yàn)?zāi)K組成,實(shí)驗(yàn)臺(tái)結(jié)構(gòu)如圖1-1-1。1.2通用實(shí)驗(yàn)?zāi)K實(shí)驗(yàn)臺(tái)上有8個(gè)通用實(shí)驗(yàn)?zāi)K,編號(hào)為:26啟動(dòng)A/D轉(zhuǎn)換器1.2.1邏輯電平開(kāi)關(guān)電路如圖1-2-1所示,由實(shí)驗(yàn)臺(tái)左下側(cè)的 號(hào)實(shí)驗(yàn)?zāi)K中的八個(gè)自鎖開(kāi)關(guān)K7K0組成,開(kāi)關(guān)向上撥到鎖定位置時(shí),接通+5V,輸出高電平,開(kāi)關(guān)向下?lián)艿规i定位置時(shí),接通GND,輸出低電平。圖1-2-1 邏輯電平開(kāi)關(guān)電路261.2.2LED單色燈顯

5、示電路如圖1-2-2所示,由 號(hào)實(shí)驗(yàn)?zāi)K中的L7L0八個(gè)發(fā)光二極管組成,通過(guò)限流電阻構(gòu)成共陽(yáng)極控制,即:L7L0“自鎖緊插孔”端與高電平連接時(shí),對(duì)應(yīng)的LED單色燈亮,反之則暗。 圖1-2-2 LED單色燈顯示電路25延時(shí)1.2.3信號(hào)源電路位于實(shí)驗(yàn)臺(tái)中下側(cè)的 號(hào)實(shí)驗(yàn)?zāi)K中。電路對(duì)4.9152MHZ進(jìn)行分頻產(chǎn)生適合串行通信波特率的頻率以及實(shí)驗(yàn)電路使用的頻率,共有6種頻率源輸出:150HZ、300HZ、600HZ、2.4KHZ、153.6KHZ、2.4576MHZ。1.2.4雙色燈電路23如圖1-2-3所示,位于實(shí)驗(yàn)臺(tái)左下側(cè)的 號(hào)實(shí)驗(yàn)?zāi)K中。電路中的HL24HL21是4個(gè)獨(dú)立的雙色LED燈,每個(gè)雙

6、色LED燈由一個(gè)紅色LED管芯和一個(gè)綠色LED管芯封裝在一起,結(jié)構(gòu)是共陰極,當(dāng)陰極接GND(地線)、陽(yáng)極加高電平時(shí)亮燈,兩個(gè)陽(yáng)極都加高電平時(shí)紅綠燈同時(shí)亮顯示的是黃燈。 圖1-2-3 雙色燈電路電路中4個(gè)雙色LED燈的公共端接在GND(地線),三態(tài)反相輸出驅(qū)動(dòng)器74LS240輸出端控制每個(gè)LED燈的陽(yáng)極,驅(qū)動(dòng)器的輸入端引到“自鎖緊插孔” DG4DG1(綠燈) 和DR4DR1(紅燈)上,由于反向關(guān)系,紅管芯DR加低電平、綠管芯DG加高電平時(shí),紅燈亮;紅管芯DG加高電平、綠管芯DR加低電平時(shí),綠燈亮;DR、DG兩端都加低電平時(shí),黃燈亮。1.2.5繼電器及驅(qū)動(dòng)電路21開(kāi) 如圖1-2-4所示,位于實(shí)驗(yàn)臺(tái)

7、左側(cè)中下部的 號(hào)實(shí)驗(yàn)?zāi)K中。當(dāng)開(kāi)關(guān)量輸入端輸入低電平時(shí),經(jīng)驅(qū)動(dòng)電路7407(集電極開(kāi)路OC門)使+5V繼電器動(dòng)作:常開(kāi)觸點(diǎn)閉合、常閉觸點(diǎn)斷開(kāi)。圖1-2-4 繼電器及驅(qū)動(dòng)電路 圖1-2-5 單脈沖電路201.2.6單脈沖電路如圖1-2-5所示,位于實(shí)驗(yàn)臺(tái)左側(cè)中下部的 號(hào)實(shí)驗(yàn)?zāi)K中。采用RS觸發(fā)器產(chǎn)生單脈沖,每按一次微動(dòng)開(kāi)關(guān)KEYDEDT, +PULSE輸出孔輸出一個(gè)正脈沖,-PULSE輸出孔輸出一個(gè)負(fù)脈沖。20ALE1.2.7模擬電壓信號(hào)輸入電路如圖1-2-6所示,位于實(shí)驗(yàn)臺(tái)左側(cè)中下部的 號(hào)實(shí)驗(yàn)?zāi)K中。1K電位器的定點(diǎn)分別接在+5V電源和GND(地線)上,中頭從“自鎖緊插孔”引出,輸出電壓0-5

8、V。 1KGND +5V 0 5V 圖1-2-6 模擬電壓信號(hào)輸入電路 圖1-2-7 打印機(jī)接口插座17顯示數(shù)字量1.2.8電源模塊18設(shè)有兩個(gè)實(shí)驗(yàn)用電源模塊: 號(hào)模塊是實(shí)驗(yàn)臺(tái)工作電源控制模塊,帶有開(kāi)關(guān)、指示燈,“自鎖緊插孔”引出:+5V、GND供實(shí)驗(yàn)用。 號(hào)模塊是實(shí)驗(yàn)用電源模塊,“自鎖緊插孔”引出:GND、+5V、+12V、-12V,供實(shí)驗(yàn)用。1.2.9打印機(jī)接口插座如圖1-2-7所示,位于實(shí)驗(yàn)臺(tái)左側(cè)上部的 號(hào)實(shí)驗(yàn)?zāi)K中。按標(biāo)準(zhǔn)并行接口設(shè)置DATA、STROBE、ACK、BUSY接線用的“自鎖緊插孔”。實(shí)驗(yàn)臺(tái)上各接口電路模塊化,互不影響,通過(guò)連線可將各個(gè)接口電路組合設(shè)計(jì)成若干個(gè)微機(jī)應(yīng)用系統(tǒng)。

9、1.3實(shí)驗(yàn)臺(tái)使用注意事項(xiàng)16讀取轉(zhuǎn)換后數(shù)字量1.3.1實(shí)驗(yàn)時(shí)取下自檢接口卡實(shí)驗(yàn)臺(tái)第 號(hào)模塊是自檢接口,用于自動(dòng)檢測(cè)實(shí)驗(yàn)機(jī)主板上各模塊的工作狀況,鎖定故障位置。實(shí)驗(yàn)之前要將自檢插座上的自檢接口卡取下。1.3.2 系統(tǒng)切換實(shí)驗(yàn)臺(tái)是三CPU系統(tǒng),使用實(shí)驗(yàn)機(jī)內(nèi)核模塊中的XC9硬件插頭實(shí)現(xiàn)CPU的切換。單片機(jī)實(shí)驗(yàn)使用51CPU,CPU轉(zhuǎn)換插座(XC9)必須接在CPU51(XC1)側(cè)。實(shí)驗(yàn)前先用短接板將XC9插座與XC1插座連接。1.3.3“自鎖緊插孔”使用方法插入導(dǎo)線時(shí)應(yīng)把插頭微微用力沿順時(shí)針?lè)较蛐D(zhuǎn)一下,才能可靠接觸。拔出導(dǎo)線時(shí)先逆時(shí)針?lè)较蛐D(zhuǎn),待插頭完全松開(kāi)后再向上拔出。1.3.4 嚴(yán)禁帶電連接、拔

10、插、更改實(shí)驗(yàn)用的導(dǎo)線第2章 LCA51ET軟件調(diào)試2.1 LCA51ET性能特點(diǎn)LCA51ET軟件是基于WINDOWS 操作平臺(tái)的多窗口編輯的調(diào)試軟件。支持單文件及工程化管理兩種模式下匯編語(yǔ)言的編譯、連接、調(diào)試,用戶可以自定義各種語(yǔ)言的關(guān)鍵詞。可以同時(shí)打開(kāi)多個(gè)窗體編輯、調(diào)試、變量觀察,可以在線對(duì)源文件直接編輯、編譯、連接、加載和調(diào)試。軟件支持編譯錯(cuò)誤源文件定位,指出那行有錯(cuò)誤及錯(cuò)誤類型是什么,方便查錯(cuò)及修改錯(cuò)誤。設(shè)計(jì)匯編語(yǔ)言應(yīng)用系統(tǒng)軟件的步驟為:1. 按設(shè)計(jì)要求設(shè)計(jì)軟件程序流程圖;2. 編輯源程序;3 編譯源程序:編譯的過(guò)程是通過(guò)編譯器將源程序翻譯成機(jī)器語(yǔ)言產(chǎn)生可以直接加載調(diào)試的目標(biāo)代碼,同時(shí)

11、檢查源程序中存在的錯(cuò)誤、類型及所在位置。4調(diào)試程序:調(diào)試是檢查源程序的邏輯錯(cuò)誤。任何程序的錯(cuò)誤都在所難免,語(yǔ)法錯(cuò)誤可以通過(guò)編譯器檢查并修改,而邏輯錯(cuò)誤必須通過(guò)調(diào)試,發(fā)現(xiàn)程序中和預(yù)期設(shè)想不相同的原因所在。對(duì)于部分邏輯錯(cuò)誤,用戶可以根據(jù)錯(cuò)誤現(xiàn)象,直接找到錯(cuò)誤的原因。但是,大多數(shù)邏輯錯(cuò)誤卻不太明白錯(cuò)誤原因,這時(shí),調(diào)試就尤其重要。用戶可以使用單步,斷點(diǎn),全速,變量察看等調(diào)試命令,跟蹤程序的執(zhí)行,直到找到錯(cuò)誤原因,然后,修改程序再編譯再調(diào)試,直到軟件符合應(yīng)用系統(tǒng)設(shè)計(jì)要求。2.2 LCA51ET軟件使用介紹1.進(jìn)入LCA51ET軟件調(diào)試環(huán)境點(diǎn)擊開(kāi)始菜單下的LCAT59D圖標(biāo),如右圖所示,然后點(diǎn)擊LCA51

12、ET圖標(biāo),即進(jìn)入調(diào)試環(huán)境。圖2-2-1 進(jìn)入LCA51ET軟件調(diào)試環(huán)境2.然后出現(xiàn)調(diào)試環(huán)境即LCA51ET主界面,如下圖2-2-2所示。圖2-2-2 主界面3.設(shè)置通訊口,如圖2-2-3所示。圖2-2-3 設(shè)置通訊口4.測(cè)試通訊口圖2-2-4 測(cè)試通訊口圖3-5-15編輯源程序單擊“文件”-“新建”或點(diǎn)擊工具欄上的圖標(biāo) 。將新建一個(gè)空的編輯窗口。用戶在編輯窗口中輸入源程序。輸入完畢,單擊“文件”-“另存為”,選擇路徑,在文件名欄中輸入“文件名.asm”,單擊“保存”。編譯器不支持長(zhǎng)文件名、長(zhǎng)路徑、漢字路徑及漢字文件名。6.編譯源程序單擊“編譯”-“編譯當(dāng)前文件”或點(diǎn)擊工具欄中圖標(biāo),編譯源程序。

13、在下側(cè)“輸出窗口”中將顯示編譯結(jié)果,編譯則通過(guò),如果源程序存在錯(cuò)誤語(yǔ)句、格式,則編譯不通過(guò),指出該程序中存在一個(gè)錯(cuò)誤,錯(cuò)誤在12行,并指出錯(cuò)誤原因。此時(shí)需要修改源程序,可以通過(guò)雙擊輸出窗口中的錯(cuò)誤行,則在編輯窗口中錯(cuò)誤所在行的左側(cè)顯示一個(gè)藍(lán)色的驚嘆號(hào)“?”。修改錯(cuò)誤后,再次編譯,直至通過(guò)。7加載程序點(diǎn)擊“調(diào)試”-“加載調(diào)試”或單擊工具欄上的圖標(biāo) 。點(diǎn)擊“調(diào)試”-“重新加載調(diào)試”或單擊工具欄上的圖標(biāo) 。加載程序后編輯窗口中的第一條可執(zhí)行語(yǔ)句變?yōu)榫G色,程序從該條語(yǔ)句開(kāi)始執(zhí)行。8調(diào)試程序 跟蹤型單步調(diào)試:按快捷鍵“F7”,程序從第一條語(yǔ)句開(kāi)始逐條按跟蹤型執(zhí)行程序,每執(zhí)行一條語(yǔ)句后,下一條將要執(zhí)行的語(yǔ)

14、句變?yōu)榫G色,每按一次快捷鍵“F7”,執(zhí)行一條語(yǔ)句。還可以單擊工具欄上的圖標(biāo) ,每單擊一次圖標(biāo) ,執(zhí)行一條語(yǔ)句。 通過(guò)型單步調(diào)試:按快捷鍵“F8”,程序從第一條語(yǔ)句開(kāi)始逐條按通過(guò)型執(zhí)行程序,每執(zhí)行一條語(yǔ)句后,下一條將要執(zhí)行的語(yǔ)句變?yōu)榫G色,每按一次快捷鍵“F8”,執(zhí)行一條語(yǔ)句。還可以單擊工具欄上的圖標(biāo) ,每單擊一次圖標(biāo) ,執(zhí)行一條語(yǔ)句。斷點(diǎn)調(diào)試(執(zhí)行到光標(biāo)所在行):先將光標(biāo)設(shè)置在程序斷點(diǎn)處,然后按快捷鍵“F4”,程序從第一條語(yǔ)句開(kāi)始全速執(zhí)行,執(zhí)行到斷點(diǎn)處自動(dòng)停止,斷點(diǎn)所在行的語(yǔ)句變?yōu)榫G色。再設(shè)置下一個(gè)斷點(diǎn),按快捷鍵“F4”,程序從上一個(gè)斷點(diǎn)處開(kāi)始全速執(zhí)行,執(zhí)行到下一個(gè)斷點(diǎn)處自動(dòng)停止,該斷點(diǎn)所在行的

15、語(yǔ)句變?yōu)榫G色。還可以單擊工具欄上的圖標(biāo) ,設(shè)置一次斷點(diǎn),單擊一次圖標(biāo) ,全速執(zhí)行一段程序。 2.3熱鍵表熱鍵功能描述熱鍵功能描述熱鍵功能描述Ctrl+N新建文件Ctrl+O打開(kāi)文件Ctrl+S保存文件Ctrl+P打印文件Ctrl+Z撤銷Ctrl+Y重新執(zhí)行Ctrl+X剪切Ctrl+C復(fù)制Ctrl+V粘貼Ctrl+A全選Ctrl+F查找文本Ctrl+H替換文本F3查找下一個(gè)Shift+F3查找上一個(gè)Ctrl+G跳到指定行Ctrl+L轉(zhuǎn)為小寫(xiě)Ctrl+U轉(zhuǎn)為大寫(xiě)Ctrl+F2設(shè)置或取消書(shū)簽F2下一個(gè)書(shū)簽Shift+F2上一個(gè)書(shū)簽Ctrl+Shift+F2消除所有書(shū)簽Ait+F9編譯當(dāng)前文件Ctrl

16、+F9編譯并連接F10加載調(diào)示F4執(zhí)行到光標(biāo)所在行F5設(shè)置當(dāng)前IP行F7跟蹤型單步F8通過(guò)型單步F9全速運(yùn)行Alit+F7連續(xù)執(zhí)行跟蹤型單步Alit+F8連續(xù)執(zhí)行通過(guò)型單步Alit+R總清實(shí)驗(yàn)機(jī)/仿真機(jī)Alit+F2上位機(jī)復(fù)位Alit+H暫停Ctrl+T對(duì)話窗口Ctrl+F7添加觀察項(xiàng)第3章 實(shí)驗(yàn)指導(dǎo)3.2 P1口輸入輸出實(shí)驗(yàn)1.P1口是準(zhǔn)雙向口。它作為輸出口時(shí)與一般的雙向口使用方法相同。由準(zhǔn)雙向口結(jié)構(gòu)可知當(dāng)P1口作為輸入口時(shí),必須先對(duì)它置高電平使內(nèi)部MOS管截止。因?yàn)閮?nèi)部上拉電阻阻值是20K40K,因此不會(huì)對(duì)外部輸入產(chǎn)生影響。若不先對(duì)它置高,且原來(lái)是低電平,則MOS管導(dǎo)通,讀入的數(shù)據(jù)不正確的

17、。 2.延時(shí)子程序的延時(shí)計(jì)算問(wèn)題對(duì)子程序 DELAY:                       MOV R3,#00H             DELAY1:         

18、             MOV R4,#0B3H                      DJNZ R4,$             &

19、#160;        DJNZ R3,DELAY1 RET查指令表可知 MOV,DJNZ 指令均需用兩個(gè)機(jī)器周期,而一個(gè)機(jī)器周期時(shí)間長(zhǎng)度為MHz,所以該段程序執(zhí)行時(shí)間為:(0B31)×2561)×2×12÷11059200100.002mS3. 實(shí)際交通燈的變化規(guī)律。應(yīng)用基本輸出接口模擬交通燈控制,假設(shè)一個(gè)十字路口為東西南北走向,設(shè)計(jì)實(shí)驗(yàn)程序?qū)崿F(xiàn)如下變化規(guī)律: 初始狀態(tài)0:東西紅燈,南北紅燈,過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)。 狀態(tài):南北綠燈通車,東西紅燈,過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)。 狀態(tài):東西仍然紅燈,

20、南北綠燈閃幾次轉(zhuǎn)亮黃燈,延時(shí)幾秒轉(zhuǎn)狀態(tài)。 狀態(tài):東西綠燈通車,南北紅燈,過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)。 狀態(tài):南北仍然紅燈,東西綠燈閃幾次轉(zhuǎn)亮黃燈,延時(shí)幾秒循環(huán)至狀態(tài)。 4雙色燈原理雙色LED是由一個(gè)紅色LED管芯和一個(gè)綠色LED管芯封裝在一起,公用負(fù)端。當(dāng)紅色正端加高電平,綠色正端加低電平時(shí),紅燈亮;紅色正端加低電平,綠色正端加高電平時(shí),綠燈亮;兩端都加高電平時(shí),黃燈亮。實(shí)驗(yàn)臺(tái)上的雙色燈位置如圖3-2-1所示。HL21燈的紅色LED管芯的引腳是DR1,綠色LED管芯的引腳是DG1;HL22燈的紅色LED管芯的引腳是DR2,綠色LED管芯的引腳是DG2;HL23燈的紅色LED管芯的引腳是DR3,綠色LED

21、管芯的引腳是DG3;HL24燈的紅色LED管芯的引腳是DR4,綠色LED管芯的引腳是DG4;例如:若實(shí)現(xiàn)南北綠燈,東西紅燈。則:DG1、DG3置“1”,DR1、DR3置“0”;DG2、DG4置“0”,DR2、DR4置“1”。若P1.0P1.7接DG1DG3 、DR1DR3 ,由P1口做輸出口,那么送P1口的值如下表3-2-1所示:表3-2-1 P1口控制雙色燈輸出“南北綠燈,東西紅燈”對(duì)照表DR4DR3DR2DR1DG4DG3DG2DG1P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.010100101A5H注:由于本實(shí)驗(yàn)臺(tái)上“1”是“滅”;“0”是“亮”,若想在實(shí)驗(yàn)臺(tái)上實(shí)現(xiàn)“南

22、北綠燈,東西紅燈”則將值10100101取反為:01011010 即是5AH。則程序?yàn)椋篗OV A,#5AH ;南北綠燈,東西紅燈MOV P1,ADR1DR2DR3DR4DG1DG2DG3DG4HL21HL22HL23HL24 交通燈圖3-2-1 實(shí)驗(yàn)臺(tái)上交通燈單元分布圖3.2.1實(shí)驗(yàn)?zāi)康?.掌握8051單片機(jī)P1口的輸入輸出方法;2.學(xué)習(xí)延時(shí)子程序的編寫(xiě)和使用。3.學(xué)習(xí)在單片機(jī)系統(tǒng)中擴(kuò)展簡(jiǎn)單I/O接口的方法。4.學(xué)習(xí)雙色燈模擬交通燈控制的方法。5.學(xué)習(xí)雙色燈的使用。3.2.2 實(shí)驗(yàn)預(yù)習(xí)要求1.復(fù)習(xí)8051單片機(jī)P1口的輸入輸出方法;2.復(fù)習(xí)雙色燈模擬交通燈的原理;3.預(yù)先編寫(xiě)好實(shí)驗(yàn)程序。3.

23、2.3 實(shí)驗(yàn)內(nèi)容共有3個(gè)實(shí)驗(yàn),P1口輸出實(shí)驗(yàn),P1 口控制雙色燈實(shí)驗(yàn),P1口輸入實(shí)驗(yàn)。.1 P1口輸出實(shí)驗(yàn)1.實(shí)驗(yàn)要求P1口做輸出口,接八只單色發(fā)光二級(jí)管,編寫(xiě)程序,使發(fā)光二極管循環(huán)點(diǎn)亮。2.電路原理及接線圖3-2-2P1口做輸出口電路原理及接線圖注:本實(shí)驗(yàn)有8根連線:實(shí)驗(yàn)機(jī)內(nèi)核的P1.0P1.7與單元的L0L7連接。開(kāi) 始設(shè)置數(shù)據(jù)的初始值為FEH數(shù)據(jù)送到P1口,輸出數(shù)據(jù)循環(huán)左移延 時(shí)3.程序流程圖圖3-2-3程序流程圖4.程序框架ORG 0000H LJMP START ORG 0040HSTART: MOV SP,#60H MOV A,#0FEHROTATE: MOV P1,A ;寫(xiě) P1

24、口 循環(huán)左移 調(diào)延時(shí) NOP SJMP ROTATEDELAY:                 MOV R3,#00HDELAY1:                MOV R4,#000H       

25、60;        DJNZ R4,$                DJNZ R3,DELAY1 RET END5.實(shí)驗(yàn)步驟 斷電按線路圖接線。 上電后,按復(fù)位鍵(RST),編輯、編譯、連接、加載程序。 全速執(zhí)行(F9)程序,觀察現(xiàn)象。.2 P1口控制雙色燈實(shí)驗(yàn)1.實(shí)驗(yàn)要求P1口做輸出口,控制4個(gè)雙色LED燈(可發(fā)紅,綠,黃光),模擬交通燈管理。初始狀態(tài)

26、全紅燈狀態(tài):南北綠燈通車,東西紅燈狀態(tài):東西仍然紅燈,南北綠燈閃幾次轉(zhuǎn)亮黃燈狀態(tài):東西綠燈通車, 南北紅燈狀態(tài):南北仍然紅燈,東西綠燈閃幾次轉(zhuǎn)亮黃燈開(kāi) 始2.程序流程圖.圖3-2-4程序流程圖3.程序框架ORG 0000H LJMP START ORG 0040HSTART: MOV SP,#60H LCALL STATUS0 ;初始狀態(tài)(都是紅燈)CIRCLE: LCALL STATUS1 ;南北綠燈,東西紅燈 LCALL STATUS2 ;南北綠燈閃轉(zhuǎn)黃燈,東西紅燈 LCALL STATUS3 ;南北紅燈,東西綠燈 LCALL STATUS4 ;南北紅燈,東西綠燈閃轉(zhuǎn)黃燈LJMP CIRC

27、LESTATUS0: 南北紅燈,東西紅燈 MOV R2,#10 ;延時(shí)1秒 LCALL DELAY RETSTATUS1: 南北綠燈,東西紅燈 MOV R2,#50 ;延時(shí)5秒 LCALL DELAY RETSTATUS2: ;南北綠燈閃轉(zhuǎn)黃燈,東西紅燈 MOV R3,#03H ;綠燈閃3次FLASH: MOV A,#5FH MOVP1,A MOV R2,#03H LCALL DELAY MOV A,#5AH MOVP1,A MOV R2,#03H LCALL DELAY DJNZ R3,FLASH 南北黃燈,東西紅燈 MOV R2,#10 ;延時(shí)1秒 LCALL DELAY RETSTATU

28、S3: 南北紅燈,東西綠燈 MOV R2,#50 ;延時(shí)5秒 LCALL DELAY RETSTATUS4: ;南北紅燈,東西綠燈閃轉(zhuǎn)黃燈 MOV R3,#03H ;綠燈閃3次FLASH1: MOV A,#0AFH MOV P1,A MOV R2,#03H LCALL DELAY MOV A,#0A5H MOVP1,A MOV R2,#03H LCALL DELAY DJNZ R3,FLASH1南北紅燈,東西黃燈MOV R2,#10 ;延時(shí)1秒 LCALL DELAY NOP RETDELAY: ;延時(shí)子程序 PUSH 2 PUSH 1 PUSH 0DELAY1: MOV 1,#00HDELA

29、Y2: MOV 0,#0B2H DJNZ 0,$ DJNZ 1,DELAY2 ;延時(shí) 100 mS DJNZ 2,DELAY1 POP 0 POP 1 POP 2 RET END4.實(shí)驗(yàn)步驟 斷電按線路圖接線。 上電后,按復(fù)位鍵(RST),編輯、編譯、連接、加載程序。 全速執(zhí)行(F9)程序,觀察現(xiàn)象。.3 P1口輸入實(shí)驗(yàn)1.實(shí)驗(yàn)要求P1口做輸入口,接八個(gè)推鍵開(kāi)關(guān),以實(shí)驗(yàn)機(jī)上74LS273做輸出口,編寫(xiě)程序讀取開(kāi)關(guān)狀態(tài),將此狀態(tài),在發(fā)光二極管上顯示出來(lái)。(接K0-K7,PO0-PO7接L0-L7。CS273接8300H。)2.電路原理及接線圖3-2-5P1口做輸出口電路原理及接線圖注:本實(shí)驗(yàn)有1

30、7根連線:實(shí)驗(yàn)機(jī)內(nèi)核的P1.0P1.7與單元的K0K7連接、實(shí)驗(yàn)機(jī)內(nèi)核的8300H與單元的CS273連接、單元的PO0PO7與L0L7連接。開(kāi) 始讀P1口狀態(tài)輸出對(duì)應(yīng)的數(shù)據(jù)3.程序流程圖圖3-2-6程序流程圖4.程序框架ORG 0000H LJMP STARTORG 0040HSTART: MOV DPTR,#8300H ;并行輸出口地址 MOV P1,#0FFH;因P1口是準(zhǔn)雙向口,所以把P1口作為輸入口時(shí),應(yīng)先置高電平READ: 讀開(kāi)關(guān)狀態(tài)把讀入的數(shù)據(jù)輸出 AJMP READ END5.實(shí)驗(yàn)步驟 斷電按線路圖接線。 上電后,按復(fù)位鍵(RST),編輯、編譯、連接、加載程序。 全速執(zhí)行(F9)

31、程序,觀察現(xiàn)象。3.2.4實(shí)驗(yàn)報(bào)告1.根據(jù)P1口輸出實(shí)驗(yàn)(.1)中給出的程序框架,將程序補(bǔ)全,并驗(yàn)證。2.根據(jù)P1口控制雙色燈實(shí)驗(yàn)(.2)中給出的程序框架,將程序補(bǔ)全,并驗(yàn)證。3.根據(jù)P1口控制雙色燈實(shí)驗(yàn)(.2)中觀察到的現(xiàn)象填寫(xiě)下面的表格表3-2-2 雙色燈實(shí)驗(yàn)原始記錄注:根據(jù)觀察到的結(jié)果在表中對(duì)應(yīng)位置處打;P1口輸出數(shù)據(jù),按16進(jìn)制數(shù)記錄。4.根據(jù)P1口控制雙色燈實(shí)驗(yàn)(.2)的實(shí)驗(yàn)要求畫(huà)出該實(shí)驗(yàn)原理圖5.根據(jù)P1口輸入實(shí)驗(yàn)(.3)中給出的程序框架,將程序補(bǔ)全,并驗(yàn)證。6.根據(jù)P1口輸入實(shí)驗(yàn)填寫(xiě)下面表3-2-3表3-2-3 開(kāi)關(guān)狀態(tài)與顯示值對(duì)應(yīng)表開(kāi)關(guān)K7K6K5K4K3K2K1K0開(kāi)關(guān)狀態(tài)顯

32、示值注:K0K7用二進(jìn)制數(shù)“0”、“1”填寫(xiě)表格7.實(shí)驗(yàn)總結(jié)與體會(huì)實(shí)驗(yàn)成績(jī)預(yù)習(xí)成績(jī)操作成績(jī)報(bào)告成績(jī)實(shí)驗(yàn)成績(jī)3.3定時(shí)器實(shí)驗(yàn)/計(jì)數(shù)器實(shí)驗(yàn)1定時(shí)/計(jì)數(shù)器組成框圖8051單片機(jī)內(nèi)部有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,稱為定時(shí)器0(T0)和定時(shí)器1(T1),可編程選擇其作為定時(shí)器用或作為計(jì)數(shù)器用。此外,工作方式、定時(shí)時(shí)間、計(jì)數(shù)值、啟動(dòng)、中斷請(qǐng)求等都可以由程序設(shè)定。其邏輯結(jié)構(gòu)如圖3-3-1所示。圖3-3-1 8051定時(shí)器/計(jì)數(shù)器邏輯結(jié)構(gòu)圖由圖可知,8051定時(shí)/計(jì)數(shù)器由定時(shí)器0、定時(shí)器1、定時(shí)器方式寄存器TMOD和定時(shí)器控制寄存器TCON組成。定時(shí)器0,定時(shí)器1是16位加法計(jì)數(shù)器,分別由兩個(gè)8位專用寄存

33、器組成:定時(shí)器0由TH0和TL0組成,定時(shí)器1由TH1和TL1組成。TL0、TL1、TH0、TH1的訪問(wèn)地址依次為8AH8DH,每個(gè)寄存器均可單獨(dú)訪問(wèn)。定時(shí)器0或定時(shí)器1用作計(jì)數(shù)器時(shí),對(duì)芯片引腳T0(P3.4)或T1(P3.5)上輸入的脈沖計(jì)數(shù),每輸入一個(gè)脈沖,加法計(jì)數(shù)器加1;其用作定時(shí)器時(shí),對(duì)內(nèi)部機(jī)器周期脈沖計(jì)數(shù),由于機(jī)器周期是定值,故計(jì)數(shù)值確定時(shí),時(shí)間也隨之確定。TMOD、TCON與定時(shí)器0、定時(shí)器1間通過(guò)內(nèi)部總線及邏輯電路連接,TMOD用于設(shè)置定時(shí)器的工作方式,TCON用于控制定時(shí)器的啟動(dòng)與停止。2定時(shí)/計(jì)數(shù)器工作原理當(dāng)定時(shí)/計(jì)數(shù)器設(shè)置為定時(shí)工作方式時(shí),計(jì)數(shù)器對(duì)內(nèi)部機(jī)器周期計(jì)數(shù),每過(guò)一個(gè)

34、機(jī)器周期,計(jì)數(shù)器增1,直至計(jì)滿溢出。定時(shí)器的定時(shí)時(shí)間與系統(tǒng)的振蕩頻率緊密相關(guān),因MCS-51單片機(jī)的一個(gè)機(jī)器周期由12個(gè)振蕩脈沖組成,所以,計(jì)數(shù)頻率。如果單片機(jī)系統(tǒng)采用12 MHz晶振,則計(jì)數(shù)周期為:1S,這是最短的定時(shí)周期,適當(dāng)選擇定時(shí)器的初值可獲取各種定時(shí)時(shí)間。當(dāng)定時(shí)/計(jì)數(shù)器設(shè)置為計(jì)數(shù)工作方式時(shí),計(jì)數(shù)器對(duì)來(lái)自輸入引腳T0(P3.4)和T1(P3.5)的外部信號(hào)計(jì)數(shù),外部脈沖的下降沿將觸發(fā)計(jì)數(shù)。在每個(gè)機(jī)器周期的S5P2期間采樣引腳輸入電平,若前一個(gè)機(jī)器周期采樣值為1,后一個(gè)機(jī)器周期采樣值為0,則計(jì)數(shù)器加1。新的計(jì)數(shù)值是在檢測(cè)到輸入引腳電平發(fā)生1到0的負(fù)跳變后,于下一個(gè)機(jī)器周期的S3P1期間裝

35、入計(jì)數(shù)器中的,可見(jiàn),檢測(cè)一個(gè)由1到0的負(fù)跳變需要兩個(gè)機(jī)器周期,所以,最高檢測(cè)頻率為振蕩頻率的1/24。計(jì)數(shù)器對(duì)外部輸入信號(hào)的占空比沒(méi)有特別的限制,但必須保證輸入信號(hào)的高電平與低電平的持續(xù)時(shí)間在一個(gè)機(jī)器周期以上。當(dāng)設(shè)置了定時(shí)器的工作方式并啟動(dòng)定時(shí)器工作后,定時(shí)器就按被設(shè)定的工作方式獨(dú)立工作,不再占用CPU的操作時(shí)間,只有在計(jì)數(shù)器計(jì)滿溢出時(shí)才可能中斷CPU當(dāng)前的操作。3定時(shí)/計(jì)數(shù)器的方式寄存器和控制寄存器在啟動(dòng)定時(shí)/計(jì)數(shù)器工作之前,CPU必須將一些命令(稱為控制字)寫(xiě)入定時(shí)/計(jì)數(shù)器中,這個(gè)過(guò)程稱為定時(shí)/計(jì)數(shù)器的初始化。定時(shí)/計(jì)數(shù)器的初始化通過(guò)定時(shí)/計(jì)數(shù)器的方式寄存器TMOD和控制寄存器TCON完成

36、。(1)定時(shí)/計(jì)數(shù)器方式寄存器TMODTMOD為定時(shí)器0、定時(shí)器1的工作方式寄存器,其格式如下表:GATEM1M0GATEM1M0定時(shí)器1定時(shí)器0M1和M0:方式選擇位。定義如下:表3-3-1 M1、M0 工作方式功能說(shuō)明表M1 M0工作方式功能說(shuō)明0 0方式 013位計(jì)數(shù)器0 1方式 116位計(jì)數(shù)器1 0方式 2自動(dòng)再裝入8位計(jì)數(shù)器1 1方式 3定時(shí)器0:分成兩個(gè)8位計(jì)數(shù)器定時(shí)器1:停止計(jì)數(shù)(2)定時(shí)器/計(jì)數(shù)器控制寄存器TCONTCON的作用是控制定時(shí)器的啟動(dòng)、停止,標(biāo)志定時(shí)器的溢出和中斷情況。定時(shí)器控制字TCON的格式如下圖:TCON(88H)8FH8EH8DH8CH8BH8AH89H88

37、HTF1TR1TF0TR0IE1IT1IE0IT01) TCON.7 TF1:定時(shí)器1溢出標(biāo)志位。當(dāng)定時(shí)器1計(jì)滿數(shù)產(chǎn)生溢出時(shí),由硬件自動(dòng)置TF1=1。在中斷允許時(shí),向CPU發(fā)出定時(shí)器1的中斷請(qǐng)求,進(jìn)入中斷服務(wù)程序后,由硬件自動(dòng)清0。在中斷屏蔽時(shí),TF1可作查詢測(cè)試用,此時(shí)只能由軟件清0。2) TCON.6 TR1:定時(shí)器1運(yùn)行控制位。由軟件置1或清0來(lái)啟動(dòng)或關(guān)閉定時(shí)器1。當(dāng)GATE=1,且為高電平時(shí),TR1置1啟動(dòng)定時(shí)器1;當(dāng)GATE=0時(shí),TR1置1即可啟動(dòng)定時(shí)器1。3) TCON.5 TF0:定時(shí)器0溢出標(biāo)志位。其功能及操作情況同TF1。4) TCON.4 TR0:定時(shí)器0運(yùn)行控制位。其功

38、能及操作情況同TR1。5) TCON.3 IE1:外部中斷1()請(qǐng)求標(biāo)志位。6) TCON.2 IT1:外部中斷1觸發(fā)方式選擇位。7) TCON.1 IE0:外部中斷0()請(qǐng)求標(biāo)志位。8) TCON.0 IT0:外部中斷0觸發(fā)方式選擇位。(3)定時(shí)/計(jì)數(shù)器的初始化由于定時(shí)/計(jì)數(shù)器的功能是由軟件編程確定的,所以,一般在使用定時(shí)器/計(jì)數(shù)前都要對(duì)其進(jìn)行初始化。初始化步驟如下:1) 確定工作方式對(duì)TMOD賦值。例如:定時(shí)器1工作在方式1,且工作在定時(shí)器方式上。MOV TMOD, #10H2) 預(yù)置定時(shí)或計(jì)數(shù)的初值直接將初值寫(xiě)入TH0、TL0或TH1、TL1。定時(shí)/計(jì)數(shù)器的初值因工作方式的不同而不同。設(shè)

39、最大計(jì)數(shù)值為M,則各種工作方式下的M值如下:方式0:方式1:方式2:方式3:定時(shí)器0分成兩個(gè)8位計(jì)數(shù)器,所以兩個(gè)定時(shí)器的M值均為256。因定時(shí)/計(jì)數(shù)器工作的實(shí)質(zhì)是做“加1”計(jì)數(shù),所以,當(dāng)最大計(jì)數(shù)值M值已知時(shí),初值X可計(jì)算如下: X = M -計(jì)數(shù)值例如:定時(shí)器1采用方式1定時(shí),M=65536,因要求每50 ms溢出一次,如采用11.0592 MHz晶振,則機(jī)器周期=12÷11.0592MHz1.0851S(65536-定時(shí)常數(shù))*1.0851S=50mS    定時(shí)常數(shù)4C01H所以,計(jì)數(shù)初值為將4C、01分別預(yù)置給TH1、TL1。即程序?yàn)椋篗OV TL

40、1,#01H ;延時(shí)50mS的時(shí)間常數(shù)MOV TH1,#4CH3) 根據(jù)需要開(kāi)啟定時(shí)/計(jì)數(shù)器中斷直接對(duì)IE寄存器賦值。若未采用中斷計(jì)數(shù)方式,則無(wú)此初始化語(yǔ)句。4) 啟動(dòng)定時(shí)/計(jì)數(shù)器工作將TR0或TR1置“1”。GATE = 0時(shí),直接由軟件置位啟動(dòng);GATE = 1時(shí),除軟件置位外,還必須在外中斷引腳處加上相應(yīng)的電平值才能啟動(dòng)。例:若GATE = 0,所以直接由軟件置位啟動(dòng),則指令為:SETB TR1例1:由8051內(nèi)部定時(shí)器1,按方式1工作,即作為16位定時(shí)器使用每0.05秒鐘T1溢出中斷一次,試初始化:MOV TMOD,#10H ;置T1為方式1 MOV TL1,#01H ;延時(shí)50mS的

41、時(shí)間常數(shù) MOV TH1,#4CH SETB TR1 SETB ET1 SETB EA ;開(kāi)中斷例2:假設(shè)利用定時(shí)器T0的方式1產(chǎn)生一個(gè)50HZ的方波,由P1.0輸出,采用12MHZ時(shí)鐘,并假定CPU不作其它工作。P1.0引腳輸出的方波波形,如圖3-3-2所示:T=20ms10ms10ms圖3-3-2 在P1.0引腳上輸出波形由于CPU不作其它工作,因而可以采用查詢的方式進(jìn)行控制。裝入計(jì)數(shù)器的初值可由下式算得:(216-X)×10-6=10-2因而:X=55536=D8F0H程序如下:MOV TMOD,#01H;設(shè)置T0 為方式1SETB TR0 ;啟動(dòng)T0工作LOOP: MOV T

42、H0,#0D8H ;T0置初值 MOV TL0,#0F0HLOOP1: JNB TF0,LOOP1 ;查詢TF0標(biāo)志是否為1,如為1,說(shuō)明T0溢出,則往下執(zhí)行 CLR TF0;T0溢出,清TF0 CPL P1.0;P1.0求反 SJMP LOOP3.3.1實(shí)驗(yàn)?zāi)康?.學(xué)習(xí)8031內(nèi)部計(jì)數(shù)器的使用和編程方法。2.進(jìn)一步掌握中斷處理程序的編程方法。3.3.2 實(shí)驗(yàn)預(yù)習(xí)要求1.預(yù)習(xí)定時(shí)器時(shí)間常數(shù)的設(shè)定方法。2.了解單片機(jī)計(jì)數(shù)器原理和中斷過(guò)程。3.預(yù)習(xí)計(jì)數(shù)器編程方法。3.3.3 實(shí)驗(yàn)內(nèi)容共有2個(gè)實(shí)驗(yàn),定時(shí)器實(shí)驗(yàn)、計(jì)數(shù)器實(shí)驗(yàn)。3.3.3.1 定時(shí)器實(shí)驗(yàn)1.實(shí)驗(yàn)要求要求編寫(xiě)程序模擬一時(shí)序控制裝置。開(kāi)機(jī)后第

43、一秒鐘L0,L2亮,第二秒鐘L1,L3亮,第三秒鐘L4,L6亮,第四秒鐘L5,L7亮,第五秒L0,L2,L4,L6亮,第六秒鐘L1,L3,L5,L7亮,第七秒鐘八個(gè)二極管全亮,第八秒鐘全滅,以后又從頭開(kāi)始,L0,L2亮,然后L1,L3亮.一直循環(huán)下去。(由8051內(nèi)部定時(shí)器1,按方式1工作,即作為16位定時(shí)器使用每50mS秒鐘T1溢出中斷一次。)2.電路原理及接線圖3-3-3定時(shí)器實(shí)驗(yàn)電路原理及接線圖注:本實(shí)驗(yàn)有8根連線:實(shí)驗(yàn)機(jī)內(nèi)核的P1.0P1.7與單元的L0L7連接。NINT_T1入口保護(hù)現(xiàn)場(chǎng)置定時(shí)常數(shù)將顯示的數(shù)從表中取出結(jié) 束判斷是否到1秒?Y顯示數(shù)據(jù)表格指針加1恢復(fù)現(xiàn)場(chǎng)3.程序流程圖開(kāi)

44、 始置T1計(jì)數(shù)器置初始常數(shù)開(kāi)中斷等待圖3-3-5 INT_T1中斷子程序框圖圖3-3-4 主程序框圖4.程序框架ORG 0000H AJMP START ORG 001BH ;T1中斷入口地址 AJMP INT_T1 ORG 0100HSTART: MOV SP,#60H置T1為方式1延時(shí)50mS的時(shí)間常數(shù)MOV R0,#00H MOV R1,#20啟動(dòng)T1,允許T1工作開(kāi)中斷 SJMP $INT_T1: ;T1中斷服務(wù)子程序 PUSH ACC ;保護(hù)現(xiàn)場(chǎng) PUSH PSW PUSH DPL PUSH DPH關(guān)中斷延時(shí)50mS常數(shù)開(kāi)中斷 DJNZ R1,EXIT MOV R1,#20 ;延時(shí)一

45、秒的常數(shù) MOV DPTR,#DATA1 ;置常數(shù)表基址 MOV A,R0 ;置常數(shù)表偏移量 MOVC A,A+DPTR ;讀常數(shù)表送P1口顯示 INC R0 ANL 00,#07HEXIT:恢復(fù)現(xiàn)場(chǎng) RETI;LED顯示常數(shù)表DATA1: DB 0FAH,0F5H,0AFH,05FH,0AAH,55H,00H,0FFH END5.實(shí)驗(yàn)步驟 斷電按線路圖接線。 上電后,按復(fù)位鍵(RST),編輯、編譯、連接、加載程序。 全速執(zhí)行(F9)程序,觀察現(xiàn)象。3.3.3.2 計(jì)數(shù)器實(shí)驗(yàn)1.實(shí)驗(yàn)要求8051內(nèi)部定時(shí)計(jì)數(shù)器,按計(jì)數(shù)器模式和方式1工作,對(duì)P3.4(T0)引腳進(jìn)行計(jì)數(shù)。使用8051的T1作定時(shí)器

46、,50ms中斷一次,看T0內(nèi)每50ms來(lái)了多少脈沖,將其數(shù)值按二進(jìn)制數(shù)在74LS273驅(qū)動(dòng)LED燈上顯示出來(lái),5秒后再次顯示測(cè)試結(jié)果。2.電路原理及界線P3.4接一計(jì)數(shù)脈沖(模塊中的153.6K頻率)。 PO0PO7接 L0L7。 CS273接8300H。圖3-3-6 計(jì)數(shù)器實(shí)驗(yàn)原理圖3.程序流程圖圖3-3-7主程序圖 圖3-3-8中斷子程序框圖4.程序框架ORG 0000H AJMP START ORG 000BH ;T0中斷入口地址 RETI ORG 001BH ;T1中斷入口地址 AJMP INT_T1 ORG 0040HSTART: MOV SP,#60H置T1為定時(shí)模式,方式1;置T

47、0為計(jì)數(shù)模式,方式1計(jì)數(shù)寄存器清零延時(shí)50mS常數(shù) MOV R0,#100 ;延時(shí) 5 秒常數(shù)啟動(dòng)T0,允許T0中斷 SETB TR1 ;啟動(dòng)T1 SETB ET1;允許T1中斷開(kāi)中斷 SJMP $INT_T1: PUSH ACC PUSH PSW ;保護(hù)現(xiàn)場(chǎng) CLR TR1延時(shí)0.50mS 常數(shù) MOV R1,TL0 ;保存計(jì)數(shù)值 MOV R2,TH0計(jì)數(shù)寄存器清零 SETB TR1 DJNZ R0,EXIT MOV R0,#100 ;延時(shí) 5 秒常數(shù) MOV DPTR,#8300H ;LED地址 MOV A,R1把計(jì)數(shù)值在LED上顯示EXIT:恢復(fù)現(xiàn)場(chǎng)中斷返回 END5.實(shí)驗(yàn)步驟 斷電按線

48、路圖接線。 上電后,按復(fù)位鍵(RST),編輯、編譯、連接、加載程序。 全速執(zhí)行(F9)程序,觀察現(xiàn)象。3.3.4 實(shí)驗(yàn)報(bào)告1.根據(jù)定時(shí)器實(shí)驗(yàn)(.1)給出的程序框架,將程序補(bǔ)全,并驗(yàn)證。2.修改3.3.3.1程序中的時(shí)間常數(shù),使燈1.7秒點(diǎn)亮一次寫(xiě)出修改的時(shí)間寫(xiě)出時(shí)間常數(shù)的計(jì)算公式,并計(jì)算出時(shí)間常數(shù)。將修改的時(shí)間常數(shù)和程序?qū)懺谙铝斜碇胁?xiě)好注釋。3.根據(jù)計(jì)數(shù)器實(shí)驗(yàn)(.2)給出的程序框架,將程序補(bǔ)全,并驗(yàn)證。4.修改3.3.3.2程序中的定時(shí)器T1的時(shí)間常數(shù)30ms中斷一次,將修改的程序?qū)懺谙旅妗?.實(shí)驗(yàn)總結(jié)與體會(huì)實(shí)驗(yàn)成績(jī)預(yù)習(xí)成績(jī)操作成績(jī)報(bào)告成績(jī)實(shí)驗(yàn)成績(jī)3.5 模/數(shù)轉(zhuǎn)換實(shí)驗(yàn)A/D轉(zhuǎn)換器是模擬信號(hào)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論