LCD1602顯示中文漢字_第1頁(yè)
LCD1602顯示中文漢字_第2頁(yè)
LCD1602顯示中文漢字_第3頁(yè)
LCD1602顯示中文漢字_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

LCD1602顯示中文漢字LCD1602相比大家都比擬了解,但是我們一般只用來(lái)顯示字符,數(shù)字。最近在網(wǎng)上看許多人用LCD1602來(lái)顯示漢字,覺(jué)得有趣于是拜讀了一些資料,教程,但感覺(jué)大局部相當(dāng)晦澀難懂,本人認(rèn)為既然是教程,就不必要相當(dāng)?shù)膹?fù)雜,畢竟人家看完許久后還是不能得出實(shí)驗(yàn)結(jié)果~!!接下我談?wù)勎业米龇?,保證你10分鐘之內(nèi)一樣可以在LCD1602上顯示你想顯示的各種符號(hào),漢字?。?!首先:我們要弄清楚一個(gè)概念,其實(shí)我們使用1602顯示中文漢字,就是利用其內(nèi)部的自定義字節(jié)空間,我們都知道LCD1602內(nèi)部有一個(gè)64字節(jié)的自定義CGRAM,那么好,我們就是要利用自定義字節(jié)來(lái)到達(dá)顯示漢字的效果.我們知道一個(gè)字符占8個(gè)字節(jié),所以在CGRAM能夠存放8個(gè)字符。也就是說(shuō),這個(gè)64字節(jié)的CGRAM是給我們提供寫(xiě)入數(shù)據(jù)的,那么我們?cè)趺窗盐覀円臐h字寫(xiě)入CGRAM呢?不要急,大家查看LCD1602的用戶手冊(cè),里面提到當(dāng)我們需要想CGRAM寫(xiě)入數(shù)據(jù)時(shí),我們需要先寫(xiě)入CGRAM的地址,從手冊(cè)上可知,CGRAM的地址為0x40.所以當(dāng)我們要寫(xiě)入數(shù)據(jù)時(shí),要先寫(xiě)入一條地址命令write_com(0x040);然后把你要寫(xiě)入的數(shù)據(jù)通過(guò)寫(xiě)數(shù)據(jù)命令寫(xiě)入write_date(你要寫(xiě)得數(shù)據(jù));做完以上步驟了,是不是LCD1602就會(huì)顯示你輸入的漢字呢?不要急,以上你只是把你要顯示漢字的代碼存放在CGRAM里,就相當(dāng)于其他常用字符一樣固定在LCD里面了,如果你不把它讀出來(lái),LCD是不會(huì)顯示的。。當(dāng)你把上面的步驟做完后,接下來(lái)要做的與你平常怎么使用LCD1602是一樣的,只不過(guò)是LCD1602里面增加了一些你自定義的字符,漢字??赡艿竭@里,也許會(huì)有些疑問(wèn),既然自定義字符、漢字的代碼需要我們自己輸入,那么我該怎么編寫(xiě)這些代碼,呵呵,不要著急,接下來(lái)就要用到下面這個(gè)取字模軟件。。相信有的朋友應(yīng)該都用過(guò)這個(gè)軟件。那么我們?cè)趺磥?lái)使用這個(gè)軟件來(lái)獲取代碼呢?大家有沒(méi)有注意到,我們的LCD1602是5*8點(diǎn)陣〔可以數(shù)一數(shù)〕。但是5*8不能提取代碼,最少只能8*8,所以我們這里只用后前5列,前3列不用。。新建圖像8*8.然后再圖像里面點(diǎn)你要顯示的字符,漢字,注意是在后5列中點(diǎn),黑點(diǎn)表示顯示,白點(diǎn)不顯示,用鼠標(biāo)左鍵可以切換,下面是我點(diǎn)得一個(gè)坦克~~點(diǎn)好后,就可以產(chǎn)生代碼了,這軟件里面可以選擇C51或匯編,這里選擇C51。下面的8個(gè)代碼就是要產(chǎn)生這個(gè)字符的數(shù)據(jù)。。也就是要輸入到自定義字符CGRAM里面的。好的,怎么把獲取漢字代碼,怎么把代碼輸入到CGRAM里面都知道了,下面就是要把我們的自定義漢字、字符顯示在LCD1602屏幕上了。。我們知道常用字符是從0x20開(kāi)始顯示,而0x00—0x0f都是沒(méi)有用的,其實(shí)這個(gè)正式為我們自定義顯示字符準(zhǔn)備的。當(dāng)你把上面的代碼輸入到CGRAM中,LCD1602時(shí)機(jī)把漢字或字符賦予地址,這個(gè)地址是從0x00開(kāi)始,因?yàn)樽疃嘀荒?個(gè)字符,所以當(dāng)在CGRAM里面輸入8個(gè)字符代碼時(shí),這8個(gè)字符的代碼的數(shù)據(jù)地址就是0x00開(kāi)始到0x07。所以當(dāng)你要在LCD1602上顯示自定義字符時(shí),只需要把這個(gè)地址用數(shù)據(jù)輸入就OK。Write_date(0x00—0x07);也就是說(shuō)現(xiàn)在你要顯示自定義字符和你顯示常用字符一樣的做法了,先寫(xiě)地址,然后寫(xiě)數(shù)據(jù)自定義字符的數(shù)據(jù)就是0x00—0x07。也就是你自定義的8個(gè)字符。這里用Proteus仿真軟件演示附程序編寫(xiě)時(shí)間:2011-11-25功能:LCD顯示自定義字符、漢字#include"reg52.h"#defineucharunsignedchar#defineuintunsignedintsbitlcdrs=P2^4;sbitlcdrw=P2^5;sbitlcden=P2^6;ucharcodetable[]={0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,//一0x00,0x00,0x0E,0x00,0x1F,0x00,0x00,0x00,//二0x00,0x1F,0x00,0x0E,0x00,0x1F,0x00,0x00,//三0x02,0x04,0x0F,0x12,0x0F,0x0A,0x1F,0x02,//年0x0F,0x09,0x0F,0x09,0x0F,0x09,0x09,0x11,//月0x1F,0x11,0x11,0x1F,0x11,0x11,0x1F,0x00,//日0x00,0x00,0x00,0x0A,0x15,0x0A,0x04,0x00,//心型0x00,0x04,0x15,0x0E,0x1F,0x0E,0x11,0x00//坦克};ucharcodetable1[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};//自定義字符數(shù)據(jù)地址ucharcodetable2[]="QQ:598852247";/****************************** ms延時(shí)函數(shù)******************************/voiddelay(ucharz){ uintx,y; for(x=z;x>0;x--) for(y=122;y>0;y--); }/****************************** lcd1602寫(xiě)命令函數(shù)******************************/voidwrite_cmd(ucharcmd){ lcdrs=0; lcdrw=0;//選擇指令存放器 lcden=1; P0=cmd;//寫(xiě)了命令 delay(5); lcden=0;//使能拉低 lcden=1;}/****************************** lcd1602寫(xiě)數(shù)據(jù)函數(shù)******************************/voidwrite_date(uchardate){ lcdrs=1; lcdrw=0;//選擇數(shù)據(jù)存放器 lcden=1; P0=date;//寫(xiě)了命令 delay(5); lcden=0;//使能拉低 lcden=1;}/****************************** lcd1602初始化******************************/voidinit_lcd1602(){ write_cmd(0x01);//清屏 write_cmd(0x38);//功能設(shè)置 write_cmd(0x0c);//顯示設(shè)置 write_cmd(0x06);//輸入方式從左到右 delay(1);}/****************************** 主函數(shù)******************************/voidmain(){ uchari; init_lcd1602(); delay(1); while(1) { write_cmd(0x40);//開(kāi)始寫(xiě)入你要顯示的自定義字符、漢字代碼 for(i=0;i<64;i++) { write_date(table[i]); delay(5); } write_cmd(0x80);//從第一行第一列開(kāi)始顯示 for(i=0;i

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論