單片機(jī)應(yīng)用技術(shù)教程(基于Keil與Proteus)(微課版)教案 -張小平 4.2單片機(jī)數(shù)碼管顯示控制-4.7 LCD液晶屏和LED點(diǎn)陣_第1頁
單片機(jī)應(yīng)用技術(shù)教程(基于Keil與Proteus)(微課版)教案 -張小平 4.2單片機(jī)數(shù)碼管顯示控制-4.7 LCD液晶屏和LED點(diǎn)陣_第2頁
單片機(jī)應(yīng)用技術(shù)教程(基于Keil與Proteus)(微課版)教案 -張小平 4.2單片機(jī)數(shù)碼管顯示控制-4.7 LCD液晶屏和LED點(diǎn)陣_第3頁
單片機(jī)應(yīng)用技術(shù)教程(基于Keil與Proteus)(微課版)教案 -張小平 4.2單片機(jī)數(shù)碼管顯示控制-4.7 LCD液晶屏和LED點(diǎn)陣_第4頁
單片機(jī)應(yīng)用技術(shù)教程(基于Keil與Proteus)(微課版)教案 -張小平 4.2單片機(jī)數(shù)碼管顯示控制-4.7 LCD液晶屏和LED點(diǎn)陣_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGE8-《單片機(jī)應(yīng)用技術(shù)教案》本單元課題第四部分單片機(jī)的各種控制項(xiàng)目2單片機(jī)數(shù)碼管顯示控制課次本單元共課次備課節(jié)數(shù)共8節(jié)授課節(jié)數(shù)共8節(jié)授課時間第周授課地點(diǎn)教學(xué)用具多媒體教室、仿真軟件、動畫演示等教學(xué)方法演示法、講解法、討論法等教學(xué)目標(biāo)1.掌握數(shù)字、字符轉(zhuǎn)換成顯示段碼的軟件譯碼方法;2.掌握靜態(tài)顯示的原理;3.掌握動態(tài)顯示的原理;4.掌握數(shù)碼管程序設(shè)計的方法;5.培養(yǎng)邏輯思維和利用知識解決實(shí)際問題的能力;重點(diǎn)難點(diǎn)重點(diǎn):單片機(jī)對數(shù)碼管的控制;難點(diǎn):各類控制代碼的設(shè)計;參考資料《單片機(jī)應(yīng)用技術(shù)項(xiàng)目教程》郭志勇人民郵電出版社《單片機(jī)原理及應(yīng)用》(C51語言)董國增清華大學(xué)出版社《51單片機(jī)應(yīng)用技術(shù)》孫立書,清華大學(xué)出版社等課程思政教學(xué)流程說明教學(xué)組織過程設(shè)計學(xué)生舉例參與仿真演示創(chuàng)設(shè)情景師生小結(jié)進(jìn)入新課學(xué)習(xí)出示課題師生互動,教師重點(diǎn)幫助學(xué)生理解有關(guān)概念【創(chuàng)設(shè)情景新課導(dǎo)入】我們在上一個章節(jié)的學(xué)習(xí)中學(xué)習(xí)了單片機(jī)對LED燈的控制,本章節(jié)我們一起來學(xué)習(xí)單片機(jī)對數(shù)碼管的各種控制。【引導(dǎo)探究學(xué)習(xí)新課】任務(wù)一認(rèn)識數(shù)碼管1.數(shù)碼管的外形和結(jié)構(gòu)2.數(shù)碼管的內(nèi)部結(jié)構(gòu)圖3.LED顯示字形代碼。學(xué)生猜想危害機(jī)理教師講解拓展延伸閱讀教材學(xué)生討論任務(wù)二數(shù)碼管的靜態(tài)顯示1.數(shù)碼管靜態(tài)顯示的概念單片機(jī)將所要顯示的數(shù)據(jù)送出去后,數(shù)碼管始終顯示該數(shù)據(jù)(不變),到下一次顯示時,再傳送一次新的顯示數(shù)據(jù)。靜態(tài)顯示的接口電路采用一個并行口接一個數(shù)碼管,數(shù)碼管的公共端按共陰極或共陽極分別接地或接VCC。這種接法,每個數(shù)碼管都要單獨(dú)占用一個并行I/O口,以便單片機(jī)傳送字形碼到數(shù)碼管,控制數(shù)碼管的顯示。靜態(tài)顯示:優(yōu)點(diǎn):顯示的數(shù)據(jù)穩(wěn)定,無閃爍,占用CPU時間少。缺點(diǎn):是由于數(shù)碼管始終發(fā)光顯然其缺點(diǎn)就是當(dāng)顯示位數(shù)多時,占用I/O口過多。功耗比較大。2.數(shù)碼管循環(huán)顯示0到F(1)用PROTEUS設(shè)計數(shù)碼管循環(huán)顯示0到F控制電路(2)用KeilC設(shè)計數(shù)碼管循環(huán)顯示0到F控制電路程序#include<AT89X52.H>unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};unsignedcharK;voiddelay(void){unsignedchari,j,k;for(i=40;i>0;i--)for(j=40;j>0;j--)for(k=248;k>0;k--);}voidmain(void){while(1){for(K=0;K<16;K++){P2=table[K];delay();}}}(3)將在KeilC中生成的數(shù)碼管循環(huán)顯示0到F的HEX類型文件帶入電路里進(jìn)行調(diào)試。(4)完善和總結(jié)。如果數(shù)碼管換成共陽數(shù)碼管如何實(shí)現(xiàn)0到F的顯示?如何在數(shù)碼管上循環(huán)顯示F-0數(shù)字?若是連接共陽極數(shù)碼管呢?1-8怎么顯示?任務(wù)三多個數(shù)碼管動態(tài)掃描顯示0123451.六個共陰數(shù)碼管動態(tài)掃描顯示要求動態(tài)顯示也稱掃描顯示;顯示器由6個共陰極LED數(shù)碼管構(gòu)成;P2口輸出顯示段碼,經(jīng)由一片74LS245驅(qū)動輸出給LED管;P1口輸出位碼(片選)。2.用PROTEUS設(shè)計6個共陰數(shù)碼管動態(tài)掃描顯示控制電路3.用KeilC設(shè)計6個共陰數(shù)碼管動態(tài)掃描顯示控制電路程序#include<AT89X52.h>unsignedcharcodeTab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C};unsignedcharcodeCol[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};voidDelay(){unsignedchari;for(i=0;i<250;i++);}voidmain()//同時顯示012345{unsignedcharj;while(1){for(j=0;j<6;j++) {P3=Tab[j];P1=Col[j];//開第一個(共陰)數(shù)碼管Delay();P1=0xff;//關(guān)數(shù)碼管 Delay();}}}4.將在KeilC中生成的6個共陰數(shù)碼管動態(tài)掃描顯示的HEX類型文件帶入電路里進(jìn)行調(diào)試。5.完善和總結(jié)。并提出6個共陽數(shù)碼管動態(tài)掃描顯示012345,如何實(shí)現(xiàn)?任務(wù)四數(shù)碼管靜態(tài)掃描顯示0-99計數(shù)器1.利用AT89S52單片機(jī)來制作一個0~99計數(shù)器。要求使用一個手動計數(shù)按鈕,實(shí)現(xiàn)0~99的計數(shù),并且通過兩個共陽級數(shù)碼管顯示計數(shù)結(jié)果,數(shù)碼管顯示采用靜態(tài)顯示方式。靜態(tài)顯示;顯示器由2個共陽級極數(shù)碼管組成;2.0-99計數(shù)器電路設(shè)計3.0-99計數(shù)顯示c語言程序#include<AT89X52.H>//包含AT89X52.H頭文件/*定義0~9十個數(shù)字的字型碼表*/unsignedcharcodetable[]={0xc0,0xf9,0xA4,0xB0,0x99,0x92,0x82,0xf8,0x80,0x90};unsignedcharCount;//定義變量放置計數(shù)數(shù)值voiddelay10ms(void)//定義10ms延時函數(shù){unsignedchari,j;for(i=20;i>0;i--)for(j=248;j>0;j--);}voidmain(void){Count=0;//計數(shù)變量初始為0P0=table[Count/10];//十位管顯示P2=table[Count%10];//個位顯示while(1)//計數(shù)顯示處理{if(P1_0==0)//鍵按下?{delay10ms();//延時去抖動if(P1_0==0)//確定鍵按下{Count++;//計數(shù)加1if(Count==100)//計數(shù)到100?{Count=0;//到100回0學(xué)生總結(jié)教師小結(jié)課后作業(yè)}P0=table[Count/10];//顯示十位數(shù)P2=table[Count%10];//顯示個位數(shù)while(P1_0==0);//等鍵釋放}}}【學(xué)生總結(jié)感受收獲】學(xué)生總結(jié)本節(jié)課內(nèi)容,談?wù)勑牡皿w會【教師小結(jié)提煉升華】教師小結(jié)點(diǎn)評提出要求、期望本項(xiàng)目學(xué)習(xí)了數(shù)碼管的理論知識和如何靜態(tài)和動態(tài)控制數(shù)碼管1.數(shù)碼管的結(jié)構(gòu)2.數(shù)碼管靜態(tài)顯示3.數(shù)碼管動態(tài)顯示4.00-99計數(shù)器【課后作業(yè)練習(xí)鞏固】1.預(yù)習(xí)下節(jié)新課內(nèi)容2.閱讀每種控制效果的設(shè)計程序代碼,進(jìn)行仿寫!3.明白每種控制電路的搭接,電路具備工作條件,代碼才起控制作用。教學(xué)后記略《單片機(jī)應(yīng)用技術(shù)教案》本單元課題第四部分單片機(jī)的各種控制項(xiàng)目3單片機(jī)鍵盤的設(shè)計與實(shí)現(xiàn)課次本單元共課次備課節(jié)數(shù)共8節(jié)授課節(jié)數(shù)共8節(jié)授課時間第周授課地點(diǎn)教學(xué)用具多媒體教室、仿真軟件、動畫演示等教學(xué)方法演示法、講解法、討論法等教學(xué)目標(biāo)1.掌握鍵盤的接口方法和編程方法。2.了解中斷的基本概念和功能。3.掌握51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)和控制方式。4.掌握中斷系統(tǒng)的中斷處理過程。5.培養(yǎng)邏輯思維和利用知識解決實(shí)際問題的能力;重點(diǎn)難點(diǎn)重點(diǎn):單片機(jī)鍵盤的接口方法和編程方法;中斷的概念,功能,結(jié)構(gòu)和控制方式;難點(diǎn):中斷的出來過程;參考資料《單片機(jī)應(yīng)用技術(shù)項(xiàng)目教程》郭志勇人民郵電出版社《單片機(jī)原理及應(yīng)用》(C51語言)董國增清華大學(xué)出版社《51單片機(jī)應(yīng)用技術(shù)》孫立書,清華大學(xué)出版社等課程思政教學(xué)流程說明教學(xué)組織過程設(shè)計學(xué)生舉例參與仿真演示創(chuàng)設(shè)情景師生小結(jié)進(jìn)入新課學(xué)習(xí)出示課題師生互動,教師重點(diǎn)幫助學(xué)生理解有關(guān)概念【創(chuàng)設(shè)情景新課導(dǎo)入】我們在前面的學(xué)習(xí)中,學(xué)習(xí)了單片機(jī)對LED燈和對數(shù)碼管的控制,涉及的是從51芯片輸出信號去進(jìn)行控制,本章節(jié)我們一起來學(xué)習(xí)如何輸入數(shù)據(jù)進(jìn)入單片機(jī),引入鍵盤的相關(guān)知識?!疽龑?dǎo)探究學(xué)習(xí)新課】任務(wù)一認(rèn)識鍵盤1.鍵盤是單片機(jī)應(yīng)用系統(tǒng)中人機(jī)交流不可缺少的輸入設(shè)備。鍵盤由一組規(guī)則排列的按鍵組成,一個按鍵實(shí)際上是一個開關(guān)元件。鍵盤通常使用機(jī)械觸點(diǎn)式按鍵開關(guān),其主要功能是把機(jī)械上的通斷轉(zhuǎn)換為電氣上的邏輯關(guān)系(1和0)。2.常見的種類有:查詢(獨(dú)立)式鍵盤矩陣式鍵盤3.鍵盤的常見分類(1)按鍵按照結(jié)構(gòu)原理可分為兩類觸點(diǎn)式開關(guān)按鍵,如機(jī)械式開關(guān)、導(dǎo)電橡膠式開關(guān)等;無觸點(diǎn)開關(guān)按鍵,如電氣式按鍵,磁感應(yīng)按鍵等。前者造價低,后者壽命長。(2)按鍵按照接口原理可分為兩類全編碼鍵盤,全編碼鍵盤能夠由硬件邏輯自動提供與鍵對應(yīng)的編碼,一般具有去抖動和多鍵、串鍵保護(hù)電路。這種鍵盤使用方便,但需要較多的硬件,價格較貴,一般的單片機(jī)應(yīng)用系統(tǒng)較少采用。非編碼鍵盤,主要是由軟件來實(shí)現(xiàn)按鍵的定義與識別,硬件結(jié)構(gòu)簡單,軟件編程量大。這里我們主要介紹單片機(jī)中常用的觸點(diǎn)式開關(guān)按鍵、非編碼鍵盤。4.獨(dú)立按鍵的工作原理鍵盤結(jié)構(gòu)與特點(diǎn):鍵盤通常使用機(jī)械觸點(diǎn)式按鍵開關(guān),其主要功能是把機(jī)械上的通斷轉(zhuǎn)換成為電氣上的邏輯關(guān)系。也就是說,它能提供標(biāo)準(zhǔn)的TTL邏輯電平,以便與通用數(shù)字系統(tǒng)的邏輯電平兼容。按鍵編碼一組按鍵或鍵盤都要通過I/O口線查詢按鍵的開關(guān)狀態(tài)。根據(jù)鍵盤結(jié)構(gòu)的不同,采用不同的編碼。無論有無編碼,以及采用什么編碼,最后都要轉(zhuǎn)換成為與累加器中數(shù)值相對應(yīng)的鍵值,以實(shí)現(xiàn)按鍵功能程序的跳轉(zhuǎn)。鍵盤防抖動措施軟件上采取的措施是在檢測到有按鍵按下時,執(zhí)行一個10ms左右(具體時間應(yīng)視所使用的按鍵進(jìn)行調(diào)整)的延時程序,再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)電平,若仍保持閉合狀態(tài)電平,則確認(rèn)該鍵處于閉合狀態(tài),從而消除抖動的影響。學(xué)生猜想危害機(jī)理教師講解拓展延伸閱讀教材學(xué)生討論任務(wù)二.獨(dú)立式鍵盤設(shè)計與實(shí)現(xiàn)1.使用AT89S52單片機(jī),設(shè)計一個具有8個按鍵的獨(dú)立式鍵盤,每個按鍵對應(yīng)一個發(fā)光二極管。功能要求:無鍵按下時,鍵盤輸出全為“1”,發(fā)光二極管全部熄滅;有鍵按下時,其所對應(yīng)發(fā)光二極管點(diǎn)亮。2.用PROTEUS設(shè)計按鍵控制電路圖如下3.用KeilC設(shè)計控制代碼如下voidmain()//主函數(shù){unsignedcharx;P0=0xff;//P0口作為輸出口,置全1x=0;while(1){while(x==0)//循環(huán)判斷是否有鍵按下{x=P0;//讀鍵盤狀態(tài)x=~x;//鍵盤狀態(tài)取反}delay10ms();//延時10ms去抖動x=P0;//再次讀鍵盤狀態(tài)x=~x;//鍵盤狀態(tài)取反if(x==0)continue;//如果無鍵按下則認(rèn)為是按鍵抖動,重新掃描鍵盤switch(x)//根據(jù)鍵值點(diǎn)亮對應(yīng)的發(fā)光二極管{case0x01:P1=0xfe;break;//點(diǎn)亮第一個發(fā)光二極管case0x02:P1=0xfd;break;//點(diǎn)亮第二個發(fā)光二極管case0x04:P1=0xfb;break;//點(diǎn)亮第三個發(fā)光二極管case0x08:P1=0xf7;break;//點(diǎn)亮第四個發(fā)光二極管case0x10:P1=0xef;break;//點(diǎn)亮第五個發(fā)光二極管case0x20:P1=0xdf;break;//點(diǎn)亮第六個發(fā)光二極管case0x40:P1=0xbf;break;//點(diǎn)亮第七個發(fā)光二極管case0x80:P1=0x7f;break;//點(diǎn)亮第八個發(fā)光二極管default:break;}}}4.將在KeilC中生成的HEX類型文件帶入電路里進(jìn)行調(diào)試。5.完善和總結(jié)。任務(wù)三.矩陣式鍵盤設(shè)計與實(shí)現(xiàn)1.使用AT89S52單片機(jī),設(shè)計4X4小鍵盤,16個鍵分別對應(yīng)0~9、A~F;有鍵按下,數(shù)碼管顯示;無鍵按下,數(shù)碼管無顯示;通過輸出的列碼和讀取的行碼來判斷按下什么鍵;有鍵按下,要有一定的延時,防止由于鍵盤抖動而引起誤操作。2.用PROTEUS設(shè)計按鍵控制電路圖如下3.判斷是否有鍵按下的方法是:向所有的列輸出口線輸出低電平(不能為高電平,因?yàn)槿魹楦唠娖?,按鍵按下與否都不會引起行線電平的變化),然后將行線的電平狀態(tài)讀入。若無鍵按下,所有的行線仍保持高電平狀態(tài);若有鍵按下,行線中至少應(yīng)有一條線為低電平。例如:第2行與第2列交叉點(diǎn)的鍵被按下,則第2行與第2列導(dǎo)通,第2行電平被拉低,讀入的行信號就為低電平,表示有鍵按下。4.按鍵識別的掃描方法:往列線上按順序一列一列的送出低電平。先送第0列為低電平,其他列為高電平,讀入的行的電平狀態(tài)就表明了第0列的4個鍵的情況,若讀入的行值全為高電平,則表示無鍵按下;再送第1列為低電平,其他列為高電平,讀入的行的電平狀態(tài)則顯示了該行上的4個按鍵的情況;依次輪流給各列送出低電平,直至4列全部送完,再從第0列開始,依此循環(huán)。采用鍵盤掃描,我們再來觀察第2行與第2列交叉點(diǎn)的鍵按下時的判斷過程,當(dāng)?shù)?列送出低電平時,讀第2行為低電平,而其他列送出低電平時,讀第2行卻為高電平,由此即可斷定按下的鍵應(yīng)是第2行與第2列交叉點(diǎn)的鍵。5.用KeilC設(shè)計控制代碼參照教材6.將在KeilC中生成的HEX類型文件帶入電路里進(jìn)行調(diào)試。7.完善和總結(jié)。任務(wù)四中斷方式矩陣鍵盤1.為什么引入中斷矩陣鍵盤獨(dú)立式鍵盤識別鍵盤比較容易,編程也比較簡單,很適合于功能鍵較少的單片機(jī)應(yīng)用系統(tǒng)。獨(dú)立式鍵盤每一個按鍵上用一根口線,當(dāng)按鍵較多時(超過8個)應(yīng)采用矩陣式鍵盤。無論是否按鍵,CPU都要按時掃描鍵盤,而單片機(jī)應(yīng)用系統(tǒng)工作時,并非經(jīng)常需要鍵盤輸入。因此,很多掃描工作是不必要的,浪費(fèi)了CPU的時間。為了提高CPU的工作效率,可以采用中斷掃描工作方式。2.使用AT89S52單片機(jī),設(shè)計4X4小鍵盤,16個鍵分別對應(yīng)0~9、A~F;用中斷的方式實(shí)現(xiàn)。電路如圖3.參考代碼:#include<AT89X52.H>/*定義0~9,A~F十六個字符的字型碼表*/unsignedchartable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};voiddelay10ms(void)/*10ms延時程序*/{unsignedchari,j;for(i=20;i>0;i--)for(j=248;j>0;j--);}unsignedcharscan_key(void)/*鍵盤掃描子程序*/{unsignedcharn,scan,col,rol,tmp;bitflag=0;//設(shè)有鍵按下標(biāo)志位scan=0xef;P0=0x0f;//P0口低四位做輸入口,先輸出全1for(n=0;n<4;n++)//循環(huán)掃描4列,從0列開始{P0=scan;//逐列送出低電平tmp=~P0;//讀行值,并取反tmp=tmp&0x0f;col=n;//保存列號到colflag=1;/*判斷哪一行有鍵按下,并保存行號到rol*/ if(tmp==0x01){rol=0;break;}//第0行有鍵按下elseif(tmp==0x02){rol=1;break;}//第1行有鍵按下elseif(tmp==0x04){rol=2;break;}//第2行有鍵按下elseif(tmp==0x08){rol=3;break;}//第3行有鍵按下elseflag=0;scan=(scan<<1)+1;}if(flag==0)return-1;elsereturn(rol*4+col);}voidmain(){P1=0x00;EA=1; //開總中斷EX0=1; //開外部中斷0中斷IT0=1; //設(shè)定外部中斷0為邊沿觸發(fā)方式P0=0x0f; //P0口高四位為0,用于檢測是否有鍵按下while(1); //等待外部中斷0中斷}voidscan_key_led(void)interrupt0/*外部中斷0中斷服務(wù)函數(shù)*/{chark;unsignedcharkey,tmp;delay10ms();//延時10ms去抖P0=0x0f;//所有列輸出低電平tmp=P0;//再次讀鍵盤狀態(tài)if(tmp!=0x0f){key=scan_key();//有鍵按下,調(diào)用鍵盤掃描程序,并把鍵值送keywhile(k!=-1)//判斷閉合鍵是否釋放,直到其釋放{delay10ms();//延時等待k=scan_key();}P1=table[key];//字型碼送P1口,數(shù)碼管顯示被按下鍵對應(yīng)的字符P0=0x0f;}}4.將在KeilC中生成的HEX類型文件帶入電路里進(jìn)行調(diào)試。5.完善和總結(jié)。6.中斷的概念當(dāng)CPU在執(zhí)行程序時,由單片機(jī)內(nèi)部或外部的原因引起的隨機(jī)事件要求CPU暫時停止正在執(zhí)行的程序,而轉(zhuǎn)向執(zhí)行一個用于處理該隨機(jī)事件的程序,處理完后又返回被中止的程序斷點(diǎn)處繼續(xù)執(zhí)行,這一過程就稱為中斷。向CPU發(fā)出中斷請求的來源,或引起中斷的原因稱為中斷源。中斷源可分為兩大類:一類來自單片機(jī)內(nèi)部,稱之為內(nèi)部中斷源;一類來自單片機(jī)外部,稱之為外部中斷源。中斷源要求服務(wù)的請求稱為中斷請求。7.51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)8.中斷各寄存器的介紹(1)TMOD寄存器—方式控制寄存器(2)TCON寄存器-定時器控制寄存器(3)IE寄存器--中斷允許寄存器(4)IP寄存器--中斷優(yōu)先級寄存器學(xué)生總結(jié)教師小結(jié)課后作業(yè)【學(xué)生總結(jié)感受收獲】學(xué)生總結(jié)本節(jié)課內(nèi)容,談?wù)勑牡皿w會【教師小結(jié)提煉升華】教師小結(jié)點(diǎn)評提出要求、期望1.單鍵盤,理解鍵盤的工作原理是把機(jī)械上的通斷變?yōu)殡姎馍系母叩碗娖健?.矩陣鍵盤,把握矩陣鍵盤的結(jié)構(gòu),鍵盤掃描程序的實(shí)現(xiàn)方式。3.中斷鍵盤,中斷的概念,中斷函數(shù)的書寫和設(shè)置。【課后作業(yè)練習(xí)鞏固】1.預(yù)習(xí)下節(jié)新課內(nèi)容2.閱讀每種控制效果的設(shè)計程序代碼,進(jìn)行仿寫!3.明白每種控制電路的搭接,電路具備工作條件,代碼才起控制作用。4.單片機(jī)的鍵盤是編碼鍵盤還是非編碼鍵盤?5.單鍵盤的應(yīng)用6.矩陣鍵盤的應(yīng)用。教學(xué)后記本項(xiàng)目引入中斷的概念、《單片機(jī)應(yīng)用技術(shù)教案》本單元課題第四部分單片機(jī)的各種控制項(xiàng)目4定時器-計數(shù)器綜合應(yīng)用課次本單元共課次備課節(jié)數(shù)共8節(jié)授課節(jié)數(shù)共8節(jié)授課時間第周授課地點(diǎn)教學(xué)用具多媒體教室、仿真軟件、動畫演示等教學(xué)方法演示法、講解法、討論法等教學(xué)目標(biāo)1.了解定時器/計數(shù)器的結(jié)構(gòu)與工作原理。2.掌握定時器/計數(shù)器的四種工作方式的特點(diǎn)及應(yīng)用。3.掌握定時器/計數(shù)器的初始化。4.掌握定時器/計數(shù)器與中斷綜合應(yīng)用的設(shè)計方法。5.培養(yǎng)邏輯思維和利用知識解決實(shí)際問題的能力;重點(diǎn)難點(diǎn)重點(diǎn):單片機(jī)定時器和計數(shù)器的結(jié)構(gòu)和工作原理,四種工作方式,初始化;難點(diǎn):定時器和計數(shù)器的各種應(yīng)用;參考資料《單片機(jī)應(yīng)用技術(shù)項(xiàng)目教程》郭志勇人民郵電出版社《單片機(jī)原理及應(yīng)用》(C51語言)董國增清華大學(xué)出版社《51單片機(jī)應(yīng)用技術(shù)》孫立書,清華大學(xué)出版社等課程思政教學(xué)流程說明教學(xué)組織過程設(shè)計學(xué)生舉例參與仿真演示創(chuàng)設(shè)情景師生小結(jié)進(jìn)入新課學(xué)習(xí)出示課題師生互動,教師重點(diǎn)幫助學(xué)生理解有關(guān)概念【創(chuàng)設(shè)情景新課導(dǎo)入】我們在上兩個個章節(jié)的學(xué)習(xí)中,學(xué)習(xí)了單片機(jī)對LED燈和對數(shù)碼管的控制,涉及的是從51芯片輸出信號去進(jìn)行控制和如何將指令輸入進(jìn)單片機(jī),本項(xiàng)目我們一起來討論和學(xué)習(xí)在單片機(jī)中如何精準(zhǔn)定時和計數(shù)。【引導(dǎo)探究學(xué)習(xí)新課】任務(wù)一認(rèn)識定時和計數(shù)器1.定時和計數(shù)的概念定時就是設(shè)定好一個時間。定時過程可視為單片機(jī)計算單位時間(可以是1s、1ms、1us)的個數(shù),當(dāng)計時完成后,把單位時間乘以個數(shù)就得到了定時的時間長度。如圖所示是用于精確計時的秒表,我們常常在體育比賽中使用它來計時。秒表通常有6位數(shù)字,前兩位數(shù)字代表分鐘,中間兩位代表秒鐘,最后兩位則是更小的計時單位——1/100秒。當(dāng)計時啟動后,1/100秒位的兩位數(shù)字在1秒內(nèi)飛快的由00增加到99。秒表內(nèi)部的電路需要有較高的精度才能準(zhǔn)確地以1/100秒為間隔更新顯示數(shù)字。雖說如此,這個任務(wù)對于單片機(jī)來說卻是小菜一碟。在這里就來學(xué)習(xí)單片機(jī)中的定時和計數(shù)功能,看看它是如何實(shí)現(xiàn)精確計時的。2.定時/計數(shù)器結(jié)構(gòu)內(nèi)設(shè)2個16位可編程定時/計數(shù)器T0,T1具有計數(shù)方式和定時方式4種工作模式學(xué)生猜想危害機(jī)理教師講解拓展延伸閱讀教材學(xué)生討論3.定時器/計數(shù)器的原理16位的定時器/計數(shù)器實(shí)質(zhì)上是一個加1計數(shù)器,可實(shí)現(xiàn)定時和計數(shù)兩種功能,其功能由軟件控制和切換。在定時器/計數(shù)器開始工作之前,CPU必須將一些命令(稱為控制字)寫入定時器/計數(shù)器(即初始化)。初始化工作方式控制字寫入定時器方式寄存器(TMOD);工作狀態(tài)控制字(或相關(guān)位)寫入定時器控制寄存器(TCON);賦定時/計數(shù)初值給TH0(TH1)和TL0(TL1)。4.定時功能每過一個機(jī)器周期,計數(shù)器加1,直至計滿溢出,即對機(jī)器周期進(jìn)行計數(shù)。定時器的定時時間與系統(tǒng)的時鐘頻率有關(guān)。因一個機(jī)器周期等于12個時鐘周期,所以計數(shù)頻率應(yīng)為系統(tǒng)時鐘頻率的十二分之一(即機(jī)器周期)。如晶振頻率為12MHz,則機(jī)器周期為1s。通過改變定時器的定時初值,并適當(dāng)選擇定時器的長度(8位、13位或16位),可以調(diào)整定時時間。5.定時器/計數(shù)器的應(yīng)用定時器方式寄存器TMODTMOD的作用是設(shè)置T0、T1的工作方式。TMOD的格式:GATE:門控位。GATE=0:軟件啟動定時器用指令使TCON中的TR1(TR0)置1即可啟動定時器1(定時器0)。GATE=1:軟件和硬件共同啟動定時器用指令使TCON中的TR1(TR0)置1時,只有外部中斷INT0(INT1)引腳輸入高電平時,才能啟動定時器1(定時器0)。C/T:功能選擇位。C/T=0時,以定時器方式工作。C/T=1時,以計數(shù)器方式工作。M1、M0:方式選擇位。定時器工作方式選擇位定義定時器控制寄存器TCONTCON的作用是控制定時器的啟動與停止,并保存T0、T1的溢出和中斷標(biāo)志。TCON的格式:TF1(TCON.7):定時器1溢出標(biāo)志位。當(dāng)定時器1計滿溢出時,由硬件自動使TF1置1,并申請中斷。對該標(biāo)志位有兩種處理方法:以中斷方式工作,即TF1置1并申請中斷,響應(yīng)中斷后,執(zhí)行中斷服務(wù)程序,并由硬件自動使TF1清0;以查詢方式工作,即通過查詢該位是否為1來判斷是否溢出,TF1置1后必須用軟件使TF1清0。TR1(TCON.6):定時器1啟停控制位。GATE=0時,用軟件使TR1置1即啟動定時器1,若用軟件使TR1清0則停止定時器1。GATE=1時,用軟件使TR1置1的同時外部中斷INT1的引腳輸入高電平才能啟動定時器1。TF0(TCON.5):定時器0溢出標(biāo)志位。其功能同TF1。TR0(TCON.4):定時器0啟停控制位。其功能同TR1。二.任務(wù)二霓虹燈模擬控制系統(tǒng)1.任務(wù)描述由P1口輸出控制8個LED(模擬霓虹燈)的亮滅。要求實(shí)現(xiàn):首先從燈D1開始,8個燈循環(huán)點(diǎn)亮一次,即D1點(diǎn)亮1s后熄滅,D2點(diǎn)亮1s后熄滅,……,D8點(diǎn)亮1s后熄滅;然后間隔閃爍3次,即D1、D3、D5、D7點(diǎn)亮1s后熄滅,D2、D4、D6、D8點(diǎn)亮1s后熄滅,重復(fù)3次;循環(huán)上述過程(晶振頻率為6MHz)。用PROTEUS設(shè)計霓虹燈電路圖如下霓虹燈模擬控制程序#include<AT89X52.h>unsignedchari10,i8,i6;unsignedcharmod1,mod2;voidmain(void){i10=10;//設(shè)置軟件計數(shù)10次,每次100msi8=8;//設(shè)置循環(huán)點(diǎn)亮階段輸出次數(shù)i6=6;//設(shè)置間隔閃爍階段輸出次數(shù)mod1=0x01;//設(shè)置循環(huán)點(diǎn)亮階段控制碼初值mod2=0xAA;//設(shè)置間隔閃爍階段控制碼初值F0=0;//設(shè)置循環(huán)點(diǎn)亮階段標(biāo)志,F(xiàn)0=0為循環(huán)點(diǎn)亮階段TMOD=0x10;//設(shè)置T1方式1定時TH1=0x3C;//送100ms定時初值TL1=0xB0;IE=0x88;//允許T1中斷P1_0=1//TR1=1;//啟動T1定時while(1);//等待中斷}/**********************************************************T1中斷服務(wù)程序**********************************************************/voidtimer0(void)interrupt3using1{TH1=0x3C;//100ms時間到,重裝定時初值TL1=0xB0;i10--;if(i10==0){i10=10;//1s到重設(shè)軟件計數(shù)器if(F0==0){P1=~mod1;//循環(huán)點(diǎn)亮階段控制碼取反送P1口mod1=mod1<<1;//mod1值左移一位i8--;if(i8==0){i8=8;//完成重設(shè)循環(huán)點(diǎn)亮階段輸出次數(shù)F0=1;//設(shè)置間隔閃爍階段標(biāo)志}}else{P1=mod2;//輸出間隔閃爍階段控制碼Mod2=~mod2;//控制碼取反i6--;if(i6==0){i6=6;//完成重設(shè)間隔閃爍階段輸出次數(shù)F0=0;//設(shè)置循環(huán)點(diǎn)亮階段標(biāo)志}}}}三.任務(wù)三簡易電子鐘電路設(shè)計1.任務(wù)描述進(jìn)一步掌握定時器的使用和編程方法進(jìn)一步掌握中斷處理程序的編程方法利用CPU的定時器和8LED動態(tài)掃描顯示電路,設(shè)計一個簡易電子時鐘。格式如下:XX–XX-XX由左向右分別為:時-分-秒用PROTEUS設(shè)計簡易電子鐘電路圖如下簡易電子鐘電路設(shè)計控制代碼#include<AT89X51.h>#defineuintunsignedint#defineucharunsignedcharuinttime_t;//毫秒統(tǒng)計值ucharhour,min,sec;//數(shù)碼管顯示值,小時,分,秒ucharcodeled[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};voiddelay_1ms(uintx){TMOD=0x01;//開定時器0,工作方式為1TR0=1;//啟動定時器0while(x--){TH0=0xfc;//裝入初值的高8位TL0=0x18;//裝入初值的低8位while(!TF0);//等待定時時間到,直到TF0為1TF0=0;time_t++;//毫秒統(tǒng)計值自加1}TR0=0;//停止定時}voiddisplay_num(ucharnum,dis_w){ucharj;for(j=0;j<2;j++){P0=0xff;//段選口置高,消影P2=dis_w;//裝入位選值if(j>0)P0=led[num/10];//顯示num個位elseP0=led[num%10];//顯示num十位dis_w=dis_w<<1;delay_1ms(5);//延時5ms}}voiddisplay_char(){P0=0xff;P2=0x24;P0=0xBF;delay_1ms(5);}voidtime_take(){if(time_t>=1000)//當(dāng)總延時數(shù)為1S時{time_t=0;//time_t清零sec++;//秒加1if(sec==60)//當(dāng)秒值等于60時{sec=0;//秒值清零min++;//分加1if(min==60)//當(dāng)分等于60時{min=0;//分清零hour++;//小時加1if(hour==24)//當(dāng)小時等于24時hour=0;//小時清零}}}}帶入代碼后的運(yùn)行效果學(xué)生總結(jié)教師小結(jié)課后作業(yè)【學(xué)生總結(jié)感受收獲】學(xué)生總結(jié)本節(jié)課內(nèi)容,談?wù)勑牡皿w會【教師小結(jié)提煉升華】教師小結(jié)點(diǎn)評提出要求、期望1.定時計數(shù)概念2.定時和計數(shù)原理3.定時計數(shù)的應(yīng)用【課后作業(yè)練習(xí)鞏固】1.完成單片機(jī)時鐘控制的仿真2.完成彩燈制作教學(xué)后記略《單片機(jī)應(yīng)用技術(shù)教案》本單元課題第四部分單片機(jī)的各種控制項(xiàng)目5單片機(jī)A/D/D/A輸入輸出設(shè)計與實(shí)現(xiàn)課次本單元共課次備課節(jié)數(shù)共2節(jié)授課節(jié)數(shù)共2節(jié)授課時間第周授課地點(diǎn)教學(xué)用具多媒體教室、仿真軟件、動畫演示等教學(xué)方法演示法、講解法、討論法等教學(xué)目標(biāo)1.掌握模/數(shù)、數(shù)/模轉(zhuǎn)換芯片與單片機(jī)的連接方法及典型應(yīng)用。2.掌握用查詢方式、中斷方式完成模/數(shù)、數(shù)/模轉(zhuǎn)換程序的編寫方法。3.培養(yǎng)邏輯思維和利用知識解決實(shí)際問題的能力;重點(diǎn)難點(diǎn)重點(diǎn):數(shù)/模、模/數(shù)轉(zhuǎn)換芯片與單片機(jī)的連接方法和編程方法;難點(diǎn):數(shù)/模、模/數(shù)轉(zhuǎn)換查詢方式和中斷方式程序的編寫方法;參考資料《單片機(jī)應(yīng)用技術(shù)項(xiàng)目教程》郭志勇人民郵電出版社《單片機(jī)原理及應(yīng)用》(C51語言)董國增清華大學(xué)出版社《51單片機(jī)應(yīng)用技術(shù)》孫立書,清華大學(xué)出版社等課程思政教學(xué)流程說明教學(xué)組織過程設(shè)計學(xué)生舉例參與仿真演示創(chuàng)設(shè)情景師生小結(jié)進(jìn)入新課學(xué)習(xí)出示課題師生互動,教師重點(diǎn)幫助學(xué)生理解有關(guān)概念【創(chuàng)設(shè)情景新課導(dǎo)入】我們在前面學(xué)習(xí)了單片機(jī)對LED燈、對數(shù)碼管的控制和單片機(jī)的人機(jī)交互輸入方式鍵盤的設(shè)計與實(shí)現(xiàn),本章節(jié)我們一起來學(xué)習(xí)A/D和D/A的轉(zhuǎn)換與實(shí)現(xiàn)?!疽龑?dǎo)探究學(xué)習(xí)新課】任務(wù)1認(rèn)識ADC0808/ADC0809模數(shù)轉(zhuǎn)換器1.模/數(shù)、數(shù)/模轉(zhuǎn)換模擬量I/O接口的作用2、ADC0809模數(shù)轉(zhuǎn)換器ADC0809是8通道8位的,以逐次逼近原理進(jìn)行?!獢?shù)轉(zhuǎn)換的器件;內(nèi)部有一個8通道模擬多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進(jìn)行A/D轉(zhuǎn)換;A/D轉(zhuǎn)換后的數(shù)據(jù)由三態(tài)鎖存器輸出;片內(nèi)沒有時鐘,需外接時鐘信號。3.ADC0809模數(shù)轉(zhuǎn)換器ADC0809芯片有28條引腳,采用雙列直插式封裝IN0~I(xiàn)N7:8路模擬量輸入端;D0~D8:8位數(shù)字量輸出端;ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路;CLK:時鐘脈沖輸入端;REF(+)、REF(-):基準(zhǔn)電壓;Vcc:電源,單一+5V;GND:地;通道選擇表地址碼CBA選擇的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7ALE:地址鎖存允許信號,輸入,高電平有效。START:A/D轉(zhuǎn)換啟動脈沖輸入端,輸入一個正脈沖(至少100ns寬)使其啟動(脈沖上升沿使0809復(fù)位,下降沿啟動A/D轉(zhuǎn)換)。EOC:A/D轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。4.ADC0809模數(shù)轉(zhuǎn)換器的工作過程首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中;此地址經(jīng)譯碼選通8路模擬輸入之一到比較器;START上升沿將逐次逼近寄存器復(fù)位;下降沿啟動A/D轉(zhuǎn)換,之后EOC輸出信號變低,指示轉(zhuǎn)換正在進(jìn)行;直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖剑甘続/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請;當(dāng)OE輸入高電平時,輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。任務(wù)2數(shù)字電壓表設(shè)計與實(shí)現(xiàn)1.使用AT89S52單片機(jī),采用動態(tài)顯示的方式,把8通道模數(shù)轉(zhuǎn)換器ADC0808采樣的電壓值的大小經(jīng)單片機(jī)處理后由數(shù)碼管顯示出來,量程為0-5V,顯示格式:X.XXX。2.數(shù)字電壓表電路圖數(shù)碼管顯示電壓值實(shí)現(xiàn)分析模數(shù)轉(zhuǎn)換采用的是8位的ADC0808,因此其分辨力為5*1/2^8V,即19.6mV。為了得到各位待顯示的數(shù)字的大小,采取了除法和取余相結(jié)合的方式:dat[3]=tmp/10000; /最高位dat[2]=tmp/1000%10;dat[1]=tmp/100%10;dat[0]=tmp/10%10; /最低位3.參考程序#include<AT89X52.h>sbitOE=P3^0;//ADC0808的OE端sbitEOC=P3^1;//ADC0808的EOC端sbitCLOCK=P2^6;sbitST=P3^2;//ADC0808的START和ALE端sbitLED4=P2^3;sbitLED3=P2^2;sbitLED2=P2^1;sbitLED1=P2^0;unsignedcharcodetab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C};unsignedchardat[]={0,0,0,0};//顯示緩沖區(qū)unsignedcharadc;//存放轉(zhuǎn)換后的數(shù)據(jù)unsignedinttmp;voidDelay(void){unsignedchari;for(i=0;i<250;i++);}//主函數(shù)//voidmain(void){EA=1;ET0=1;TMOD=0x02;//T0方式2計時TH0=0x01;//晶振:12MHzTL0=0x01;//晶振:12MHzTR0=1;/*開中斷,啟動定時器*///ADC0808轉(zhuǎn)換while(1){ST=0;ST=1; ST=0;//啟動轉(zhuǎn)換 while(!EOC);//等待轉(zhuǎn)換結(jié)束 OE=1;//允許輸出 adc=P1;//取轉(zhuǎn)換結(jié)果 //數(shù)據(jù)處理,已備顯示 tmp=adc*196;//乘以19.6MV dat[3]=tmp/10000; dat[2]=tmp/1000%10; dat[1]=tmp/100%10;dat[0]=tmp/10%10; //數(shù)碼管顯示轉(zhuǎn)換結(jié)果 LED1=0; P0=tab[dat[3]]+0x80; Delay(); LED1=1; LED2=0; P0=tab[dat[2]]; Delay(); LED2=1; LED3=0; P0=tab[dat[1]]; Delay(); LED3=1; LED4=0; P0=tab[dat[0]]; Delay(); LED4=1;}//endwhile}//endmain/*定時計數(shù)器0的中斷服務(wù)子程序*///*voidtimer0(void)interrupt1using1//50mS中斷一次{CLOCK=~CLOCK;}運(yùn)行效果學(xué)生總結(jié)教師小結(jié)課后作業(yè)【學(xué)生總結(jié)感受收獲】學(xué)生總結(jié)本節(jié)課內(nèi)容,談?wù)勑牡皿w會【教師小結(jié)提煉升華】教師小結(jié)點(diǎn)評提出要求、期望1.ADC0808/ADC0809芯片介紹2.數(shù)字電壓表將可變電子的分壓情況用數(shù)字現(xiàn)實(shí)在數(shù)碼管上【課后作業(yè)練習(xí)鞏固】1.預(yù)習(xí)下節(jié)新課內(nèi)容2.閱讀每種控制效果的設(shè)計程序代碼,進(jìn)行仿寫!3.明白每種控制電路的搭接,電路具備工作條件,代碼才起控制作用。教學(xué)后記略《單片機(jī)應(yīng)用技術(shù)教案》本單元課題第四部分單片機(jī)的各種控制項(xiàng)目6單片機(jī)串行通信設(shè)計與實(shí)現(xiàn)課次本單元共課次備課節(jié)數(shù)共2節(jié)授課節(jié)數(shù)共2節(jié)授課時間第周授課地點(diǎn)教學(xué)用具多媒體教室、仿真軟件、動畫演示等教學(xué)方法演示法、講解法、討論法等教學(xué)目標(biāo)1.了解單片機(jī)串行通信的工作原理。2.掌握單片機(jī)串行通信的編程方法。3.掌握上位機(jī)與下位機(jī)串行通信的連接方法。重點(diǎn)難點(diǎn)重點(diǎn):單片機(jī)串行通信的工作原理、編程方法、單片機(jī)和單片機(jī)及PC機(jī)之間的通信難點(diǎn):上位機(jī)與下位機(jī)串行通信的連接方法;參考資料《單片機(jī)應(yīng)用技術(shù)項(xiàng)目教程》郭志勇人民郵電出版社《單片機(jī)原理及應(yīng)用》(C51語言)董國增清華大學(xué)出版社《51單片機(jī)應(yīng)用技術(shù)》孫立書,清華大學(xué)出版社等課程思政教學(xué)流程說明教學(xué)組織過程設(shè)計學(xué)生舉例參與仿真演示創(chuàng)設(shè)情景師生小結(jié)進(jìn)入新課學(xué)習(xí)出示課題師生互動,教師重點(diǎn)幫助學(xué)生理解有關(guān)概念【創(chuàng)設(shè)情景新課導(dǎo)入】我們在前面學(xué)習(xí)了單片機(jī)I/O口作為輸出對LED燈、對數(shù)碼管的控制,單片機(jī)作為I/O口作為輸入進(jìn)行人機(jī)交互、A/D轉(zhuǎn)換等,本項(xiàng)目我們一起來學(xué)習(xí)單片機(jī)串行通信設(shè)計與實(shí)現(xiàn)?!疽龑?dǎo)探究學(xué)習(xí)新課】任務(wù)一認(rèn)識串行通信1.信號的傳輸方式CPU與外部通信的基本方式有兩種:并行通信數(shù)據(jù)的各位同時傳送串行通信數(shù)據(jù)一位一位順序傳送單工通信半雙工通信單工通信半雙工通信全雙工通信同步通信異步通信同步通信異步通信異步通信和同步通信串行通信方式的特點(diǎn)通過單片機(jī)自帶的串行口進(jìn)行通信每個時間單位傳送一位信息每個字符(字節(jié))的各位依次傳送不管發(fā)送或接收數(shù)據(jù)是多少,最多需要2根線,一根用于發(fā)送,一根用于接收優(yōu)點(diǎn):傳輸線少,距離遠(yuǎn),成本低學(xué)生猜想危害機(jī)理教師講解拓展延伸閱讀教材學(xué)生討論串行通信波特率波特率的定義為每秒鐘傳送二進(jìn)制數(shù)碼的位數(shù)(亦稱比特數(shù)),單位是bit/s,即位/秒。相互通信雙方必須具有相同的波特率例如:數(shù)據(jù)傳輸速率是960字符/s,每個字符包含10位數(shù),則波特率為9600波特。每位的傳輸時間定義為波特率的倒數(shù)。例如:波特率為1200bit/s的通信系統(tǒng),其每位的傳輸時間應(yīng)為:任務(wù)二認(rèn)識串行通信1.單片機(jī)串行接口結(jié)構(gòu)框圖2.SBUF串行口緩沖寄存器、有接收和發(fā)送寄存器,公用一個地址99H3.串行中斷控制器SCON4.波特率選擇與設(shè)置任務(wù)三串行口工作方式01.基于串行口工作方式0串行口工作方式0又稱為“移位寄存器方式”,是將串行口作為同步移位寄存器使用,這時以RXD端作為數(shù)據(jù)的輸入/出端,在TXD端輸出移位脈沖。實(shí)際上是把串行口變作并行口使用,在單片機(jī)應(yīng)用系統(tǒng)中,如果并行口不夠用,可通過外接串入并出移位寄存器擴(kuò)展輸出口,通過外接并入串出移位寄存器擴(kuò)展輸入接口。本例串行口工作于方式0時,數(shù)據(jù)長度為8位,數(shù)據(jù)傳送的波特率是fosc/12。2.電路圖任務(wù)四串行口工作方式11.串行口工作方式1本案例通過串行口,將字符串”HelloWorld!”發(fā)送出去,已知單片機(jī)的時鐘頻率為11.0592MHz。要求采用串口方式1,波特率為9600HZ。為了便于觀察、調(diào)試,我們在Proteus環(huán)境下,可加入虛擬終端(VIRTUALTERMINAL),將單片機(jī)的數(shù)據(jù)發(fā)送端TXD與虛擬終端的數(shù)據(jù)接收端RXD相連,以監(jiān)視串行口發(fā)出數(shù)據(jù)的情況。定時器T1的計數(shù)初值確定 通常定時器采用方式2,當(dāng)時鐘頻率fosc=11.0592MHz時,SMOD=0,通過推導(dǎo),我們可以得到T1計數(shù)初值的公式為:2.電路圖任務(wù)五串行口工作方式31.本案例使用兩片AT89

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論