LCD12864編碼顯示漢字_第1頁
LCD12864編碼顯示漢字_第2頁
LCD12864編碼顯示漢字_第3頁
LCD12864編碼顯示漢字_第4頁
LCD12864編碼顯示漢字_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、精選文檔#include <reg51.h>#include <intrins.h>#define uint unsigned int#define uchar unsigned char#define DATA P0 /LCD12864數(shù)據(jù)線sbit RS=P22; / 數(shù)據(jù)指令 選擇sbit RW=P21; / 讀寫 選擇sbit EN=P20; / 讀寫使能sbit CS1=P23; / 片選1sbit CS2=P24; / 片選2/*/* 定義中文字庫*/*/uchar code Hzk=/*- 文字: 各 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=

2、16x16 -*/0x00,0x20,0x20,0x10,0x08,0x8F,0xB4,0x44,0x44,0xA4,0x9C,0x04,0x00,0x00,0x00,0x00,0x02,0x02,0x02,0x01,0x7F,0x42,0x42,0x42,0x42,0x42,0x42,0x7F,0x01,0x03,0x01,0x00,/*- 文字: 位 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0xC0,0x30,0xEC,0x03,0x2A,0xC8,0x09,0x0A,0x0E,0x08,0xE8,0x48,0x08,0x00,0x00,0x01,

3、0x00,0x00,0x7F,0x20,0x20,0x20,0x27,0x20,0x30,0x2E,0x21,0x20,0x20,0x20,0x00,/*- 文字: 單 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x00,0xF8,0x28,0x29,0x2E,0x2A,0xF8,0x28,0x2C,0x2B,0x2A,0xF8,0x00,0x00,0x00,0x08,0x08,0x0B,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x09,0x0B,0x08,0x08,0x00,/*- 文字: 機(jī) -*/*- 宋體1

4、2; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x08,0x08,0xC8,0xFF,0x48,0x88,0x08,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x04,0x03,0x00,0xFF,0x00,0x41,0x30,0x0C,0x03,0x00,0x00,0x00,0x3F,0x40,0x78,0x00,/*- 文字: 愛 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x40,0xB2,0x96,0x9A,0x92,0xF6,0x9A,0x93,0x91,0x99,0x97,0x91,0x

5、90,0x30,0x00,0x40,0x20,0xA0,0x90,0x4C,0x47,0x2A,0x2A,0x12,0x1A,0x26,0x22,0x40,0xC0,0x40,0x00,/*- 文字: 好 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x10,0x10,0xF0,0x1F,0x10,0xF0,0x80,0x82,0x82,0x82,0xF2,0x8A,0x86,0x82,0x80,0x00,0x80,0x43,0x22,0x14,0x0C,0x73,0x20,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,/

6、*- 文字: 者 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x20,0x24,0x24,0x24,0x24,0xA4,0xBF,0x64,0x24,0x34,0x28,0x26,0x24,0x20,0x00,0x04,0x04,0x04,0x02,0x02,0xFF,0x49,0x49,0x49,0x49,0x49,0x49,0xFF,0x00,0x00,0x00,/*- 文字: 你 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x80,0x40,0xF0,0x2C,0x43,0x20,0x98,0x0F,0x0A,0xE8

7、,0x08,0x88,0x28,0x1C,0x08,0x00,0x00,0x00,0x7F,0x00,0x10,0x0C,0x03,0x21,0x40,0x3F,0x00,0x00,0x03,0x1C,0x08,0x00,/*- 文字: 們 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x80,0x40,0xF0,0x1C,0x03,0xF0,0x01,0x0E,0x04,0x00,0x04,0x04,0x04,0xFC,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x20,0x4

8、0,0x3F,0x00,0x00,/*- 文字: 辛 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x80,0x84,0x84,0x94,0xA4,0xC4,0x85,0x86,0x84,0xC4,0xA4,0x94,0x84,0x84,0x80,0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x00,0x00,0x00,/*- 文字: 苦 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x40,0x44,0x44,0x44,0x44,0x5F,0

9、x44,0xF4,0x44,0x44,0x5F,0x44,0x44,0x44,0x44,0x00,0x00,0x00,0x00,0x7E,0x22,0x22,0x22,0x23,0x22,0x22,0x22,0x7E,0x00,0x00,0x00,0x00,/*- 文字: 了 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xF2,0x12,0x0A,0x0A,0x06,0x06,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,

10、0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: 希 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x20,0x20,0x30,0x30,0xA9,0x6A,0x3A,0x24,0xE4,0x2A,0x29,0x30,0x20,0x20,0x20,0x00,0x08,0x04,0x02,0x01,0x3F,0x01,0x01,0x01,0xFF,0x01,0x21,0x61,0x3F,0x00,0x00,0x00,/*- 文字: 望 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x04,0x04,0xF

11、C,0x85,0x46,0x24,0x04,0x80,0x7E,0x2A,0x2A,0xAA,0xAA,0xFE,0x00,0x00,0x00,0x40,0x42,0x4A,0x4A,0x4A,0x4A,0x7E,0x4A,0x4A,0x4A,0x4A,0x4A,0x42,0x40,0x00,/*- 文字: 大 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x7F,0xA0,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x80,0x40,0x20,0x10,0x

12、0C,0x03,0x00,0x01,0x06,0x08,0x30,0x60,0xC0,0x40,0x00,/*- 文字: 家 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x18,0x04,0x14,0x94,0x94,0xD5,0xB6,0x14,0x14,0x94,0x04,0x14,0x0C,0x04,0x00,0x00,0x29,0x29,0x15,0x14,0x4A,0x89,0x44,0x3F,0x06,0x09,0x09,0x10,0x30,0x10,0x00,/*- 文字: 能 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x1

13、6 -*/0x10,0xB8,0x97,0x92,0x90,0x94,0xB8,0x10,0x00,0x7F,0x48,0x48,0x44,0x74,0x20,0x00,0x00,0xFF,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x3F,0x44,0x44,0x42,0x72,0x20,0x00,/*- 文字: 多 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x00,0x00,0x20,0x90,0x88,0x54,0x53,0xA2,0x22,0x12,0x0A,0x06,0x00,0x00,0x00,0x00,0x81

14、,0x89,0x89,0x44,0x44,0x42,0x25,0x29,0x11,0x11,0x09,0x05,0x03,0x01,0x00,/*- 文字: 多 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x00,0x00,0x20,0x90,0x88,0x54,0x53,0xA2,0x22,0x12,0x0A,0x06,0x00,0x00,0x00,0x00,0x81,0x89,0x89,0x44,0x44,0x42,0x25,0x29,0x11,0x11,0x09,0x05,0x03,0x01,0x00,/*- 文字: 交 -*/*- 宋體12; 此

15、字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x08,0x88,0x48,0x38,0x28,0x09,0x0E,0x0C,0x08,0x98,0x28,0x68,0x48,0x08,0x00,0x00,0x80,0x80,0x40,0x41,0x22,0x14,0x18,0x0C,0x16,0x23,0x61,0xC0,0x40,0x00,0x00,/*- 文字: 流 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x10,0x60,0x01,0x86,0x60,0x04,0x44,0x64,0x55,0x4E,0x44,0x64,0xC4,0x04,0

16、x04,0x00,0x04,0x04,0xFC,0x03,0x40,0x30,0x0F,0x00,0x00,0x7F,0x00,0x3F,0x40,0x40,0x70,0x00,/*- 文字: 學(xué) -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x40,0x30,0x10,0x12,0x5C,0x54,0x50,0x51,0x5E,0xD4,0x50,0x18,0x57,0x32,0x10,0x00,0x00,0x02,0x02,0x02,0x02,0x02,0x42,0x82,0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x00,/*- 文

17、字: 習(xí) -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x00,0x02,0x02,0x0A,0x12,0x22,0x62,0x02,0x82,0x82,0x42,0x02,0xFE,0x00,0x00,0x00,0x00,0x04,0x0C,0x04,0x02,0x02,0x01,0x01,0x00,0x20,0x40,0x80,0x7F,0x00,0x00,/*- 文字: 24 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

18、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,;/*/* 定義ASCII字庫8列*16行*/*/uchar code Ezk=/*- 文字: Q -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x38,0x50,0x4F,0x00,/*- 文字: Q -*/*- 宋體12; 此字體下對(duì)

19、應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x38,0x50,0x4F,0x00,/*- 文字: 3 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,/*- 文字: 4 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0xC0,0x20,0x10,0xF8,0x

20、00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*- 文字: 5 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,/*- 文字: 4 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*

21、- 文字: 1 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*- 文字: 5 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,/*- 文字: 2 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x

22、70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,/*- 文字: 4 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*- 文字: 4 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x

23、24,0x24,0x3F,0x24,0x00, /*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為

24、:寬x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0

25、x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,; /*狀態(tài)檢查,LCD是否忙*/void CheckState() uchar dat;/狀態(tài)信息(推斷是否忙) RS=0; / 數(shù)據(jù)指令選擇,D/I(RS)=“L” ,表示 DB7DB0 為顯示指令數(shù)據(jù) RW=1; /R/W=“H” ,E=“H”數(shù)據(jù)被讀到DB7DB0 d

26、o DATA=0x00; EN=1;/EN下降源 _nop_(); /一個(gè)時(shí)鐘延時(shí) dat=DATA; EN=0; dat=0x80 & dat; /僅當(dāng)?shù)?位為0時(shí)才可操作(判別busy信號(hào)) while(!(dat=0x00); /*寫命令到LCD中*/SendCommandToLCD(uchar com) CheckState();/狀態(tài)檢查,LCD是否忙 RS=0; /向LCD發(fā)送命令。RS=0寫指令,RS=1寫數(shù)據(jù) RW=0;/R/W=“L” ,E=“HL”數(shù)據(jù)被寫到 IR 或 DR DATA=com; /com :命令 EN=1;/EN下降源 _nop_(); _nop_(

27、); EN=0; /*設(shè)置頁 0xb8是頁的首地址*/void SetLine(uchar page) page=0xb8|page; /1011 1xxx 0<=page<=7 設(shè)定頁地址-X 0-7,8行為一頁64/8=8,共8頁 SendCommandToLCD(page); /*設(shè)定顯示開頭行,0xc0是行的首地址*/void SetStartLine(uchar startline) startline=0xc0|startline; /1100 0000 SendCommandToLCD(startline); /設(shè)置從哪行開頭:0-63,一般從0 行開頭顯示 /*設(shè)定

28、列地址-Y 0-63 ,0x40是列的首地址*/void SetColumn(uchar column) column=column &0x3f; /column最大值為64,越出 0=<column<=63 column= 0x40|column; /01xx xxxx SendCommandToLCD(column); /*開關(guān)顯示,0x3f是開顯示,0x3e是關(guān)顯示*/void SetOnOff(uchar onoff) onoff=0x3e|onoff; /0011 111x,onoff只能為0或者1SendCommandToLCD(onoff);/*寫顯示數(shù)據(jù) *

29、/void WriteByte(uchar dat) CheckState();/狀態(tài)檢查,LCD是否忙 RS=1; /RS=0寫指令,RS=1寫數(shù)據(jù) RW=0;/R/W=“L” ,E=“HL”數(shù)據(jù)被寫到 IR 或 DR DATA=dat;/dat:顯示數(shù)據(jù) EN=1; /EN下降源 _nop_(); _nop_(); EN=0;/*選擇屏幕screen: 0-全屏,1-左屏,2-右屏*/void SelectScreen(uchar screen) switch(screen) case 0: CS1=0;/全屏 _nop_(); _nop_(); _nop_(); CS2=0; _nop_

30、(); _nop_(); _nop_(); break; case 1: CS1=1;/左屏 _nop_(); _nop_(); _nop_(); CS2=0; _nop_(); _nop_(); _nop_(); break; case 2: CS1=0;/右屏 _nop_(); _nop_(); _nop_(); CS2=1; _nop_(); _nop_(); _nop_(); break; /*清屏screen: 0-全屏,1-左屏,2-右*/void ClearScreen(uchar screen) uchar i,j; SelectScreen(screen); for(i=0;

31、i<8;i+) /把握頁數(shù)0-7,共8頁 SetLine(i);SetColumn(0); for(j=0;j<64;j+) /把握列數(shù)0-63,共64列 WriteByte(0x00); /寫點(diǎn)內(nèi)容,列地址自動(dòng)加1 /*延時(shí)程序*/voiddelay(uint z)uint i,j;for(i=0; i<z; i+)for(j = 0; j < 110; j+); /*向上滾屏*/*這里用做滾動(dòng)顯示*/*voidlcd_rol() uint i;for(i = 0; i < 64; i+)CS1=0; / 片選1SendCommandToLCD(0xc0+i);

32、CS1=1; CS2=0;/ 片選2SendCommandToLCD(0xc0+62-i);CS2=0; / 片選2delay(6);*/*初始化LCD*/void InitLCD() CheckState();SelectScreen(0);SetOnOff(0); /關(guān)顯示SelectScreen(0);SetOnOff(1); /開顯示SelectScreen(0);ClearScreen(0);/清屏SetStartLine(0); /開頭行:0/*顯示全角漢字*/void Display(uchar ss,uchar page,uchar column,uchar number)int i;/選屏參數(shù),pagr選頁參數(shù),column選列參數(shù),number選第幾漢字輸出SelectScreen(ss);column=column&0x3f;SetLine(page);/寫上半頁SetColumn(column); /把握列for(i=0;i<16;i+) /把握16列的數(shù)據(jù)輸出WriteByte(Hzki+32*number); /i+32*number漢字的前16個(gè)數(shù)據(jù)輸出SetLine(page+1); /寫下半頁SetColumn(column); /把握列 for(i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論