C51單片機應用與C語言程序設計(第4版)-基于機器人工程對象的項目實踐 課件 ch08 C51單片機顯示接口編程與機器人應用_第1頁
C51單片機應用與C語言程序設計(第4版)-基于機器人工程對象的項目實踐 課件 ch08 C51單片機顯示接口編程與機器人應用_第2頁
C51單片機應用與C語言程序設計(第4版)-基于機器人工程對象的項目實踐 課件 ch08 C51單片機顯示接口編程與機器人應用_第3頁
C51單片機應用與C語言程序設計(第4版)-基于機器人工程對象的項目實踐 課件 ch08 C51單片機顯示接口編程與機器人應用_第4頁
C51單片機應用與C語言程序設計(第4版)-基于機器人工程對象的項目實踐 課件 ch08 C51單片機顯示接口編程與機器人應用_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第8講C51單片機顯示接口編程與機器人應用“十三五”職業(yè)教育國家規(guī)劃教材

工作導向創(chuàng)新實踐教材程序設計(第4版)LED數(shù)碼管

LED數(shù)碼管分為單位、雙位、四位和八位4種類型。LED數(shù)碼管實質(zhì)上是一種基本單元為發(fā)光二極管的半導體發(fā)光器件,是由多個發(fā)光二極管封裝在一起組成“8”字形的器件,其引線已在內(nèi)部連接完成,只要引出它們的各個筆畫和公共電極即可。LED數(shù)碼管顯示原理

都是靠點亮內(nèi)部的發(fā)光二極管來發(fā)光的,所以數(shù)碼管顯示與LED的點亮有著密切的關系。任務1數(shù)碼管顯示元件清單:一位共陰極數(shù)碼管,8個1kQ的電阻,導線若干。電路設計:首先,將共陰極數(shù)碼管兩個中間引腳的任意一個(公共端com)接至單片機的P1口,以便進行位選,然后,將數(shù)碼管除去中間兩個com引腳外的其他引腳分別接上一個1k2的電阻,再按照圖8-3所示的模型將a~g以及dp引腳按順序依次接到P2.0~P2.7,以便進行段選,如圖8-5所示。任務1數(shù)碼管顯示共陰極數(shù)碼管顯示的源程序:任務1數(shù)碼管顯示電

路連接數(shù)碼管顯示電路連接如圖8-6所示。任務2認識LCD顯示器●LCD顯示器的種類很多,本講使用的是字符型LCD。字符型LCD是一種專門用于顯示字母、數(shù)字、符號等的點陣式液晶顯示模塊。●每個顯示字符均由5×7或5×11點陣組成。點陣字符位之間有一空點距的間隔,起到保持字符間距和行距的作用?!癖局v所使用的LCD1602顯示器可顯示兩行,每行由16個點陣字符組成,能顯示所有ASCI字符,如圖8-7所示,每個字符由5×7點陣組成。

LCD顯示器任務2認識LCD顯示器LCD顯示器與C51單片機的連接●LCD1602通過RS、R/W器與AT89S52有8個數(shù)據(jù)引腳(D0~D7)與AT89S52相連,用于接收指令

和數(shù)據(jù)。AT89S52和E這3個端口控制LCD顯示器。LCD顯示器引腳說明見表8-1?!馤CD顯示的連接示意圖如圖8-8所示。編號符號腳說明編號符號引腳說明1GND電源地7D0雙向數(shù)據(jù)口2Vce電源正極8D1雙向數(shù)據(jù)口3Vo對比度調(diào)節(jié)9D2雙向數(shù)據(jù)口4RS數(shù)據(jù)/命令選擇10D3雙向數(shù)據(jù)口5R/W讀/寫選擇11D4雙向數(shù)據(jù)口6E模塊使能端12D5雙向數(shù)據(jù)口編號符號引腳說明編號符號引腳說明13D6雙向數(shù)據(jù)口15BLA背光源正極14D7雙向數(shù)據(jù)口16BLK背光源地表8-1LCD顯示器引腳說明任務2認識LCD顯示器在LCD時序圖中,在將E置高電平前,先設置好RS和R/W信號,在E下降沿到來之前,準備好寫入的命令字或數(shù)據(jù)。只需在適當?shù)牡胤郊由涎訒r,就可以滿足要求了。LCD接口說明寫數(shù)據(jù)輸入:RS=H,R/W=L,E=下降沿脈沖,DB0~DB7=數(shù)據(jù)輸出:無讀狀態(tài)輸入:RS=L,R/W=H,E=H輸出:DB0~DB7=狀態(tài)字寫指令

輸入:RS=L,R/W=L,E=下降沿脈沖,DB0~DB7=指令碼輸出:無輸入:RS=H,R/W=H,E=H輸出:DB0~DB7=數(shù)據(jù)讀數(shù)據(jù)任務3編寫LCD驅(qū)動程序元件清單:(1)LCD1602(2)跳線(3)顯示器電路連接:由于LCD的指令和數(shù)據(jù)都是8位的,因此在傳輸時要傳輸兩次才能完成一次操作。電路的連接如圖8-10所示。20%30%40%50%接通教學板電源。輸入、保存并運行LCDdisplay.c。連接LCD顯示器,觀察顯示器能否顯示字符串。任務3編寫LCD驅(qū)動程序例程:LCDdisplay.c任務3編寫LCD驅(qū)動程序LCDdisplay.c是如何工作的兩步走然后顯示字符串先對LCD進行初始化初始化函數(shù)voidLCMInit(void)完全遵照任務1中LCD的初始化要求。初始化工作完成之后,主函數(shù)調(diào)用DisplayListChar(unsignedcharx,unsignedchary,unsignedchar*s)來顯示字符串。在顯示字符串之前,要用SetxyLCM()確定光標的位置,根據(jù)數(shù)據(jù)地址設置指令要求,若在第一行顯示,則寫指令0x80+y;若在第二行顯示,則寫指令0x80+0x40+y,即0xc0+y。★對指針變量的定義包括以下內(nèi)容

(1)指針類型說明,即定義變量為一個指針變量。(2)指針變量名。(3)變量值(指針)所指向變量的數(shù)據(jù)類型。其一般形式為:類型說明符*變量名。任務3編寫LCD驅(qū)動程序指針指針是C語言中廣泛使用的一種數(shù)據(jù)類型。利用指針編程是C語言最主要的特點之一。利用指針變量可以表示各種數(shù)據(jù)結(jié)構(gòu),能方便地使用數(shù)組和字符串,并能像匯編語言一樣處理內(nèi)存地址,從而編出精練而高效的程序?!镒址闹羔樅椭赶蜃址闹羔樧兞浚?/p>

(1)用字符數(shù)組存放一個字符串,然后輸出該字符串。(2)用字符串指針指向一個字符串。任務4用LCD顯示機器人運動狀態(tài)C語言的編譯預處理在C語言編譯系統(tǒng),先要對某些程序(這些程序可以是C語言提供的標準庫函數(shù),也可以是已經(jīng)開發(fā)好的程序)進行預處理,然后將預處理的結(jié)果和源程序一起進行正常的編譯處理,從而得到目標代碼。預處理命令通常用“#”開頭,主要包括以下兩種。宏定義:它是一種最簡單的宏替換。出現(xiàn)在各處的“名字”都將由“替換文本”替換。#define指令所定義的名字的作用域從其定義點開始,到被編譯的源文件結(jié)束。在源程序中,任何形如#include

溫馨提示

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

評論

0/150

提交評論