LCD显示乱码

来源:百度知道 编辑:UC知道 时间:2024/05/05 20:40:31
搞了好几天,不能解决的一个LCD 显示乱码的问题。

以下是我的单片机程序。芯片SST89E554,LCD 为FM1602,请大家耐心一点看,非常感谢!!

#include <reg51.h>
#include "..\lcd_head\lcd.h"

#define TIMERH0 0x3c //定时器溢出时间为50ms
#define TIMERL0 0xb0

unsigned char count;
bit flag;

void Timer0_Init(void) //定时器0初始化
{
TH0=TIMERH0;
TL0=TIMERL0;

TMOD=0x01;
EA=1;
ET0=1;
TR0=1;
}

void Timer0_ISR(void) interrupt 1 using 2 //中断服务程序
{
count++;
if(count==20) //20*50ms=1s执行一次LCD输出
{
count=0;
flag=~flag; //此处为测试用,P2口为发光二极管输出
if(flag==1)
{
P2=0x01;
P2=~P2;
}
else
{
P2=0x00;
P2=~P2;
}
EA=0;
LCD_Clear(); //LCD清屏
LCD_PutStr(0,0,"hello"); //LCD输出字符串
EA=1;
}
}

void main(void)
{
EA=0;

我也是在中断中乱码.....还搞不清楚原因,如果找到了麻烦也告知一下

很简单~换解码板
整个液晶面板占成本的92%,你可以算算电源,解码板,还有别的东西的成本了哦

我也是 中断出乱码 还有就是我用stc89c52跟at89s52没乱码 但是改用stc12c5a60s2则出现乱码 解决了的请告知一下 谢谢