为什么51单片机中遥控解码后1602液晶不能持续显示
详细一点说明问题,或者贴上相关代码,既然接收遥控后能显示一次,那想继续显示就是你的流程和代码的问题了
就是我遥控按一下之后,液晶上显示了相应的编码,但是不能持续显示出来,我想让他持续显示这那个编码,等到下一个按键之后再消失
void Disp(void)
{
unsigned char i,j,k;
WriteAddress(0x40); // 设置显示位置为第一行的第1个字
if(a[2]==0x40)
{
i=0;
while(string1 != '\0') //'\0'是数组结束标志
{
WriteData(string1);
i++;
}
}
if(a[2]==0x19)
{
j=0;
while(string2[j] != '\0')
{
WriteData(string2[j]);
j++;
}
}
if(a[2]==0x15)
{
k=0;
while(string3[k] != '\0')
{
WriteData(string3[k]);
k++;
}
}
}
液晶显示如果你不更改内容的话,会一直显示的,如果有变化,就是你更新了,另外你的string1里定义了i,也做了i++运算,但是没有用到i,其他的string看都是数组,但string1并没有数组的标志。还有按键是否有做防抖处理
没更改内容之前也是只显示一下,我找了个开发板上的程序也是只显示一下,那个1是数组,复制过来的问题吧,源程序上没错
那就是程序里在这个显示后又对液晶进行了操作,更改了内容,查看后面的程序流程吧
后来解决了,供电问题,不要同时使用数码管,液晶屏等等