《單片機(jī)原理及系統(tǒng)設(shè)計(jì)教程》課件51單片機(jī)實(shí)驗(yàn)教學(xué)教案20100504修改_第1頁(yè)
《單片機(jī)原理及系統(tǒng)設(shè)計(jì)教程》課件51單片機(jī)實(shí)驗(yàn)教學(xué)教案20100504修改_第2頁(yè)
《單片機(jī)原理及系統(tǒng)設(shè)計(jì)教程》課件51單片機(jī)實(shí)驗(yàn)教學(xué)教案20100504修改_第3頁(yè)
《單片機(jī)原理及系統(tǒng)設(shè)計(jì)教程》課件51單片機(jī)實(shí)驗(yàn)教學(xué)教案20100504修改_第4頁(yè)
《單片機(jī)原理及系統(tǒng)設(shè)計(jì)教程》課件51單片機(jī)實(shí)驗(yàn)教學(xué)教案20100504修改_第5頁(yè)
已閱讀5頁(yè),還剩50頁(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)介

電子科技大學(xué)自動(dòng)化工程學(xué)院實(shí)驗(yàn)教學(xué)教案匯總(實(shí)驗(yàn))課程名稱51單片機(jī)原理及應(yīng)用電子科技大學(xué)教務(wù)處制表前言本實(shí)驗(yàn)指導(dǎo)書以編譯環(huán)境的操作、程序下載,單片機(jī)自身接口應(yīng)用為核心進(jìn)行學(xué)習(xí)和實(shí)驗(yàn),它們包含:并行接口、定時(shí)器、中斷以及串行通訊,另外還對(duì)單片機(jī)外圍電路做簡(jiǎn)單的擴(kuò)展。其硬件包括ST51/52單片機(jī)、UEST-K1仿真實(shí)驗(yàn)板一塊。實(shí)驗(yàn)指導(dǎo)書包含8個(gè)實(shí)驗(yàn),若干例程。涵蓋了8031單片機(jī)的實(shí)時(shí)仿真;端口、數(shù)據(jù)/地址總線操作;定時(shí)/計(jì)數(shù)器運(yùn)用;鍵盤、LED顯示接口;中斷處理;串行通訊;C語(yǔ)言試驗(yàn)等內(nèi)容。同學(xué)們通過(guò)這些實(shí)驗(yàn),可對(duì)MCS-51系列單片機(jī)的一些基本應(yīng)用有所掌握。任何計(jì)算機(jī)原理及程序設(shè)計(jì)語(yǔ)言的學(xué)習(xí),一般都是通過(guò):看懂并理解別人的程序開(kāi)始,修改程序并驗(yàn)證修改效果是第二步,然后才能自己編寫程序。通過(guò)實(shí)驗(yàn)理解軟硬件工作原理,調(diào)試程序可以理解和驗(yàn)證程序設(shè)計(jì)的正確性,通過(guò)仿真調(diào)試可以學(xué)習(xí)產(chǎn)品開(kāi)發(fā)的過(guò)程。顯然本實(shí)驗(yàn)已經(jīng)具備了上面所述的全部功能。至于硬件的設(shè)計(jì)開(kāi)發(fā),同學(xué)還應(yīng)當(dāng)學(xué)會(huì)使用protel一類電路設(shè)計(jì)軟件,設(shè)計(jì)出自己的應(yīng)用系統(tǒng)。這部分內(nèi)容本實(shí)驗(yàn)只提供一些經(jīng)典電路作為參考。同學(xué)們還可利用實(shí)驗(yàn)板提供的硬件,編制一些較為復(fù)雜的程序,例如:實(shí)時(shí)時(shí)鐘+時(shí)間初值設(shè)置+鬧鐘設(shè)置+鬧鐘聲響,或者編制一個(gè)“計(jì)算器”程序,編寫一個(gè)電子琴程序等,作為“課程設(shè)計(jì)”。本實(shí)驗(yàn)指導(dǎo)書所有實(shí)驗(yàn)程序都是完整的程序,對(duì)一般教材上“斷章取義”的程序,不能調(diào)試的程序,無(wú)疑是有效的補(bǔ)充。故本實(shí)驗(yàn)板和指導(dǎo)書是單片機(jī)初學(xué)者一個(gè)很好的入門向?qū)?。在?shí)驗(yàn)的開(kāi)發(fā)過(guò)程中,許多同學(xué)利用課外活動(dòng)時(shí)間對(duì)實(shí)驗(yàn)指導(dǎo)書和實(shí)驗(yàn)板作了驗(yàn)證和改進(jìn)。編者在此對(duì)這些同學(xué)表示感謝。編者2010年5月第一課單片機(jī)系統(tǒng)開(kāi)發(fā)單片機(jī)系統(tǒng)的開(kāi)發(fā)方法主要有幾個(gè)步驟:1.設(shè)計(jì)電路:根據(jù)系統(tǒng)功能要求,計(jì)劃外圍接口的種類,數(shù)量,以及RAM等。并分配一定的地址。此后選擇需要的芯片,設(shè)計(jì)相應(yīng)的電路圖。細(xì)心檢查電路圖,確認(rèn)無(wú)誤后,設(shè)計(jì)電路板。電路板設(shè)計(jì)好后就可送到工廠制作。電路及電路板設(shè)計(jì)常用PROTEL工具軟件,此處不作介紹,但希望同學(xué)們能利用業(yè)余時(shí)間自學(xué),這對(duì)你今后找工作或?qū)嶋H工作都有深遠(yuǎn)影響。2.軟件方案設(shè)計(jì):根據(jù)系統(tǒng)功能要求,畫出程序(功能模塊)流程圖。劃定主程序相關(guān)模塊、各中斷服務(wù)程序模塊的功能。計(jì)劃模塊間參數(shù)(變量)的傳遞及共享方法,變量名稱及作用的擬訂。以上各步需作詳細(xì)筆記,以便編寫程序時(shí)方便查看。3.軟件設(shè)計(jì)和調(diào)試:編寫各功能模塊程序,有條件時(shí)可直接在仿真機(jī)和電路板上進(jìn)行調(diào)試。第一步先編寫和調(diào)試顯示模塊,正常工作后保存。顯示模塊的成功,會(huì)使初學(xué)者提高對(duì)余下程序的信心,實(shí)際等于成功一半了。然后可以調(diào)試鍵盤模塊,同時(shí)加上顯示模塊,增加幾句臨時(shí)語(yǔ)句使按下的鍵值能顯示出來(lái)。這兩個(gè)模塊成功后保存起來(lái)。以后就可以編寫和調(diào)試其他模塊,一塊一塊地添加起來(lái),形成一個(gè)完整的程序。4.程序固化:調(diào)試成功的程序,會(huì)產(chǎn)生一個(gè)“filename.hex”的INTEL十六進(jìn)制格式文件,把這個(gè)文件送到“編程器/寫入器”中就可以將其固化到芯片內(nèi):EPROM、EEPROM、PROM、MCU中。寫入成功后,把芯片從“編程器/寫入器”上取下,再插到電路板上通電運(yùn)行。設(shè)計(jì)基本結(jié)束。此后的工作是考驗(yàn)電路板及程序在現(xiàn)場(chǎng)工作的情況,找出設(shè)計(jì)弱點(diǎn)進(jìn)行改進(jìn)。程序的調(diào)試 本實(shí)驗(yàn)利用Keilμvision3作為軟件開(kāi)發(fā)環(huán)境。該開(kāi)發(fā)環(huán)境功能強(qiáng)大,代碼編譯效率高,可支持多種器件并支持軟件仿真及在線調(diào)試等功能。 雙擊桌面上的Keil圖標(biāo),打開(kāi)軟件界面如下圖所示:點(diǎn)開(kāi)上端的Project下拉菜單,選中其中的NewProject選項(xiàng)來(lái)建立一個(gè)新的工程項(xiàng)目。此時(shí)會(huì)彈出對(duì)話框來(lái)提示用戶輸入新項(xiàng)目的名稱及保存目錄。填寫完畢后選擇OK,軟件會(huì)顯示一系列的公司的產(chǎn)品型號(hào)供用戶選擇。選中本項(xiàng)目所使用的單片機(jī)型號(hào):Infineon公司的XC866單片機(jī),點(diǎn)擊OK,新項(xiàng)目建立并保存到指定地點(diǎn),然后自動(dòng)打開(kāi)一個(gè)空白的項(xiàng)目界面。器件的選擇也可以在以后來(lái)進(jìn)行修改,可通過(guò)Project-Selectdevicefortarget來(lái)進(jìn)行設(shè)置。 在空白的項(xiàng)目界面中,選擇File-New,則自動(dòng)生成一個(gè)空白的頁(yè)面,在該頁(yè)面中可以進(jìn)行程序的輸入。如果使用的是C語(yǔ)言,則需要以.C為后綴保存該文件;如果使用匯編語(yǔ)言編程,文件的后綴應(yīng)為.asm。編寫完畢并保存過(guò)后的文件如果要被當(dāng)前工程所使用,必須將其包含進(jìn)來(lái),步驟如下:在Group名上點(diǎn)擊右鍵,在彈出的選項(xiàng)列表中選擇AddFilestoGroup,則剛剛編輯的文件出現(xiàn)在Group下面。這時(shí)可以對(duì)該程序進(jìn)行編譯、鏈接并生成可執(zhí)行代碼。 對(duì)整個(gè)編程環(huán)境的設(shè)置可以通過(guò)在Target上單擊右鍵,選擇Optionsfortarget來(lái)進(jìn)行修改,在彈出的頁(yè)面中包含著所有和該工程有關(guān)的設(shè)置項(xiàng)。為了生成可寫入Flash的十六進(jìn)制代碼,需要在OUTPUT選項(xiàng)里選中CreatHEXFiles選項(xiàng)。經(jīng)過(guò)編譯和鏈接后,項(xiàng)目文件夾中會(huì)出現(xiàn)以HEX為后綴的可執(zhí)行文件。 對(duì)新編寫的程序進(jìn)行編譯后,相關(guān)信息會(huì)顯示在窗口下端的消息欄內(nèi)。如果程序有誤則需要返回開(kāi)始步驟進(jìn)行修改,直到提示沒(méi)有錯(cuò)誤為止。程序的固化編譯好的程序可以通過(guò)串口寫入到單片機(jī)內(nèi)部,過(guò)程如下:將串口線和計(jì)算機(jī)及單片機(jī)的串口連接起來(lái)。將開(kāi)發(fā)板上RS232下端的兩個(gè)跳線頭短接,雙擊打開(kāi)桌面上的STC-ISP.EXE軟件,出現(xiàn)操作界面。選擇單片機(jī)型號(hào)STC89C51RC或STC89C52RC。選擇左端的OpenFile按鈕,在選擇框中找到所生成的后綴為HEX的文件,點(diǎn)擊界面下端的Download按鈕,打開(kāi)試驗(yàn)板電源,觀察信息反饋窗口,如果信息反饋窗口顯示成功,文件被寫入到Flash中。按下復(fù)位按鈕,或重開(kāi)試驗(yàn)板電源,你的用戶板就可以獨(dú)立工作了。觀察程序運(yùn)行情況,根據(jù)顯示情況對(duì)程序進(jìn)行相應(yīng)的修改,直到滿意為止。實(shí)驗(yàn)一認(rèn)識(shí)實(shí)驗(yàn)平臺(tái)一、實(shí)驗(yàn)?zāi)康模?.認(rèn)識(shí)實(shí)驗(yàn)平臺(tái)。2.熟悉KEIL仿真調(diào)試軟件。二、實(shí)驗(yàn)步驟:1、實(shí)驗(yàn)平臺(tái)①連接1:EMMIT-S通過(guò)DB25孔與計(jì)算機(jī)串口通訊接口相連;②連接2:將電源線的插頭端插入實(shí)驗(yàn)平臺(tái),另一斷接試驗(yàn)電源,紅色端子接電源+5V,黑色(白色)端子接電源地。通電前一定要確認(rèn)沒(méi)有接錯(cuò)。注意:任何情況下都不能將電源的極性接反或接錯(cuò)電壓,否則將可能損壞實(shí)驗(yàn)平臺(tái)。以上連接完成后,打開(kāi)電源,此時(shí)電源指示燈應(yīng)變亮,若指示燈未顯示,請(qǐng)立即切斷電源重新檢查.三、實(shí)驗(yàn)內(nèi)容:安裝和學(xué)習(xí)keil開(kāi)發(fā)環(huán)境1.實(shí)驗(yàn)平臺(tái)簡(jiǎn)介實(shí)驗(yàn)平臺(tái)原使用EMMIT-S51仿真器進(jìn)行仿真試驗(yàn),原來(lái)只能在DOS環(huán)境下運(yùn)行(參看實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)一)。我校03級(jí)學(xué)生雷宇同學(xué)將這種仿真器軟件重新編寫,使之可以在keilc51環(huán)境下運(yùn)行。胡學(xué)海,任文偉老師和09級(jí)研究生商洪亮,重新改造了試驗(yàn)平臺(tái),實(shí)現(xiàn)了程序的自動(dòng)在線下載,從而可以無(wú)需使用仿真器,直接進(jìn)行編程試驗(yàn)。從此,實(shí)驗(yàn)平臺(tái)支持C語(yǔ)言編程,使熟悉C語(yǔ)言的學(xué)生可以更好地發(fā)揮其特長(zhǎng)。2.開(kāi)發(fā)環(huán)境的軟件安裝2.1安裝KeilC51V7.0軟件。(請(qǐng)自行安裝!)2.2安裝STC-ISP-V394文件夾下的“STC-ISP.EXE”3.使用使用keilc,開(kāi)始時(shí),先應(yīng)當(dāng)建立“project”工程,方法如下:1、點(diǎn)擊主菜單中的“project”,在下拉菜單中選擇“New”,先選擇工作目錄,再取一個(gè)工程名稱,點(diǎn)擊“保存”。如下圖:2、保存“工程”后,就需要選擇MCU型號(hào)。自動(dòng)彈出下面窗口按照你使用的MCU進(jìn)行選擇。通??梢赃x擇Atmel或者Intel公司的89C51/8751,如果作了數(shù)據(jù)線擴(kuò)展,應(yīng)當(dāng)選擇31系列MCU。3、點(diǎn)擊“確定”后,就會(huì)回到調(diào)試環(huán)境,下面需要添加你的程序。左側(cè)框內(nèi)出現(xiàn)“Target1”和“SourceGroup1”,用鼠標(biāo)右鍵點(diǎn)擊,在下拉菜單中選擇“AddfilestoGroup‘SourceGroup1”,然后選擇你已經(jīng)編好的程序。(包括存放的文件夾和文件名)4、編輯和修改你的程序展開(kāi)“SourceGroup1”,在下一行可以看見(jiàn)你的程序名,雙擊文件名,右邊就會(huì)看到你的源程序。可以直接進(jìn)行修改,保存。5、編譯你的程序先點(diǎn)擊的左邊1個(gè),屏幕下方會(huì)顯示有沒(méi)有錯(cuò)誤。雙擊此框中有錯(cuò)誤的行,光標(biāo)會(huì)自動(dòng)跳到源文件的對(duì)應(yīng)行,修改之。保存,再編譯。如果沒(méi)有錯(cuò)誤了,點(diǎn)擊第2個(gè)和3個(gè)按鈕進(jìn)行“l(fā)ingk”。(注意:新生成的HEX,OBJ,LST等文件是以“工程名”命名的)6、運(yùn)行你的程序編譯好的程序可以通過(guò)串口寫入到單片機(jī)內(nèi)部,過(guò)程如下:將串口線和計(jì)算機(jī)及單片機(jī)的串口連接起來(lái)。將開(kāi)發(fā)板上RS232下端的兩個(gè)跳線頭短接,雙擊打開(kāi)桌面上的STC-ISP.EXE軟件,出現(xiàn)操作界面。選擇單片機(jī)型號(hào)STC89C51RC或STC89C52RC。選擇左端的OpenFile按鈕,在選擇框中找到所生成的后綴為HEX的文件,點(diǎn)擊界面下端的Download按鈕,打開(kāi)試驗(yàn)板電源,觀察信息反饋窗口,如果信息反饋窗口顯示成功,文件被寫入到Flash中。按下復(fù)位按鈕,或重開(kāi)試驗(yàn)板電源,你的用戶板就可以獨(dú)立工作了。觀察程序運(yùn)行情況,根據(jù)顯示情況對(duì)程序進(jìn)行相應(yīng)的修改,直到滿意為止。四、實(shí)驗(yàn)步驟:注意:此實(shí)驗(yàn)不能在試驗(yàn)板上表現(xiàn)結(jié)果,只能觀察單片機(jī)內(nèi)存變化。1.進(jìn)入Keil仿真環(huán)境,打開(kāi)或者輸入下面程序。2.點(diǎn)擊“View”,在下拉菜單中選擇“Memorywindow”,右下角出現(xiàn)存儲(chǔ)器觀察窗口,在“Address”的方框中輸入:“I:0x00”后回車,你將看到片內(nèi)RAM內(nèi)容,單步執(zhí)行程序,觀察地址20H,21H和22H內(nèi)容變化。3.展開(kāi)PSW,觀察CY的變化。4.自己改變程序,采用多種運(yùn)行方式,體會(huì)它的不同之處,觀察運(yùn)行效果。(例如定義:BIT4和BIT5的地址,不大于7FH,觀察20H~2FH中那個(gè)地址與它相關(guān))五、報(bào)告要求:1、描述“全速運(yùn)行”、“單步”“跟蹤”、“斷點(diǎn)設(shè)置”的方法、運(yùn)行效果和作用。2、觀察單步運(yùn)行時(shí),指令產(chǎn)生的效果,補(bǔ)充注釋程序中沒(méi)有注釋的語(yǔ)句。3、能不能刪除“AJMPLOOP”語(yǔ)句?為什么?4、解釋地址20H和BIT4,BIT1之間的關(guān)系。觀察BIT5變化時(shí),RAM中那個(gè)地址內(nèi)容變了?解釋20H~2FH與位地址00~7FH的關(guān)系。寫出BIT5在那個(gè)RAM中,第幾位。5、偽指令EQU和BIT在本程序中效果如何?有何不同?六、程序清單:此程序必須用仿真器在keil中相應(yīng)窗口中觀察!在實(shí)驗(yàn)板上沒(méi)有顯示!DATA1EQU21HDATA2EQU22HBIT0BIT00BIT1BIT01BIT2BIT02BIT3BIT03BIT4EQU07HBIT5EQU37HORG00H;程序起始地址AJMPMAIN;跳轉(zhuǎn)到主程序入口ORG30H;主程序入口MAIN:MOVSP,40H;定義堆棧棧底MOVDATA1,#11H;將立即數(shù)11H賦給變量DATA1MOVDATA2,#0H;將立即數(shù)0H賦給變量DATA2SETBBIT1SETBBIT2SETBBIT3MOV20H,#0FFHLOOP:CPLBIT2;位變量BIT2置“1”MOVC,BIT1ANLC,/BIT2MOVBIT5,C;注意觀察20H內(nèi)容變化ORLC,BIT3MOVBIT4,A;注意觀察20H內(nèi)容變化SETBBIT0NOPCLRBIT0MOVDATA1,#DATA1;將DATA1作為立即數(shù)賦給變量DATA1INCDATA2;DATA2記錄了循環(huán)次數(shù)MOVA,DATA2CPLAMOVDATA1,AAJMPLOOPEND六、教學(xué)重點(diǎn)及注意事項(xiàng):1、仿真調(diào)試軟件Keil的使用。2、學(xué)會(huì)“位尋址”的一般操作,理解20H~2FH中的“位尋址”,偽指令BIT和EQU的作用。3、老師講解,學(xué)生參看實(shí)驗(yàn)指導(dǎo)書附錄中的圖紙,理解試驗(yàn)電路板各部分功能和電路原理。實(shí)驗(yàn)二移位及霓虹燈實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?、掌握串口方式0的用法及其相關(guān)指令。2、掌握8位移位寄存器74LS164的結(jié)構(gòu)及使用方法。3、學(xué)習(xí)使用指令:RL、RR、RLC、RRC4、了解霓虹燈的變化原理。二、實(shí)驗(yàn)內(nèi)容:●開(kāi)始實(shí)驗(yàn)前,先將實(shí)驗(yàn)板左邊的跳線S20如下圖所示連接:1、輸入程序并運(yùn)行,觀看“流水”演示。單步執(zhí)行其各條指令,注意每條指令所產(chǎn)生的效果。2、改變DELAY1S程序中的立即數(shù)的值,觀察“流水”速度的變化。3、將演示程序ROTATE子程序的RRC依次改為RLC、RR、RL,觀察現(xiàn)象。4、修改真值表和ROTATE中“移位”指令,使“流水”方向相反。三、實(shí)驗(yàn)原理:1、MCS-51單片機(jī)串口工作模式0:MCS-51單片機(jī)的串口共有4種工作模式,本次實(shí)驗(yàn)所采用的模式0,其余3種方在此處不作介紹。模式0為同步移位寄存器方式,串行數(shù)據(jù)都通過(guò)RXD(P3.0)輸入或輸出、TXD(P3.1)端輸出同步移位脈沖,RXD和TXD的波形如圖2-2所示。接收/發(fā)送的8位數(shù)據(jù),其低位先發(fā)(低位在前)。波特率固定在fosc/12。即:如果晶振為12MHz,則波特率為1MHz。當(dāng)一個(gè)數(shù)據(jù)寫入串口發(fā)送緩沖區(qū)SBUF時(shí),串行口自動(dòng)將此8位數(shù)據(jù)以fosc/12的波特率自動(dòng)從RXD引腳輸出,同時(shí)TXD引腳輸出同步鐘。8位數(shù)據(jù)送完需時(shí)8個(gè)機(jī)器周期。程序中每次向SBUF送完數(shù)據(jù)后都要延時(shí)就是為了等待SBUF將數(shù)據(jù)全部輸出。波特率:每秒傳輸數(shù)據(jù)的位,稱為“BAUD”波特率。即:1波特=1位/秒。單位:BPS1移位寄存器74LS164:移位寄存器74LS164可將串行的輸入數(shù)據(jù)變?yōu)椴⑿械妮敵鰯?shù)據(jù)。它內(nèi)部含有8個(gè)串接在一起的觸發(fā)器,作為數(shù)據(jù)寄存器;一個(gè)清除端/MR,當(dāng)其為低電平時(shí)清除所有觸發(fā)器中的數(shù)據(jù);一個(gè)時(shí)鐘腳CLK,當(dāng)/MR為高電平時(shí),CLK端出現(xiàn)一個(gè)上升沿則觸發(fā)器中的數(shù)據(jù)依次向后移動(dòng)一位;數(shù)據(jù)輸入端為A、B,通常都是將它們接在一起作為數(shù)據(jù)輸入端。本實(shí)驗(yàn)中三個(gè)74LS164串接在一起,/MR接高電平,CLK由CPU的TXD腳提供,數(shù)據(jù)由CPU的RXD腳給出,每個(gè)并行輸出端各串接一個(gè)200歐的電阻到發(fā)光二極管LED的陽(yáng)極,通過(guò)串口給它們送出數(shù)據(jù)便可控制各個(gè)發(fā)光二極管的“亮”“滅”。串接的電阻用于對(duì)LED限流(<20mA)。3、發(fā)光二極管的“共陰”“共陽(yáng)接法發(fā)光二極管的“共陰”接法是將所有的發(fā)光二極管的陰極接在一起并連接到低電平。這樣,當(dāng)其中某一個(gè)管子的陽(yáng)極上出現(xiàn)高電平時(shí)則該管導(dǎo)通發(fā)光?!肮碴?yáng)”接法則與之相反,是將所有發(fā)光二極管的陽(yáng)極接在一起并連接到高電平。當(dāng)其中某一個(gè)管子的陰極上出現(xiàn)低電平時(shí)則該管導(dǎo)通發(fā)光。本實(shí)驗(yàn)中的發(fā)光二極管為“共陰”接法,數(shù)據(jù)位為“1”時(shí),LED亮。本實(shí)驗(yàn)是通過(guò)單片機(jī)的極管小燈的“亮”“滅”。例如:若我們向74LS164送出的數(shù)據(jù)為80H、80H、80H(100000001000000010000000),則第1、9、17個(gè)小燈發(fā)光。然而,實(shí)際生活中我們所看到的各種霓虹燈的變化基本上都是通過(guò)利用硬件電路讀取ROM中的真值表來(lái)實(shí)現(xiàn)的。這種方法的成本較低,但較之用單片機(jī)控制,則其在變化的復(fù)雜程度上遠(yuǎn)遠(yuǎn)不及。霓虹燈的驅(qū)動(dòng)電路需要將74LS164的并行輸出腳(或ROM)連接一個(gè)三極管,(光耦合51系列))三極管再觸發(fā)可控硅,可控硅控制“霓虹燈變壓器”的通斷,使霓虹燈發(fā)光。四總結(jié)單片機(jī)用串口的MODE0進(jìn)行同步方式通訊。此時(shí),RXD和TXD分別發(fā)出數(shù)據(jù)和同步鐘,即:RXD每發(fā)出一位數(shù)據(jù),TXD就發(fā)出一個(gè)同步鐘,接收方利用此同步鐘讀取一位數(shù)據(jù)。本實(shí)驗(yàn)使用3個(gè)串接的移位寄存器74LS164作為接收方。74LS164芯片把串行的數(shù)據(jù)變?yōu)椴⑿袛?shù)據(jù),并將數(shù)據(jù)送到發(fā)光二極管。74LS164可以按需要串接多個(gè),單片機(jī)發(fā)送數(shù)據(jù)一次必須發(fā)夠所需的字節(jié)數(shù),以便約定的位顯示在約定的位置四實(shí)驗(yàn)步驟1.進(jìn)入keil環(huán)境,建立工程,輸入程序,注意文件擴(kuò)展名為“ASM”并保存到D:你的文件夾中。2.下載程序3.改變跳線,運(yùn)行程序,觀察“霓虹燈”變化五報(bào)告要求1、寫出“流水燈“程序或”反流水燈程序“2、推導(dǎo)出例程中延時(shí)子程序DELAY1S的延時(shí)時(shí)間,要求寫出推導(dǎo)過(guò)程。注:?jiǎn)纹瑱C(jī)晶振頻率為12M,機(jī)器周期1微秒。3為什么每次向串口寄存器送出數(shù)據(jù)后都要延時(shí)一段。4、分析指令RRC和RLC中進(jìn)位“C”在程序中的作用。實(shí)驗(yàn)三鍵盤掃描實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?、掌握MCS-51單片機(jī)P1口的查詢工作方式。2、學(xué)會(huì)單片機(jī)鍵盤的擴(kuò)展方法和軟件處理。1、理解“鍵抖”的含義并掌握其解決方法。二、實(shí)驗(yàn)內(nèi)容:編寫程序?qū)崿F(xiàn):每按一次鍵,LED數(shù)碼管上顯示相應(yīng)的按鍵值。觀察LED數(shù)碼管顯示情況,體會(huì)鍵盤掃描原理。三、實(shí)驗(yàn)步驟:1.輸入(編輯)程序,注意文件擴(kuò)展名為“ASM”并保存到D:\SYBER\BIN目錄。2.進(jìn)入keil環(huán)境,建立工程。3.在“project”中添加你的程序,你編寫的程序,選擇buildtarget對(duì)程序進(jìn)行編譯。4.如果提示錯(cuò)誤語(yǔ)句,應(yīng)立即改正并保存。5.再次編譯“rebuild”程序,直到無(wú)錯(cuò)誤語(yǔ)句。6.固化程序,運(yùn)行程序。7.改變鍵盤掃描程序?yàn)椤爸鹦袙呙琛?,評(píng)價(jià)兩種程序的優(yōu)缺點(diǎn)。注:“無(wú)鍵”判斷的條件,需根據(jù)鍵盤掃描程序返回值決定。四、實(shí)驗(yàn)原理:1、P1口的結(jié)構(gòu)原理I/O口的每位鎖存器均由D觸發(fā)器組成。下面以P1口為例介紹一下它們的原理。在CPU的“寫鎖存器”信號(hào)驅(qū)動(dòng)下,將內(nèi)部總線上的數(shù)據(jù)寫入鎖存器中。鎖存器的輸出端反饋到內(nèi)部總線上,以響應(yīng)來(lái)自CPU的"讀鎖存器"信號(hào),把鎖存器的內(nèi)容讀入內(nèi)部總線上,送CPU處理.而欲使CPU響應(yīng)"讀引腳"信號(hào)時(shí),先由CPU向要讀的引腳(如P1.X)的D觸發(fā)器送一個(gè)高電平。如圖4-1所示.此時(shí)鎖存器D端為高電平,則/Q輸出為低電平,T1截止,引腳對(duì)外為高阻,其狀態(tài)由外電路決定。CPU可通過(guò)"讀引腳"端將P1.X引腳上的數(shù)據(jù)讀入。2、矩陣式鍵盤接口矩陣式鍵盤由行線和列線組成,如圖3-2所示。本實(shí)驗(yàn)中,行線和列線都連接到P1口。按鍵安裝在行、列的交叉點(diǎn)上。鍵值定義也如圖所示。P1口自帶上拉電阻,因此沒(méi)有外接。按鍵的識(shí)別方法有掃描法和線反轉(zhuǎn)法.掃描法:?jiǎn)纹瑱C(jī)依次令一列為低電平,讀取行值,若行值全“高”則此列無(wú)鍵按下,若有低電平的行,表明此列此行有鍵按下。一旦發(fā)現(xiàn)有鍵按下,程序計(jì)算出按下鍵的行列值,并依照定義給ACC賦值。本實(shí)驗(yàn)附錄中就是“掃描”方式,同學(xué)可以仔細(xì)閱讀理解,也可以替代實(shí)驗(yàn)中的KEYSCAN子程序。線反轉(zhuǎn)法:本例中使用的是線反轉(zhuǎn)法,下面介紹它的具體操作步驟:第一步:將行線所接端口清零,讀入列線端口上的數(shù)據(jù),若有低電平的位,該位所對(duì)應(yīng)的列上有鍵被按下;第二步:將列線所接端口清零,讀入行線端口上的數(shù)據(jù),若有低電平的位,則該位所對(duì)應(yīng)的行上有鍵被按下;綜合一、二兩步的結(jié)果,可確定按鍵所在的行和列,此后便可按照鍵的定義給ACC賦值。3、“鍵抖”現(xiàn)象通常,按鍵所用開(kāi)關(guān)基本上都是機(jī)械彈性開(kāi)關(guān)。均利用了機(jī)械觸點(diǎn)的彈性作用。一個(gè)電壓信號(hào)通過(guò)機(jī)械觸點(diǎn)的斷開(kāi)、閉合過(guò)程波形如圖3-3所示。由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開(kāi)關(guān)在閉合時(shí)不會(huì)馬上穩(wěn)定地接通,在斷開(kāi)時(shí)也不會(huì)一下子斷開(kāi)。因而在閉合及斷開(kāi)的瞬間均伴隨著一連串的抖動(dòng)。抖動(dòng)時(shí)間的長(zhǎng)短由按鍵的機(jī)械特性決定。一般為5~10MS。軟件消除“鍵抖”(影響):在第一次檢測(cè)到有鍵被按下時(shí),執(zhí)行一段延時(shí)10MS以上的子程序,避開(kāi)“鍵抖動(dòng)”期間,然后再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)電平。若是,則確認(rèn)為真正有鍵按下,此后可進(jìn)行行列的判定。若否,可認(rèn)為無(wú)鍵按下,可能是干擾或誤判。五、報(bào)告要求:1、畫出下面例程的流程圖2、鍵位和鍵值可以自己改變嗎?3、如果只設(shè)4個(gè)鍵,畫出電路示意圖,并描述軟件處理方法。假定4個(gè)鍵為:加;減;光標(biāo)左移;光標(biāo)右移。4、解釋“鍵抖”現(xiàn)象極其軟件解決方法5、(選作)編寫一個(gè)“掃描法”的鍵盤掃描程序。實(shí)驗(yàn)四數(shù)字顯示實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?、掌握7段LED的原理、使用和字符編碼。2、了解二~十進(jìn)制7段譯碼驅(qū)動(dòng)器74LS47的運(yùn)用。3、了解“動(dòng)態(tài)顯示”的含義。二、實(shí)驗(yàn)內(nèi)容:1、在顯示器上顯示1,2,3,4,5,6,7,82、單步執(zhí)行例程,觀察數(shù)碼管的變化,理解動(dòng)態(tài)顯示含義。想一想,本例的電路可以作靜態(tài)顯示嗎?為什么?2、修改程序,將顯示的數(shù)據(jù)順序變反,體會(huì)“位置碼”和“數(shù)據(jù)”的關(guān)系。3、選作:修改實(shí)驗(yàn)三的顯示程序?yàn)椤岸〞r(shí)中斷顯示程序”(參看附錄4-2)三、實(shí)驗(yàn)原理:由圖4-1可以看出,當(dāng)?shù)刂稟14(P2.6)為1時(shí),選中U18的74LS273,此時(shí)就可以從P0口送出顯示數(shù)據(jù)。數(shù)據(jù)格式為:高四位表明顯示位置(由74LS138譯碼,經(jīng)三極管驅(qū)動(dòng),連到不同的數(shù)碼管)低四位為要顯示的BCD數(shù)(經(jīng)7447譯碼為7段顯示代碼并送到各數(shù)碼管的相應(yīng)筆畫引腳)。編程時(shí),需按硬件規(guī)定的地址(P2=40H)送出顯示數(shù)據(jù),數(shù)據(jù)=位置+BCD數(shù)。1、7段LED(LightEmittingDiode)數(shù)碼管我們常常把8位鎖存器的輸出直接連接到LED數(shù)碼管上,此時(shí)需用軟件譯碼—把數(shù)字變?yōu)椤岸未a”,然后送到鎖存器,相應(yīng)的字型就可以顯示出來(lái)。注意:一般連線D0對(duì)應(yīng)筆畫a,D1對(duì)應(yīng)筆畫b……,D7對(duì)應(yīng)小數(shù)點(diǎn)。軟件譯碼方法可用“查表”法,教材上有介紹。7段LED顯示塊是由發(fā)光二極管顯示字段組成的顯示器,分為“共陰”和“共陽(yáng)”兩種(“共陰”“共陽(yáng)”原理見(jiàn)實(shí)驗(yàn)二)。表4-1為7段LED常用字型碼。下面我們來(lái)看看表4-1中的字符碼是如何產(chǎn)生的。以共陰接法7段LED的“0”~“9”字符為例,如表4-2所示。表3-2無(wú)譯碼的“共陰”顯示“段碼表”2、二—十進(jìn)制7段譯碼驅(qū)動(dòng)器74247(74LS47)74247為硬件譯碼器,輸入端只需直接輸入十進(jìn)制BCD數(shù)0~9,輸出端就可輸出字符的“段碼”。且自帶驅(qū)動(dòng),可直接連接數(shù)碼管。其字型見(jiàn)圖4-2。與74247類似功能的集成電路很多,例如74LS46、74LS47、74LS48、74LS49等。四實(shí)驗(yàn)步驟:(參看前面實(shí)驗(yàn))五、報(bào)告要求:1、什么是靜態(tài)顯示和動(dòng)態(tài)顯示?2、為什么動(dòng)態(tài)顯示中,每顯示一個(gè)數(shù)要延時(shí)若干時(shí)間?試修改DELAY5MS程序的立即數(shù)觀察運(yùn)行效果,并作記錄。分析延時(shí)長(zhǎng)好還是延時(shí)短好,說(shuō)明延時(shí)量對(duì)人眼的視覺(jué)影響。3為什么動(dòng)態(tài)顯示要不斷地進(jìn)行顯示循環(huán)?4畫出顯示程序的原理框圖實(shí)驗(yàn)五定時(shí)器實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模赫莆斩〞r(shí)器的使用及初始化方法,掌握定時(shí)器中斷的初始化和中斷入口。二、實(shí)驗(yàn)內(nèi)容:利用實(shí)驗(yàn)板提供的電路,實(shí)現(xiàn)實(shí)際時(shí)鐘功能。本實(shí)驗(yàn)采用50mS中斷一次,中斷服務(wù)程序?qū)ψ兞縈S50加1,當(dāng)20次時(shí)為1秒,對(duì)秒加1;秒變量到達(dá)60時(shí),對(duì)分鐘加1…。三、實(shí)驗(yàn)要求:1.顯示當(dāng)前的時(shí);分;秒2.增加語(yǔ)句,可直接設(shè)定時(shí);分;秒當(dāng)前值,使時(shí)鐘更加接近現(xiàn)時(shí)。2.參照例程(實(shí)時(shí)時(shí)鐘顯示),將其修改后令最右邊的兩位數(shù)碼管顯示0.1秒值。提示:每100MS(兩次中斷)改寫一次MS50單元的數(shù)據(jù),需要增加變量3.將定時(shí)設(shè)為10mS中斷,每10MS改寫一次MS50單元的數(shù)據(jù),中斷計(jì)數(shù)判斷值為100,改后最右邊的兩位數(shù)碼管顯示1%秒精度。4.改用定時(shí)器T0替換實(shí)驗(yàn)中的T1,編寫控制字,改寫啟停命令和中斷允許命令,更改中斷入口,實(shí)現(xiàn)相同功能。三、實(shí)驗(yàn)原理:本實(shí)驗(yàn)例程所采用的是定時(shí)/記數(shù)器T1,工作方式1;16位記數(shù);振蕩器為單片機(jī)的12M工作晶振;計(jì)數(shù)頻率為fosc/12=1MHz。定時(shí)器T1的中斷服務(wù)程序COUNTER每50mS中斷執(zhí)行一次,每次都對(duì)MS50加1,當(dāng)滿20次時(shí),對(duì)SECONGD加1,同時(shí)清除MS50的計(jì)數(shù)值。當(dāng)SECONGD加到60時(shí),清除SECONGD,MINI加1,….這樣,中斷服務(wù)程序?qū)崟r(shí)計(jì)算“時(shí)、分、秒”的變化CHDBCD程序把MS50以及秒;分;時(shí)轉(zhuǎn)換成BCD數(shù)并送到相應(yīng)顯示緩沖區(qū)備顯。DISPLAY程序把顯示緩沖區(qū)的數(shù)據(jù)送到數(shù)碼管。四、實(shí)驗(yàn)步驟:參看實(shí)驗(yàn)二步驟五、報(bào)告要求:1.寫出:改用T0中斷,相應(yīng)的TMOD的控制字和中斷入口地址。2.寫出:定時(shí)器初值的計(jì)算方法3.寫出:實(shí)驗(yàn)內(nèi)容的程序編寫思路。(中斷程序和主程序框圖)4.選作1:修改顯示程序,使得每調(diào)用一次顯示一位,依次調(diào)用依次顯示各位;然后由定時(shí)器T1,2MS中斷一次,每次中斷服務(wù)就調(diào)用你新編的顯示程序。(參看:實(shí)驗(yàn)四的“定時(shí)中斷顯示”部分)5.選作2:調(diào)用鍵盤掃描并能夠修改時(shí)鐘初始值。(比較難)實(shí)驗(yàn)六中斷處理實(shí)驗(yàn)零概述:MCS-51系列單片機(jī)具有5個(gè)中斷源,當(dāng)要使用某個(gè)中斷源時(shí),應(yīng)當(dāng)做一些必要的初始化:①在中斷向量入口地址設(shè)跳轉(zhuǎn)指令;②初始化相關(guān)“源”的中斷方式(INT0,INT1)或數(shù)據(jù)(T0,T1,T2);③啟動(dòng)工作開(kāi)始(T0,T1,T2),允許中斷。④在中斷服務(wù)程序的開(kāi)始部分要對(duì)“現(xiàn)場(chǎng)”進(jìn)行保護(hù),RETI前需“恢復(fù)現(xiàn)場(chǎng)”。中斷向量表如下:現(xiàn)場(chǎng)保護(hù)方法:⊕PSW;ACC入棧⊕切換寄存器組⊕DPTR;B視情況處理(入棧)恢復(fù)現(xiàn)場(chǎng)方法:⊕反“入棧順序”把棧內(nèi)寄存器出棧。(最后ACC,PSW出棧)⊕中斷返回一、實(shí)驗(yàn)?zāi)康模?、掌握MCS-51單片機(jī)外部中斷的使用2、學(xué)習(xí)“從引腳輸出方波”的方法3、了解14位二進(jìn)制計(jì)數(shù)/分頻/振蕩器芯片CD4060的用方法二、實(shí)驗(yàn)內(nèi)容1.閉合S19對(duì)CD4060供電。通過(guò)電路板上的J3(P5)跳線選擇4060的輸出,觀察小燈L9的閃爍頻率。運(yùn)行程序1,聽(tīng)喇叭音調(diào)變化2.閉合S19對(duì)CD4060供電。調(diào)試?yán)?,通過(guò)中斷服務(wù)程序改變記數(shù)值,輸出不同頻率方波控制喇叭發(fā)聲。三、實(shí)驗(yàn)原理:電路工作原理:外接32768HZ晶體的CD4960芯片產(chǎn)生32768HZ的震蕩頻率,分頻后經(jīng)P5(J3)和P10(J4)提供選擇,送到CPU的INT0引腳。中斷服務(wù)程序通過(guò)CPU的T1(P3.5)引腳送出方波,經(jīng)三極管驅(qū)動(dòng)后送到喇叭,使其發(fā)聲。1.14位二進(jìn)制記數(shù)/分頻/振蕩器CD4060:振蕩/分頻器CD4060是一個(gè)振蕩器+14級(jí)分頻器集成電路,其輸出QN端的頻率為其振蕩頻率的1/2N;圖6-1左邊部分是振蕩電路,可由外接電阻和電容構(gòu)成RC振蕩器,也可通過(guò)外接晶體構(gòu)成高精度的晶體振蕩器。電路中所接晶體頻率為32768Hz,在普通的電子表中就能夠找到它。此時(shí)Q14輸出0.5秒周期的方波。2.電路原理:如圖6-1所示,本實(shí)驗(yàn)電路通過(guò)插頭P5、P10將4060的輸出接到CPU的INT0端,提供外部中斷信號(hào)。中斷服務(wù)程序通過(guò)對(duì)INT0引腳上的脈沖記數(shù)(中斷次數(shù))產(chǎn)生頻率不同的方波。CPU通過(guò)P3.5(T1,15腳)輸出頻率不同的方波,通過(guò)三極管9014放大,控制喇叭發(fā)出不同的聲音,以便我們觀察效果。3.喇叭上串連了R11(100歐)用于保護(hù)喇叭并使音量不至于太大。四、實(shí)驗(yàn)步驟:1.運(yùn)行程序1。觀察效果,分析喇叭發(fā)聲的軟件原理和硬件原理。2.改變P5跳線,聽(tīng)到音調(diào)變化。3.運(yùn)行程序2。改變P5跳線,聽(tīng)到音調(diào)變化。4.改變對(duì)0AH地址的初始送數(shù),改變VALU的初值,記錄音調(diào)變化趨勢(shì)。5.設(shè)置斷點(diǎn)在INT_0:語(yǔ)句前面。把P10(J4)跳線拔下,全速運(yùn)行例程,此時(shí)不能進(jìn)入斷點(diǎn)。當(dāng)你插上跳線時(shí),程序進(jìn)入斷點(diǎn)并停止運(yùn)行。說(shuō)明發(fā)生了中斷。改用定時(shí)器中斷(初始化定時(shí)器,關(guān)閉外部中斷,允許定時(shí)器中斷,改變中斷入口,中斷程序需重裝定時(shí)器初值),分析定時(shí)器值與喇叭頻率的關(guān)系6.選作:在上一個(gè)實(shí)驗(yàn)步驟6基礎(chǔ)上,增加鍵盤掃描,按鍵值不同時(shí),寫入定時(shí)器的初值也不同,實(shí)現(xiàn)電子琴功能。提示:定時(shí)器初值用DB定義,查表獲得,然后改寫定時(shí)器初值變量。中斷程序?qū)⒍〞r(shí)器初值變量寫入到定時(shí)器。五、報(bào)告要求1.注意通過(guò)實(shí)驗(yàn)體會(huì),大概多少Hz范圍內(nèi)的音頻我們能感覺(jué)到,什么范圍內(nèi)的頻率聽(tīng)起來(lái)比較舒服?2.中斷服務(wù)程序中,為什么要切換寄存器組?作用是什么?3.改用定時(shí)器產(chǎn)生中斷,達(dá)到同樣的發(fā)聲效果,寫出定時(shí)器中斷的初始化部分,中斷服務(wù)程序4.能否設(shè)置一個(gè)樂(lè)譜,讓定時(shí)器按照樂(lè)譜依次更新設(shè)定的定時(shí)常數(shù),從而使喇叭發(fā)出音實(shí)驗(yàn)七串行通訊實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?、掌握MCS-51單片機(jī)串口的UART工作方式。2、掌握RS-232C串行接口標(biāo)準(zhǔn)。3、了解RS-232C驅(qū)動(dòng)集成電路MAX202的使用。二、實(shí)驗(yàn)內(nèi)容:1編寫程序,實(shí)現(xiàn)每按一次鍵盤,單片機(jī)發(fā)送:20H,30H,31H,32H,33H,34H,35H,36H,37H,38H,39H一次。速度2400BPS,8位,無(wú)校驗(yàn),停止位12編寫程序,實(shí)現(xiàn)每接收到55H,單片機(jī)發(fā)送:20H,30H,31H,32H,33H,34H,35H,36H,37H,38H,39H一次。速度4800BPS,8位,無(wú)校驗(yàn),停止位1(任選一題)開(kāi)始實(shí)驗(yàn)前,將實(shí)驗(yàn)板左邊的跳線S20如下圖連接:把電纜插頭的2,3腳相連,自己的發(fā)送數(shù)據(jù)被自己收到。有可能的話,可以用電纜把兩機(jī)對(duì)接,連接方法:甲方2腳連乙方3腳,甲方3腳連乙方2腳,甲乙方5腳相連。本實(shí)驗(yàn)重點(diǎn)是雙機(jī)通訊,同時(shí)也包括了前面介紹過(guò)的鍵盤接口、顯示、中斷處理的內(nèi)容,是一個(gè)綜合性實(shí)驗(yàn)。同學(xué)們?cè)趯?shí)驗(yàn)過(guò)程中應(yīng)認(rèn)真理解。三、實(shí)驗(yàn)原理:1、RS-232C接口RS-232C是美國(guó)電子工業(yè)協(xié)會(huì)正式公布的串行接口標(biāo)準(zhǔn),也是目前最常用的串行接口標(biāo)準(zhǔn),用來(lái)實(shí)現(xiàn)計(jì)算機(jī)與計(jì)算機(jī)之間、計(jì)算機(jī)與外設(shè)之間的數(shù)據(jù)通訊。適用于:設(shè)備之間的通訊距離不大于15m,傳輸速率最大為20KB/S。(現(xiàn)已擴(kuò)大范圍)其電平為:+3V─+12V邏輯0-3V─-12V邏輯1表7-1RS232C插座標(biāo)準(zhǔn)2、RS-232C驅(qū)動(dòng)芯片MAX202由于傳輸電壓為±12V,一般接口芯片多用±12V供電,有時(shí)不易獲得此電壓,利用MAX202/232/ICL232,只須提供+5V電壓,配接4個(gè)0.1uF的電容即可,它能自動(dòng)升壓。電路圖參看圖7-1。3、試驗(yàn)電纜:本實(shí)驗(yàn)采用3線連接(0-MODEM方式)。采用9芯插頭電纜兩機(jī)對(duì)接。電纜制作如圖7-2所示。雙方2腳3腳連接順序相反;5腳連5腳,自己的7、8腳短路。4、串行口結(jié)構(gòu)和控制MCS-51單片機(jī)內(nèi)部的串行口有兩個(gè)物理上獨(dú)立的接收、發(fā)送緩沖區(qū)SBUF,可同時(shí)發(fā)送、接收數(shù)據(jù)。發(fā)送緩沖區(qū)只能寫入不能讀出,接收緩沖區(qū)只能讀出不能寫入,兩緩沖區(qū)占用同一個(gè)地址(99H)。MCS-51單片機(jī)串行口工作由SCON和PCON兩個(gè)特殊寄存器控制。對(duì)其進(jìn)行初始化設(shè)置后,串行接口將按設(shè)定的方式工作。(2)波特率設(shè)定參看本實(shí)驗(yàn)指導(dǎo)書“參考資料”單片機(jī)的控制寄存器5使用方式1或3,晶振12M,可使用時(shí)間控制字0F3H。四、實(shí)驗(yàn)步驟:基礎(chǔ)試驗(yàn):?jiǎn)纹瑱C(jī)發(fā)送數(shù)據(jù),計(jì)算機(jī)的“超級(jí)終端”接收并顯示。注意單片機(jī)必須發(fā)送ASCII碼,否則超級(jí)終端不能顯示?;蚴褂么谡{(diào)試器調(diào)試,連接通訊電纜:從試驗(yàn)板RS232插座到計(jì)算機(jī)COM1插座。如果單片機(jī)程序運(yùn)行后,按實(shí)驗(yàn)板上任意鍵,本實(shí)驗(yàn)將在計(jì)算機(jī)“超級(jí)終端”顯示數(shù)字0~9。1、輸入下面程序,并在keil環(huán)境中編譯通過(guò)。2、在WINDOWS中選擇“開(kāi)始-程序-附件-通訊-超級(jí)終端”建立超級(jí)終端按鈕,并輸入名稱。再設(shè)定超級(jí)終端屬性:直接電纜連接到通訊口1;波特率2400;8位數(shù)據(jù);1位停止位;無(wú)奇偶效驗(yàn)。然后保存退出。再一次打開(kāi),點(diǎn)擊你設(shè)定的按鈕。3、切換到keil環(huán)境,運(yùn)行單片機(jī)程序。再切換到“超級(jí)終端”,按下單片機(jī)任意鍵,觀看屏幕顯示情況。4、修改程序和超級(jí)終端的設(shè)置:波特率改用4800或9600。5、修改程序,使程序發(fā)送從“A”到“Z”。6、修改程序,使計(jì)算機(jī)上顯示“HELLO”(提示:采用查表輸出,表中數(shù)據(jù)參看本實(shí)驗(yàn)指導(dǎo)書附錄中的ASCII碼表)7、選作:每次單片機(jī)按一個(gè)鍵就發(fā)送1個(gè)數(shù)并在數(shù)碼管上顯示,并將此數(shù)轉(zhuǎn)換成ASCII碼發(fā)送出去。(不用中斷,利用實(shí)驗(yàn)二程序修改,添加串口初始化)8、選作:?jiǎn)纹瑱C(jī)接收計(jì)算機(jī)的鍵入數(shù)字,將其顯示在數(shù)碼管上。提示:在上一個(gè)選作基礎(chǔ)上,利用串口中斷接收數(shù)據(jù)并將此數(shù)轉(zhuǎn)換成BCD數(shù)填入顯示緩沖區(qū)。注:超級(jí)終端還能將鍵值通過(guò)串口發(fā)送出去。五、報(bào)告要求:1、回答問(wèn)題:?jiǎn)纹瑱C(jī)異步通訊軟件初始化有那幾個(gè)要點(diǎn)?2、為什么說(shuō),單片機(jī)通訊時(shí),只要超級(jí)終端能收到數(shù)據(jù),單片機(jī)-單片機(jī)通訊就能實(shí)現(xiàn)?(提示:用此方法驗(yàn)證硬件和程序初始化正確)3、將修改程序(發(fā)送“A~Z”以及“HELLO”)要點(diǎn)和顯示現(xiàn)象加以說(shuō)明。4、思考題:利用ASCII碼轉(zhuǎn)換,使單片機(jī)發(fā)送內(nèi)容與按鍵名相同,寫出發(fā)送程序。(鍵盤掃描程序略寫,只寫出:“LCALLKEYSCAN”即可。5、設(shè)計(jì)程序:兩臺(tái)單片機(jī)直接通訊,要求在一個(gè)單片機(jī)按鍵后,鍵值顯示在另一個(gè)單片機(jī)數(shù)碼管上。鍵盤掃描和顯示程序用名稱代替,不用抄出。實(shí)驗(yàn)八基于C語(yǔ)言(C51)的鍵盤掃描和移位顯示一、實(shí)驗(yàn)?zāi)康模?、掌握M

溫馨提示

  • 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)論