标题:
求单片机大神告知,为什么按钮没法控制lcd上面数字变化
[打印本页]
作者:
hl1124
时间:
2020-5-4 21:07
标题:
求单片机大神告知,为什么按钮没法控制lcd上面数字变化
MY8JOE3O_U4@)(`LDLO71GU.png
(41.22 KB, 下载次数: 35)
下载附件
2020-5-4 21:06 上传
单片机源程序如下:
#include "reg52.h"
#include "QN8027.h"
#include "stdio.h"
typedef unsigned int u8;
typedef unsigned char u16;
u16 LCD_FM[]=" FM: ";
u16 LCD_MH[]=" MHz";
u16 LCD_VOL[]=" VOL:";
u16 i;
u16 a,b,c;
void FM_key()
{
if(LCD1602_FM_ADD==0)
{
Lcd1602_Delay1ms(5);
if(LCD1602_FM_ADD==0)
{
b=b++;
}
while(!LCD1602_FM_ADD);
}
if(LCD1602_FM_MIN==0)
{
Lcd1602_Delay1ms(5);
if(LCD1602_FM_MIN==0)
{
b=b--;
}
while(!LCD1602_FM_MIN);
}
if(b>9)
{
b=0;
a=a+1;
}
}
/*频率调节按钮设置*/
void VOL_key()
{
if(LCD1602_VOL_ADD==0)
{
Lcd1602_Delay1ms(1);
if(LCD1602_VOL_ADD==0)
{
c=c++;
}
while(!LCD1602_VOL_ADD);
}
if(LCD1602_VOL_MIN==0)
{
Lcd1602_Delay1ms(1);
if(LCD1602_VOL_MIN==0)
{
c=c--;
}
while(!LCD1602_VOL_MIN);
}
}
/*声音调节按钮设置*/
void main(void)
{
a=100;
b=0;
c=4;
/*赋值语句*/
LcdInit();
while(1){
LcdWriteCom(0x80); /*光标定位到第一排第一个位置*/
for(i=0;i<6;i++)
{
LcdWriteData(LCD_FM[i]);
}/*显示" FM "*/
LcdWriteCom(0x85); /*光标定位于第一排第六个位置*/
/*u16 a[2]; sprintf(a,"%s",FM_key());*/
FM_key();
if(a<100)
{
LcdWriteData(a/10+0X30);
LcdWriteData(a%10+0X30);
}
else
{ /*根据按键显示小数点前面个位到百位的频率*/
LcdWriteData(a/100+0X30);
LcdWriteData((a-100)/10+0X30);
LcdWriteData(a%10+0X30);
}
LcdWriteCom(0x88); /*显示小数点*/
LcdWriteData(0x2E);
LcdWriteCom(0x89); /*光标定位于第一排第11个位置*/
LcdWriteData(b+0X30); /*根据按键显示小数点后面的频率*/
LcdWriteCom(0x8A);
for(i=0;i<6;i++)
{
LcdWriteData(LCD_MH[i]);
} /*显示“ MHz"*/
LcdWriteCom(0xc0);/*光标定位于第二排第一个位置*/
for(i=0;i<5;i++)
{
LcdWriteData(LCD_VOL[i]);
} /*显示” VOL:“*/
LcdWriteCom(0xc5); /*光标定位于第二排第六个位子*/
VOL_key();
for(i=0;i<c;i++)
{
LcdWriteData(0xff);
}
}
}
复制代码
作者:
man1234567
时间:
2020-5-5 10:31
while(!LCD1602_VOL_ADD); ?
拉电阻接在开关前而不是开关后。
作者:
hl1124
时间:
2020-5-5 15:29
什么意思,能具体点吗?
作者:
hl1124
时间:
2020-5-5 15:38
能具体点吗?
作者:
hl1124
时间:
2020-5-5 15:48
while(!LCD1602_VOL_ADD); ?这个是防止一直按着开关的
作者:
hantu
时间:
2020-5-5 20:52
你的上拉电阻都画错了
作者:
hl1124
时间:
2020-5-6 17:38
我改了,还是不行
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1