单片机/MCU论坛
直播中

呵呵战斗机

7年用户 5经验值
私信 关注
[问答]

为什么把adc0809的数据处理成十进制输出到lcd1602,有很多数据是错误的

1521778714(1).jpg
这是ad转换和数据处理
#include
#include
#include         
#define uchar unsigned char
#define uint unsigned int
#define    AD_IN7    XBYTE[0xfeff]    //IN7通道地址
***it ad_busy=P3^3;              //定义检测单元变量
uchar q,w,e,r,t;
void shuju()
{   
    q=AD_IN7;
    w=q/100;                        //百位
    e=q%100/10;                        //十位
    r=q%100%10;                      //个位
}
void main(void)
{
    INIT_LCD();                    //初始化lcd   
    delay(100);        
    while(1)
    {
        AD_IN7 = 0;              //启动A/D信号               
        while(ad_busy==1);         //等待A/D转换结束
        shuju();                //转换为十进制
        CONV_TEMP();            //显示
    }        
}

回帖(1)

hts

2018-5-15 18:31:11
好,很不错,好好学习下先,谢谢分享啊!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分