單片機應用技術(C語言版)項目_第1頁
單片機應用技術(C語言版)項目_第2頁
單片機應用技術(C語言版)項目_第3頁
單片機應用技術(C語言版)項目_第4頁
單片機應用技術(C語言版)項目_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

教學內容單片機與LED數(shù)碼管接口數(shù)組概念LED大屏幕顯示器和接口字符LCD液晶顯示和接口單片機與鍵盤接口項目4顯示和鍵盤接口技術應用

認識LED數(shù)碼管LED數(shù)碼管結構及原理

認識LED數(shù)碼管LED數(shù)碼管結構及原理

單片機與LED數(shù)碼管接口LED數(shù)碼管字型編碼若將數(shù)值0送至單片機的P1口,數(shù)碼管上不會顯示數(shù)字“0”。顯然,要使數(shù)碼管顯示出數(shù)字或字符,直接將相應的數(shù)字或字符送至數(shù)碼管的段控制端是不行的,必須使段控制端輸出相應的字形編碼。將單片機P1口的P1.0、P1.1…P1.7八個引腳依次與數(shù)碼管的a、b…f、dp八個段控制引腳相連接。如果使用的是共陽極數(shù)碼管,COM端接+5V,要顯示數(shù)字“0”,則數(shù)碼管的a、b、c、d、e、f六個段應點亮,其它段熄滅,需向P1口傳送數(shù)據(jù)11000000B(C0H),該數(shù)據(jù)就是與字符“0”相對應的共陽極字型編碼。若共陰極的數(shù)碼管COM端接地,要顯示數(shù)字“1”,則數(shù)碼管的b、c兩段點亮,其他段熄滅,需向P1口傳送數(shù)據(jù)00000110(06H),這就是字符“1”的共陰極字型碼了。單片機與LED數(shù)碼管接口LED靜態(tài)顯示靜態(tài)顯示是指數(shù)碼管顯示某一字符時,相應的發(fā)光二極管恒定導通或恒定截止。這種顯示方式的各位數(shù)碼管的公共端恒定接地(共陰極)或+5V(共陽極)。每個數(shù)碼管的八個段控制引腳分別與一個八位I/O端口相連。只要I/O端口有顯示字型碼輸出,數(shù)碼管就顯示給定字符,并保持不變,直到I/O口輸出新的段碼。

單片機與LED數(shù)碼管接口LED靜態(tài)顯示單片機與LED數(shù)碼管接口LED動態(tài)顯示單片機與LED數(shù)碼管接口LED動態(tài)顯示動態(tài)顯示是一種按位輪流點亮各位數(shù)碼管的顯示方式,即在某一時段,只讓其中一位數(shù)碼管“位選端”有效,并送出相應的字型顯示編碼。此時,其它位的數(shù)碼管因“位選端”無效而都處于熄滅狀態(tài);下一時段按順序選通另外一位數(shù)碼管,并送出相應的字型顯示編碼,依此規(guī)律循環(huán)下去,即可使各位數(shù)碼管分別間斷地顯示出相應的字符。這一過程稱為動態(tài)掃描顯示。

分隔符為分號數(shù)組的概念

數(shù)組屬于常用的數(shù)據(jù)類型,數(shù)組中的元素有固定數(shù)目和相同類型,數(shù)組元素的數(shù)據(jù)類型就是該數(shù)組的基本類型。例如,整型數(shù)據(jù)的有序集合稱為整型數(shù)組,字符型數(shù)據(jù)的有序集合稱為字符型數(shù)組。數(shù)組還分為一維、二維、三維和多維數(shù)組等,常用的是一維、二維和字符數(shù)組。

數(shù)組的基本特點構造類形數(shù)據(jù):由基本類型數(shù)據(jù)按照一定規(guī)則組成。數(shù)組:是有序數(shù)據(jù)的集合;數(shù)組中的每一個元素都屬于同一個數(shù)據(jù)類型,用一個統(tǒng)一的數(shù)組名和下標來唯一地確定數(shù)組中的元素。應用場合:需要處理的數(shù)據(jù)為數(shù)量已知的若干相同類型的數(shù)據(jù)時。

注意:先定義,后使用。一維數(shù)組的定義和引用一維數(shù)組的定義:一般格式:類型標識符數(shù)組名[常量表達式];

int

array[10];

unsignedchar

num[7];說明:數(shù)組名——見名知意;數(shù)組名中存放的是一個地址常量,它代表整個數(shù)組的首地址。同一數(shù)組中的所有元素,按其下標的順序占用一段連續(xù)的存儲單元。方括弧而非圓括??;常量表達式:可以是常量或符號常量;表示數(shù)組元素的個數(shù)(也稱數(shù)組長度)。不允許對數(shù)組大小作動態(tài)定義。數(shù)組元素下標從0開始。array[0],array[1],…array[9];遵循標識符命名規(guī)則數(shù)組元素的表達形式:數(shù)組名[下標表達式]array[4]=100;array[8]=34;array[10]=56;注意:數(shù)組下標不能越界!一個數(shù)組元素具有和相同類型單個變量一樣的屬性,可以對它賦值和參與各種運算。一維數(shù)組的引用一般格式:

數(shù)據(jù)類型數(shù)組名[常量表達式]={初值表}1.定義時賦初值;intscore[5]={1,2,3,4,5};2.給一部分元素賦值;intscore[5]={1,2};3.使所有元素為0;intscore[5]={0};4.給全部數(shù)組元素賦初值時,可以不指定數(shù)組長度;

intscore[]={1,2,3,4,5};一維數(shù)組的初始化1.靜態(tài)數(shù)碼管靜態(tài)數(shù)碼管以300ms動態(tài)顯示0~F;2.講解任務4-1 作業(yè):4.14.24.3LED大屏幕顯示器和接口

LED大屏幕顯示器結構及原理LED點陣顯示器是把很多LED發(fā)光二極管按矩陣方式排列在一起,通過對每個LED進行發(fā)光控制,完成各種字符或圖形的顯示。最常見的LED點陣顯示模塊有5×7(5列7行),7×9(7列9行),8×8(8列8行)結構。LED點陣由一個一個的點(LED發(fā)光二極管)組成,總點數(shù)為行數(shù)與列數(shù)之積,引腳數(shù)為行數(shù)與列數(shù)之和。LED大屏幕顯示器和接口

LED大屏幕顯示器結構及原理LED大屏幕顯示器和接口

LED大屏幕顯示器結構及原理“大”字顯示字型碼示意圖LED大屏幕顯示器和接口

LED大屏幕顯示器結構及原理顯示字符“大”的過程如下:先給第一行送高電平(行高電平有效),同時給8列送11110111(列低電平有效);然后給第二行送高電平,同時給8列送11110111,……最后給第八行送高電平,同時給8列送11111111。每行點亮延時時間為1ms,第八行結束后再從第一行開始循環(huán)顯示。利用視覺駐留現(xiàn)象,人們看到的就是一個穩(wěn)定的圖形。LED大屏幕顯示器和接口

LED大屏幕顯示器接口LED大屏幕顯示器和接口

LED大屏幕顯示器擴展接口LED大屏幕顯示器和接口

LED大屏幕顯示器擴展接口行驅動16×16LED點陣顯示電子廣告屏控制電路中,行驅動電路選用了一片4/16線譯碼器74LS154,生成16條行選通信號線,并在這16條行線上添加了一個8550三極管進行反相驅動。LED大屏幕顯示器和接口

LED大屏幕顯示器擴展接口列驅動行驅動電路采用了兩片74HC595移位寄存器進行“級聯(lián)”,構成列驅動電路,用串行移入、并行輸出的方式為16×16LED點陣顯示電子廣告屏提供16位列線數(shù)據(jù)。LED大屏幕顯示器和接口

LED大屏幕顯示器擴展接口字符LCD液晶顯示和接口

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊Vss:+5V電源管腳(Vcc)VDD:

地管腳(GND)Vo:

液晶顯示驅動電源(0V~5V)字符LCD液晶顯示和接口

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊DB0~DB7:數(shù)據(jù)線,可以用8位連接,也可以只用高4位連接,節(jié)約單片機資源,本實驗中采用的是八位連接方法。字符LCD液晶顯示和接口

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊A:背光控制正電源K:背光控制地字符LCD液晶顯示和接口

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊單片機與LCD模塊之間有四種基本操作:

寫命令 讀狀態(tài) 寫顯示數(shù)據(jù) 讀顯示數(shù)據(jù)字符LCD液晶顯示和接口

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊RSR/W操作00寫命令操作(初始化、光標定位等)01讀狀態(tài)操作(讀忙標志)10寫數(shù)據(jù)操作(要顯示的內容)11讀數(shù)據(jù)操作(可以把顯示存儲區(qū)中的數(shù)據(jù)反讀出來)字符LCD液晶顯示和接口

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊RS:數(shù)據(jù)和指令選擇控制端,RS=0:命令/狀態(tài);RS=1:數(shù)據(jù)R/W:讀寫控制線,R/W=0:寫操作;R/W=1:讀操作E:數(shù)據(jù)讀寫操作控制位,E線向LCD模塊發(fā)送一個脈沖,LCD模塊與單片機之間將進行一次數(shù)據(jù)交換字符LCD液晶顯示和接口

讀狀態(tài)操作狀態(tài)字的最高位的BF為忙標志位,1表示LCD正在忙,0表示不忙。通過判斷最高位BF的0、1狀態(tài),就可以知道LCD當前是否處于忙狀態(tài),如果LCD一直處于忙狀態(tài),則繼續(xù)查詢等待,否則進行下面的操作。查詢忙狀態(tài)程序段如下:do{i=lcd_r_start();//調用讀狀態(tài)函數(shù),讀取LCD狀態(tài)字

i&=0x80;//采用與操作屏蔽掉低7位

delay(2); //延時

}while(i!=0); //LCD忙,繼續(xù)查詢,否則退出循環(huán)字符LCD液晶顯示和接口

寫命令操作LCD上電時,都必須按照一定的時序對LCD進行初始化操作,主要任務是設置LCD的工作方式、顯示狀態(tài)、清屏、輸入方式、光標位置等。

字符LCD液晶顯示和接口

寫命令操作voidlcd_w_cmd(unsignedcharcom){unsignedchari;do{//查LCD忙操作

i=lcd_r_start(); //調用讀狀態(tài)字函數(shù)

i=i&0x80;//與操作屏蔽掉低7位

delay(2);}while(i!=0); //LCD忙,繼續(xù)查詢,否則退出循環(huán)

RW=0;delay1();RS=0; //RW=1,RS=0,寫LCD命令字

delay1();E=1; //E端時序

delay1();P1=com; //將com中的命令字寫入LCD數(shù)據(jù)口

delay1();E=0;delay1();RW=1;delay(255);}字符LCD液晶顯示和接口

寫命令操作編號指令名稱控制信號命令字D7D6D5D4D3D2D1D01清屏00000000012歸home位000000001×3輸入方式設置00000001I/DS4顯示狀態(tài)設置0000001DCB5光標畫面滾動000001S/CR/L××6工作方式設置00001DLNF××7CGRAM地址設置0001A5A4A3A2A1A08DDRAM地址設置001A6A5A4A3A2A1A09讀BF和AC01BFAC6AC5AC4AC3AC2AC1AC0字符LCD液晶顯示和接口

初始化操作LCD初始工作方式設置顯示狀態(tài)設置清屏返回輸入方式設置001DLNF**—設置單片機與LCD接口數(shù)據(jù)位數(shù)DL、顯示行數(shù)N、字型FDL=1:8位、DL=0:4位;N=1:2行、N=0:1行F=1:5×10、F=0:5×7例:00111000B(38H)設置數(shù)據(jù)位數(shù)8位,2行顯示,5×7點陣字符00001DCB—設整體顯示開關D、光標開關C、光標位的字符閃耀BD=1:開顯示;C=0:不顯示光標;B=0:光標位字符不閃爍例:00001100B(0CH)打開LCD顯示,光標不顯示,光標位字符不閃爍清屏命令字01H,將光標設置為第一行第一列000001I/DS—設光標移動方向并確定整體顯示是否移動I/D=1:增量方式右移、I/D=0:減量方式左移S=1:移位、S=0:不移位例:00000110B(06H)設置光標增量方式右移,顯示字符不移動字符LCD液晶顯示和接口

寫數(shù)據(jù)操作

光標位置與相應命令字

列行123456789101112131415161808182838485868788898A8B8C8D8E8F2C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF注:表中命令字以十六進制形式給出,該命令字就是與LCD顯示位置相對應的DDRAM地址。字符LCD液晶顯示和接口

voidlcd_w_dat(unsignedchardat){unsignedchari;do{ //查忙操作

i=lcd_r_start(); //調用讀狀態(tài)字函數(shù)

i=i&0x80; //與操作屏蔽掉低7位

delay(2);}while(i!=0); //LCD忙,繼續(xù)查詢,否則退出循環(huán)

RW=0;delay1();RS=1; //RW=1,RS=0,寫LCD命令字

delay1();E=1; //E端時序

delay1();P1=dat; //將dat中的顯示數(shù)據(jù)寫入LCD數(shù)據(jù)口

delay1();E=0;delay1();RW=1;dela

溫馨提示

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

評論

0/150

提交評論