找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2942|回复: 2
打印 上一主题 下一主题
收起左侧

为什么单片机+ADC0832转换后的数据在led显示屏上一直是255

[复制链接]
跳转到指定楼层
楼主
附上写的ADC代码,和仿真、实物的照片,实物是连接了mq传感器,仿真用滑动变阻器代替没有问题

sbit ADCS         =P1^5; //ADC0832 片选
sbit ADCLK  =P1^2; //ADC0832 时钟
sbit ADDI         =P1^3; //ADC0832 数据输入        
sbit ADDO         =P1^4; //ADC0832 数据输出        
unsigned int ADc0832(unsigned char channel)
{
        uchar i=0;
        uchar j;
        unit dat=0;
        uchar ndat=0;
        uchar  Vot=0;

        if(channel==0)channel=2;
        if(channel==1)channel=3;
        ADDI=1;
        _nop_();
        _nop_();
        ADCS=0;//拉低CS端
        _nop_();
        _nop_();
        ADCLK=1;//拉高CLK端
        _nop_();
        _nop_();
        ADCLK=0;//拉低CLK端,形成下降沿1
        _nop_();
        _nop_();
        ADCLK=1;//拉高CLK端
        ADDI=channel&0x1;
        _nop_();
        _nop_();
        ADCLK=0;//拉低CLK端,形成下降沿2
        _nop_();
        _nop_();
        ADCLK=1;//拉高CLK端
        ADDI=(channel>>1)&0x1;
        _nop_();
        _nop_();
        ADCLK=0;//拉低CLK端,形成下降沿3
        ADDI=1;//控制命令结束
        _nop_();
        _nop_();
        dat=0;
        for(i=0;i<8;i++)
        {
                dat|=ADDO;//收数据
                ADCLK=1;
                _nop_();
                _nop_();
                ADCLK=0;//形成一次时钟脉冲
                _nop_();
                _nop_();
                dat<<=1;
                if(i==7)dat|=ADDO;
        }
        for(i=0;i<8;i++)
        {
                j=0;
                j=j|ADDO;//收数据
                ADCLK=1;
                _nop_();
                _nop_();
                ADCLK=0;//形成一次时钟脉冲
                _nop_();
                _nop_();
                j=j<<7;
                ndat=ndat|j;
                if(i<7)ndat>>=1;
        }
        ADCS=1;//拉低CS端
        ADCLK=0;//拉低CLK端
        ADDO=1;//拉高数据端,回到初始状态
        dat<<=8;
        dat|=ndat;

        return(dat);            //return ad data
}



E792D0DB0F541CDFB405D132F4216D91.jpg (96.38 KB, 下载次数: 67)

E792D0DB0F541CDFB405D132F4216D91.jpg

`(WGBMQNGVAGSRAOQ(D]AW4.png (44.36 KB, 下载次数: 102)

`(WGBMQNGVAGSRAOQ(D]AW4.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:420836 发表于 2020-5-17 21:26 | 只看该作者
这表示用于显示和读取传感器的代码是正确的。 问题可能是传感器的配置不正确,或者从传感器读取的数据未正确解码。
回复

使用道具 举报

板凳
ID:342451 发表于 2020-5-18 00:25 | 只看该作者
说明你硬件电路有问题,检查接线
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表