版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、項(xiàng)目551單片機(jī)和字符型LCD1602應(yīng)用實(shí)例5.1液晶顯示概述液晶顯示模塊是一種將液晶顯示器件、連接件、集成電路、PCB線路板、背光源、結(jié)構(gòu)件裝配在一起的組件。英文名稱叫“LCD Module”,簡(jiǎn)稱“LCM”,中文一般稱為“液晶顯示模塊”。其在便攜式儀表中有著廣泛的應(yīng)用, 如萬(wàn)用表、轉(zhuǎn)速表等。根據(jù)顯示方式和內(nèi)容的不同,液晶模塊可以分為數(shù)顯液晶模塊、液晶點(diǎn)陣字符模塊和點(diǎn)陣圖形液晶模塊3種。數(shù)顯液晶模塊是一種由段型液晶顯示器件與專用的集成電路組裝成一體的功能部分,只能顯示數(shù)字和一些標(biāo)識(shí)符號(hào)。液晶點(diǎn)陣字符模塊是由點(diǎn)陣字符液晶顯示器件和專用的行、列驅(qū)動(dòng)器,控制器及必要的連接件、結(jié)構(gòu)件裝配而成的,可
2、以顯示數(shù)字和西文字符,但不能顯示圖形。點(diǎn)陣圖形液晶模塊的點(diǎn)陣像素連續(xù)排列,行和列在排布中均沒(méi)有空隔。因此不僅可以顯示字符,而且可以顯示連續(xù)、完整的圖形。5.21602字符型LCD簡(jiǎn)介注:RS:0=輸入指令;1=輸入數(shù)據(jù);R/W:0=向LCD寫入指令或數(shù)據(jù);1=從LCD讀取信息;E:為“1”時(shí)讀取信息;10(下降沿)時(shí)執(zhí)行指令LCD1602的命令字注:I/D:0=寫入新數(shù)據(jù)后光標(biāo)右移,1=寫入新數(shù)據(jù)后光標(biāo)左移S:0=寫入新數(shù)據(jù)后顯示屏幕不移動(dòng),1=寫入新數(shù)據(jù)后顯示屏幕整體右移1個(gè)字符注:D:0=關(guān)顯示功能,1=開(kāi)顯示能C:0=無(wú)光爍,1=有光爍 B:0=光標(biāo)閃爍,1=光標(biāo)不閃爍注:S/C001R
3、/L 010設(shè)定含義光標(biāo)左移1格,且AC減1光標(biāo)右移1格,且AC加顯示器上的字符左移1格,光標(biāo)不動(dòng)11顯示器上的字符右移1格,光標(biāo)不動(dòng)注:DL:0=數(shù)據(jù)總線為4位,1=數(shù)據(jù)總線為8位N:0=顯示1行,1=顯示2行F:0=57點(diǎn)陣/字符,1=510點(diǎn)陣/字符注:BF:0=LCD可以接收單片機(jī)傳來(lái)的數(shù)據(jù)或指令1=LCD忙,暫時(shí)無(wú)法接收單片機(jī)傳來(lái)的數(shù)據(jù)或指令5.31602字符型LCD的應(yīng)用實(shí)例實(shí)驗(yàn)電路示意圖圖13-1 單片機(jī)和LCD1602的連接示意圖C語(yǔ)言參考程序以下函數(shù)為L(zhǎng)CD1602的頭文件/*LCD1602頭文件*/ #ifndef _LCD1602_H_#define _LCD1602_H
4、_/輸入方式設(shè)置命令字#define LCD_AC_AUTO_INCREMENT 0x06 /數(shù)據(jù)讀、寫操作后,AC自動(dòng)增一#define LCD_AC_AUTO_DECREASE 0x04 /數(shù)據(jù)讀、寫操作后,AC自動(dòng)減一#define LCD_MOVE_ENABLE 0x05 /數(shù)據(jù)讀、寫操作,畫面平移#define LCD_MOVE_DISENABLE 0x04 /數(shù)據(jù)讀、寫操作,畫面不動(dòng)#define LCD_GO_HOME 0x02 /AC=0, 光 標(biāo) 、 畫 面 回 HOME 位/設(shè)置顯示、光標(biāo)及閃爍開(kāi)、關(guān)命令字#define LCD_DISPLAY_ON 0x0C / 顯 示
5、開(kāi)#define LCD_DISPLAY_OFF 0x08 / 顯 示 關(guān)#define LCD_CURSOR_ON 0x0A / 光 標(biāo) 顯 示#define LCD_CURSOR_OFF 0x08 / 光 標(biāo) 不 顯 示#define LCD_CURSOR_BLINK_ON 0x09 / 光 標(biāo) 閃 爍#define LCD_CURSOR_BLINK_OFF 0x08 / 光 標(biāo) 不 閃 爍/光標(biāo)、畫面移動(dòng),不影響DDRAM #define LCD_LEFT_MOVE 0x18 /LCD 顯 示 左 移 一 位#define LCD_RIGHT_MOVE 0x1C /LCD 顯 示 右 移
6、 一 位/*LCD1602地址相關(guān)*/#define LINE1_HEAD #define LINE2_HEAD0x800xc0/ 第一行DDRAM起始地址/ 第二行DDRAM起始地址#define LINE1 #define LINE201/第一行/第二行#define LINE_LENGTH16/每行的最大字符長(zhǎng)度/*LCD1602接線引腳定義*/#define LCDIOP0/定義P0口與LCD1602的數(shù)據(jù)口相接sbit LCD_RS = P20; sbit LCD_RW = P21; sbit LCD_EN = P22;sbit LCD_BUSY = LCDIO7;/*另外相關(guān)的定*
7、/#define HIGH #define LOW #define TURE1010#define #define #defineFALSEuchar unsigned char uint unsigned int/*以下是函數(shù)的申明部分*/void LCD_init(void);/LCD1602初始化void LCD_write_command(uchar command); void LCD_write_data(uchar dat);/void LCD_write_char(uchar x,uchar y,uchar dat); void LCD_disp_string(uchar x,
8、uchar y,char *Data); void LCD_gotoxy(uchar x,uchar y);void delay_ms(uint n);void LCD_check_busy(void);/*/void LCD_check_busy(void)doLCD_EN = 0;LCD_RS = 0;LCD_RW = 1; LCDIO = 0xff; LCD_EN = 1;/檢測(cè)LCD狀態(tài),看它是不是還在忙呢while(LCD_BUSY = 1);LCD_EN = 0;/*LCD1602寫命令*/ void LCD_write_command(uchar command)LCD_chec
9、k_busy(); LCD_RS = LOW; LCD_RW = LOW; LCD_EN = HIGH;LCDIO = command;LCD_EN = LOW;/*LCD1602寫數(shù)據(jù)*/ void LCD_write_data(uchar dat)LCD_check_busy(); LCD_RS = HIGH; LCD_RW = LOW; LCD_EN = HIGH;LCDIO = dat; LCD_EN = LOW;/*LCD1602動(dòng)態(tài)顯示字符串*/ void LCD_disp_string(uchar x,uchar y,uchar *Data)if(x = LINE1)if(y L
10、INE_LENGTH)LCD_write_command(LINE1_HEAD+y);for(;yLINE_LENGTH & *Data != 0;y+)LCD_write_data(*(Data+);if(*Data!=0)y = 0;x = LINE2; if(x=LINE2)LCD_write_command(LINE2_HEAD+y); for(;y0; i-)for(j = 0; j1140; j+);#endif下面的函數(shù)是驅(qū)動(dòng)LCD1602動(dòng)態(tài)顯示!這個(gè)字符串#include #include LCD1602.h#define uchar unsig
11、ned char#define uint unsigned int/*LCD1602的初始化*/ void LCD1602_init(void)LCD_write_command(LCD_DISPLAY_DOUBLE_LINE); LCD_write_command(LCD_AC_AUTO_INCREMENT); LCD_write_command(LCD_DISPLAY_ON); LCD_write_command(LCD_CLEAR_SCREEN);/*主函數(shù)*/uchar string=!;void main()uchar i,*pt; pt=string; LCD1602_init(); while(1)for(i=0;i32;i+)if(i16)/動(dòng)態(tài)顯示的字符串LCD_gotoxy(LINE1,i); elseLCD_gotoxy(LINE2,i-16); LCD_write_data(0x41+i);delay_ms(1
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年寧波市江北工投控股集團(tuán)有限公司公開(kāi)招聘勞務(wù)派遣工作人員備考題庫(kù)參考答案詳解
- 2026年上海市建筑通信網(wǎng)絡(luò)有限公司招聘?jìng)淇碱}庫(kù)及參考答案詳解一套
- 2026年度寧夏招錄選調(diào)生選報(bào)備考題庫(kù)含答案詳解
- 2026年廣西廣電網(wǎng)絡(luò)科技發(fā)展有限公司大化分公司招聘?jìng)淇碱}庫(kù)及答案詳解1套
- 2026年德州市臨邑縣人民醫(yī)院公開(kāi)招聘?jìng)浒钢乒ぷ魅藛T備考題庫(kù)及一套完整答案詳解
- 2026年佛山市禪城區(qū)南莊鎮(zhèn)河滘小學(xué)面向社會(huì)公開(kāi)招聘臨聘教師備考題庫(kù)完整參考答案詳解
- 2026年寧波市鎮(zhèn)海區(qū)急救中心編外工作人員招聘?jìng)淇碱}庫(kù)完整參考答案詳解
- 2025年元江縣鼎元產(chǎn)業(yè)發(fā)展集團(tuán)有限公司公開(kāi)招聘?jìng)淇碱}庫(kù)及答案詳解一套
- 2026年中煤科工重慶設(shè)計(jì)研究院(集團(tuán))有限公司招聘?jìng)淇碱}庫(kù)及答案詳解一套
- 2026年關(guān)于郁南縣興瑞產(chǎn)業(yè)投資有限公司招聘員工的備考題庫(kù)及答案詳解1套
- 2025嵐圖汽車社會(huì)招聘參考題庫(kù)及答案解析(奪冠)
- 2025河南周口臨港開(kāi)發(fā)區(qū)事業(yè)單位招才引智4人考試重點(diǎn)題庫(kù)及答案解析
- 2025年無(wú)人機(jī)資格證考試題庫(kù)+答案
- 南京工裝合同范本
- 登高作業(yè)監(jiān)理實(shí)施細(xì)則
- DB42-T 2462-2025 懸索橋索夾螺桿緊固力超聲拉拔法檢測(cè)技術(shù)規(guī)程
- 大學(xué)生擇業(yè)觀和創(chuàng)業(yè)觀
- 車載光通信技術(shù)發(fā)展及無(wú)源網(wǎng)絡(luò)應(yīng)用前景
- 工程倫理-形考任務(wù)四(權(quán)重20%)-國(guó)開(kāi)(SX)-參考資料
- 初中書香閱讀社團(tuán)教案
- 酒店年終總結(jié)匯報(bào)
評(píng)論
0/150
提交評(píng)論