标题:
51单片机LCD1602问题,按一次加100;加到200,就乱码了,求解
[打印本页]
作者:
dh981226
时间:
2019-7-17 15:01
标题:
51单片机LCD1602问题,按一次加100;加到200,就乱码了,求解
case 1: //电位器值增加
{
unsigned char n = 0;
CS = 0;
U_D = 1;
_nop_();
//for(n=10;n>0;n--)
//{
INC = 0;
_nop_();
_nop_();
INC = 1;
//}
CS = 1;
VOLUME+=100;
if(VOLUME > 10000)VOLUME = 10000;
DISPLAY[0] = VOLUME/10000+0x30;
DISPLAY[1] = (VOLUME%10000/1000)+0x30;
DISPLAY[2] = (VOLUME%1000/100)+0x30;
DISPLAY[3] = (VOLUME%100/10)+0x30;
DISPLAY[4] = VOLUME%10+0x30;
Lcd_Set_xy(2,7);
Lcd_Wdat(DISPLAY[0]);
Lcd_Wdat(DISPLAY[1]);
Lcd_Wdat(DISPLAY[2]);
Lcd_Wdat(DISPLAY[3]);
Lcd_Wdat(DISPLAY[4]);
}
break;
有这个显示,按一次加100;加到200,就乱码了,求解
作者:
angmall
时间:
2019-7-17 19:02
你这个是变量VOLUME 是 unsigned char类型的 数据类型的上限是255
作者:
winwor
时间:
2019-7-18 17:17
很有可能就是VOLUME的类型不匹配,如果加到300却显示55,那就基本可以确定了
作者:
木木哒的木木
时间:
2019-7-18 19:46
51单片机unsigned char最大值为0~255
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1