12864液晶經(jīng)典驅動程序,一看就懂,有詳細的注釋(C語言編寫,不看后悔)_第1頁
12864液晶經(jīng)典驅動程序,一看就懂,有詳細的注釋(C語言編寫,不看后悔)_第2頁
12864液晶經(jīng)典驅動程序,一看就懂,有詳細的注釋(C語言編寫,不看后悔)_第3頁
12864液晶經(jīng)典驅動程序,一看就懂,有詳細的注釋(C語言編寫,不看后悔)_第4頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、這個程序寫得很好,自己也是看的別人寫的很好的程序,但是它代碼不夠完整,注釋不詳細,經(jīng)過自己的修改加以完善。另外我發(fā)現(xiàn)很多的測試代碼都沒有附 上測試代碼效果圖,在本人的代碼下面有自己拍的效果圖,填補不足之處。自己在找資料的過程中花掉很多的財富值,如果大家看得起該代碼請評五分加以下載,在下感激不盡!/*程序名稱:12864液晶經(jīng)典驅動程序(帶中文字庫)功 能:12864測試程序修改作者:王程修改時間:2014年2月5日23:22:32*/ #include#define uchar unsigned char#define uint unsigned int sbit PSB = P2A4; /模

2、式選擇1為并行0為串行/ P0為數(shù)據(jù)口sbit LCD_RS=P2A0;sbit LCD_RW=P2A1;sbit LCD_EN=P2A2;數(shù)據(jù)、命令選擇端口液晶讀寫控制液晶使能控制sbit RES = P2A5; 復位端口 低電平復位,上電之前進行復位,為了穩(wěn)定!unsigned char code DAT口 =我愛我家;/測試顯示的漢字,下面的A為測試顯示 的英文/*函數(shù)名稱:Delay_1ms編振為12M)功能:延時約1ms的時間參數(shù):無返回值:無*/ void delay_1ms(uint x) uint i,j;for(j = 0;j x;j+) for(i=0;i110;i+);/

3、*函數(shù)名稱:write_cmd功能:向液R中寫控制命令參數(shù):cmd-控制命令返回值:無*/void write_cmd(uchar cmd) .ucha門cdtemp = 0;LCD_RS=0;LCD_RW=1;do經(jīng)典判忙方式,精簡LCD_EN=1;delay_1ms(2);Icdtemp = P0;LCD_EN=0;while(lcdtemp & 0x80);LCD_RW=0;P0 = cmd;LCD_EN=1;delay_1ms(5);LCD_EN=0;/*函數(shù)名稱:write_data功能:向液R中寫顯示數(shù)據(jù)參數(shù):dat-顯示數(shù)據(jù)返回值:無*/ void write_data(ucha

4、r dat) .uchar lcdtemp = 0;LCD_RS=0;LCD_RW=1;do/經(jīng)典判忙方式LCD_EN=1;delay_1ms(2);lcdtemp = P0;LCD_EN=0;while(lcdtemp & 0x80);LCD_RS=1;LCD_RW=0;P0 = dat;LCD_EN=1;delay_1ms(5);LCD_EN=0;/*函數(shù)名稱:lcd_int功能:初廟化液晶模塊參數(shù):無返回值:無*/ void lcd_int(void)delay_1ms(40);PSB=1;delay_1ms(1);RES=0;delay_1ms(1);RES=1;delay_1ms(1

5、0);write_cmd(0x30); delay_1ms(5); write_cmd(0x30); delay_1ms(5);write_cmd(0x08); delay_1ms(5);write_cmd(0x10); delay_1ms(5);write_cmd(0x0c); delay_1ms(5);write_cmd(0x01); delay_1ms(5);write_cmd(0x06); delay_1ms(5);write_cmd(0x80); delay_1ms(5);./大于40MS的延時程序設置為8BIT并口工作模式/延時/復位/延時/復位置高/基本指令集/基本指令集/地址歸

6、位/光標設置整體顯示打開,游標關閉/消除顯示/游標右移/設定顯示的起始地址函數(shù)名稱:main 功 能:測試1602初始化函數(shù)模塊參 數(shù):無返回值:無*/*void main() uchar i;char *a = DAT;/使用指針,指向字符串地址lcd_int();write_data(A); 每個顯示都是用的兩個字節(jié),必須寫兩次write_data();/再寫一次,不然亂顯示(如果不加就再顯示一個別的字母)for(i=0;i8;i+)write_data(*a); 將地址當作數(shù)據(jù)傳給12864a+;/ 一個漢字傳送兩次,因為一個漢字占用兩個字節(jié),兩次傳完write_cmd(0x90);/一行顯示八個漢字,第一行 0x80-87,第二行0x90開始 a

溫馨提示

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

評論

0/150

提交評論