<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 帶字庫型12864液晶的簡(jiǎn)單使用

帶字庫型12864液晶的簡(jiǎn)單使用

作者: 時(shí)間:2012-08-04 來(lái)源:網(wǎng)絡(luò ) 收藏

這是演示效果,第一行“請您欣賞”上自定義的仿宋字體,下面三行是字庫中自帶的漢字(手機拍攝的效果不太好)。

點(diǎn)擊瀏覽下一頁(yè)

下面是我寫(xiě)的源程序,(由于水平有限,程序寫(xiě)法可能不是最優(yōu)的方式,希望高手批評指正):

/*********************************************************
程序:LCD12864自定義顯示字符(最多顯示4個(gè))
內容:ASCII碼顯示、自帶字庫顯示(8192個(gè))、自定義顯示字符(4個(gè)請您欣賞)。
軟件:keil uVision4
液晶:QYLCD12864HZ1(帶字庫)
學(xué)習板:HOT-51學(xué)習板
作者:張家越
整理日期:2011-04-09 17:00

*************************************************************/
#includeAT89X52.h>
#define uchar unsigned char
#define uint unsigned int//定義一下,方便使用
#include"word1.h"

sbit RS=P2^5;
sbit RW=P2^6;
sbit EN=P2^7;//液晶的三個(gè)控制端

//sbit PSB=P2^4;//1---8位或4位并口方式;0---串口方式。單片機上電高電平,選擇的是并口方式

uchar code tab1[]=" LCD12864 ";
uchar code tab2[]="湖北第二師范學(xué)院";
uchar code tab3[]="電子愛(ài)好者張家越";
unsigned char code table1[][32] =
{
/*-- 文字: 請 --*/
/*-- 仿宋_GB231212; 此字體下對應的點(diǎn)陣為:寬x高=16x16 --*/
{
0x00,0x40,0x20,0x70,0x13,0xC0,0x10,0x70,0x01,0xC0,0x00,0x7C,0x77,0x80,0x10,0x70,
0x13,0x90,0x12,0x70,0x13,0x90,0x1A,0x70,0x13,0x90,0x02,0x30,0x02,0x10,0x00,0x00,
},
/*-- 文字: 您 --*/
/*-- 仿宋_GB231212; 此字體下對應的點(diǎn)陣為:寬x高=16x16 --*/
{
0x01,0x00,0x09,0x00,0x09,0x38,0x13,0xC8,0x34,0x50,0x51,0x40,0x12,0x50,0x14,0xC8,
0x10,0x40,0x02,0x00,0x21,0x10,0x29,0x08,0x24,0x08,0x42,0x20,0x01,0xE0,0x00,0x00,
},
/*-- 文字: 欣 --*/
/*-- 仿宋_GB231212; 此字體下對應的點(diǎn)陣為:寬x高=16x16 --*/
{
0x00,0x40,0x06,0x40,0x38,0x40,0x20,0x40,0x20,0x7C,0x26,0x88,0x3C,0x80,0x25,0x40,
0x24,0x40,0x24,0x40,0x24,0x40,0x24,0xA0,0x44,0xA0,0x45,0x10,0x82,0x1C,0x00,0x00,
},
/*-- 文字: 賞 --*/
/*-- 仿宋_GB231212; 此字體下對應的點(diǎn)陣為:寬x高=16x16 --*/
{
0x01,0x10,0x09,0x20,0x05,0xFC,0x3E,0x08,0x21,0xC0,0x0E,0x40,0x09,0xC0,0x0E,0x00,
0x00,0xE0,0x0F,0x20,0x09,0x20,0x09,0x20,0x0A,0x20,0x04,0xC0,0x18,0x30,0x00,0x00,
},


} ;

// 漢字表:
// 天道酬勤

void delay(uint i)//延時(shí)函數
{
while(--i);
}

void read_busy()//讀忙標志 最高位為1則busy,不能進(jìn)行讀寫(xiě)操作
{
RS=0;
RW=1;
EN=1;//看時(shí)序
while(P0 0x80);
EN=0;
}

void write_LCD_command(uchar value) //寫(xiě)命令函數
{
read_busy();//每次讀寫(xiě)都要進(jìn)行讀忙標志
RS=0;
RW=0;
delay(200);
EN=1;//EN從1--0鎖存數據
P0=value;
delay(200);
EN=0;
}

void write_LCD_data(uchar value)//寫(xiě)數據函數
{
read_busy();
RS=1;
RW=0;
delay(200);
EN=1;//EN從1--0鎖存數據
P0=value;
delay(200);
EN=0;
}

void init_LCD()//8位并口方式LCD1864初始化函數
{
delay(4000);//等待時(shí)間>40ms
write_LCD_command(0x30);//功能設定:8位數據、基本指令操作
delay(100);//等待時(shí)間>100us
write_LCD_command(0x30);//功能設定:8位數據、基本指令操作
delay(37);//等待時(shí)間>37us
write_LCD_command(0x0C);//顯示設定:整體顯示、游標關(guān)、不反白
delay(100);// 等待時(shí)間>100us
write_LCD_command(0x01);//清屏指令
delay(10000);//等待時(shí)間>10ms
write_LCD_command(0x06);//進(jìn)入點(diǎn)設定:地址指針加1
}

/*=============================================
自定義漢字函數:CGRAM自定義顯示字符
地址顯示編碼
0x400x0000
0x500x0002
0x600x0004
0x700x0006
共可顯示四個(gè)自定義字符!
顯示自定義字符前,先要設定顯示的位置,否則會(huì )亂碼
==============================================*/
void CGRAM()
{
uchar i;
write_LCD_command(0x30);//基本指令操作
write_LCD_command(0x40);//設定CGRAM字符的位置
for(i=0;i16;i++)
{
write_LCD_data(table1[0][i*2]);
write_LCD_data(table1[0][i*2+1]);//送顯示數據到CGRAM區中
}
write_LCD_command(0x50);
for(i=0;i16;i++)
{
write_LCD_data(table1[1][i*2]);
write_LCD_data(table1[1][i*2+1]);
}
write_LCD_command(0x60);
for(i=0;i16;i++)
{
write_LCD_data(table1[2][i*2]);
write_LCD_data(table1[2][i*2+1]);
}

write_LCD_command(0x70);
for(i=0;i16;i++)
{
write_LCD_data(table1[3][i*2]);
write_LCD_data(table1[3][i*2+1]);
}


}

void main()
{
//uchar num;
uchar i;
init_LCD();
write_LCD_command(0x01);

CGRAM();
write_LCD_command(0x82);
write_LCD_data(0x00);
write_LCD_data(0x00);//第一個(gè)自定義顯示字符編碼為:0x0000

write_LCD_command(0x83);
write_LCD_data(0x00);
write_LCD_data(0x02);//第一個(gè)自定義顯示字符編碼為:0x0002

write_LCD_command(0x84);
write_LCD_data(0x00);
write_LCD_data(0x04);//第一個(gè)自定義顯示字符編碼為:0x0004

write_LCD_command(0x85);
write_LCD_data(0x00);
write_LCD_data(0x06);//第一個(gè)自定義顯示字符編碼為:0x0006
delay(5000);

write_LCD_command(0x90);

//write_LCD_command(0x00);
for(i=0;i16;i++)
{
write_LCD_data(tab1[i]);
delay(5000);
}
write_LCD_command(0x88);
//write_LCD_command(0x00);
for(i=0;i16;i++)
{
write_LCD_data(tab2[i]);
delay(5000);
}
write_LCD_command(0x98);
//write_LCD_command(0x00);
for(i=0;i16;i++)
{
write_LCD_data(tab3[i]);
delay(5000);
}
while(1);

}

如果覺(jué)得我空間里面不夠詳細可以參看大海橡樹(shù)的空間:http://hi.baidu.com/echoas(里面寫(xiě)的比較好)

12864圖片顯示我將在“12864使用方法(二)”中給出.。

感謝大家閱讀指教。


上一頁(yè) 1 2 下一頁(yè)

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>