欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
LCD12864漢字亂碼
[打印本頁]
作者:
51stm
時間:
2018-1-28 10:03
標題:
LCD12864漢字亂碼
#include <reg52.h>
#include <intrins.h
typedef unsigned char u8;
typedef unsigned int u16;
sbit RS=P0^7;
sbit RW=P0^6;
sbit EN=P0^5;
sbit PSB=P0^4;
sbit RST=P0^3
void delay_ms(u16 t)
{
u16 y;
for(;t>0;t--)
for(y=125;y>0;y--);
}
void delay_us(u8 t)
{
while(--t);
}
bit read_busy()
{
bit D7;
RS=0;
RW=1;
EN=0;
_nop_()
EN=1;
_nop_();
D7=(bit)(P2&0x80);
_nop_();
EN=0;
return D7;
}
void write_cmd(u8 cmd
{
while(read_busy());
RS=0;
RW=0;
EN=0;
_nop_();
EN=1;
P2=cmd;
delay_us(40);
EN=0;
_nop_();
}
void write_data(u8 dat
{
while(read_busy());
RS=1;
RW=0;
EN=0;
_nop_();
EN=1;
P2=dat;
delay_us(40);
EN=0;
_nop_();
}
void init()
{
PSB=1;
RST=1;
delay_ms(50);
write_cmd(0x30);
delay_us(100);
write_cmd(0x30);
delay_us(40);
write_cmd(0x0c);
delay_us(100);
write_cmd(0x01);
delay_ms(15);
write_cmd(0x06);
}
void position(u8 m,u8 n)
{
u8 i,j;
switch(m)
{
case 1:i=0x80;break;
case 2:i=0x90;break;
case 3:i=0x88;break;
case 4:i=0x98;break;
}
j=i+n;
write_cmd(j);
}
void show_poem()
{
u8 i,j;
u8 *str[2]={"一二三四五","四五六去"};
for(i=0;i<4;i++)
{
position(i+1,0);
for(j=0;*(str[i]+j)!='\0';j++)
write_data(*(str[i]+j));
}
}
void main()
{
init();
show_poem();
while(1);
}
程序有什么問題嗎?怎么寫入·漢字會亂碼,寫入英文正常顯示
作者:
xinxiaoci
時間:
2018-1-28 10:31
看下你的屏有沒有漢字庫?
作者:
51stm
時間:
2018-1-28 18:38
xinxiaoci 發表于 2018-1-28 10:31
看下你的屏有沒有漢字庫?
應該有吧,我用廠家的可以顯示中文無亂碼
作者:
ahshmj
時間:
2018-1-28 20:50
你是實驗吧?把“三”這個字去掉看看是否正常?
區位碼漢字庫中凡是含有“0FDH”的字(包括“三”)都會這樣,每一個“區”里面都有一個這樣的字。
這是keil的一個bug。
可以看看:
http://m.raoushi.com/bbs/dpj-5399-1.html
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1