关于ADC0831仿真的问题

2019-07-18 10:28发布

1.png 想显示ADC0831转换后的数值,但是一直都不对,请帮我找一下原因。下面是我的程序:

#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int

sbit AD_CLK=P1^7;
sbit AD_CS=P3^7;
sbit AD_DO=P1^1;

sbit W1=P0^0;
sbit W2=P0^1;
sbit W3=P0^2;
sbit W4=P0^3;

uchar table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,
};                        //共阴极数码管8段码

uchar vol0=0;

void LED(uchar shu,uchar wei)  //位选某个数码管显示数
{
        switch(wei)//位选
        {
                case 1:{W1=0;W2=1;W3=1;W4=1;} break;
                case 2:{W1=1;W2=0;W3=1;W4=1;} break;
                case 3:{W1=1;W2=1;W3=0;W4=1;} break;
                case 4:{W1=1;W2=1;W3=1;W4=0;} break;
        }
        _nop_();
        P2=table[shu];//段选
        _nop_();
}

void LED_show()//调节显示
{
                LED((uchar)((int)vol0/100) ,2);
                _nop_();
                LED((uchar)((int)vol0%100/10),3);
                _nop_();
                LED((uchar)((int)vol0%10),4);
                _nop_();       
}

void ADC()
{
        uchar i;
        AD_CS=1;
        AD_CLK=0;
        AD_CS=0;       
        _nop_();
        _nop_();
        AD_CLK=1;
        _nop_();
        _nop_();
        AD_CLK=0;
        _nop_();
        _nop_();
        AD_CLK=1;
        _nop_();
        _nop_();
        AD_CLK=0;
        _nop_();
        for(i=0;i<8;i++)
        {
                if(AD_DO)
                        vol0=vol0|0x01;
                vol0=vol0<<1;
                AD_CLK=1;
                _nop_();
                _nop_();
                AD_CLK=0;
                _nop_();
                _nop_();
        }
        AD_CS=1;         //释放总线       
}

void main()
{
        uchar i;       
        while(1)
        {
                i++;
                LED_show();
                if(i==255)
                {
                        ADC();
                        i=0;
                }
                LED_show();
        }
}

http://bbs.elecfans.com/forum.php?mod=attachment&aid=MTUzNjcxfDc1ZDU5ZmU0NGIyZDM3YTE2MjBlNjU5NzliMDNiZWRkfDE1NTczNjIwNTc%3D&request=yes&_f=.rar




ADC0831.rar 下载积分: 积分 -1 分
47.44 KB, 下载次数: 10, 下载积分: 积分 -1 分
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
游内海
1楼-- · 2019-07-18 15:31
自己顶一下,在线等.........
dmdz2015
2楼-- · 2019-07-18 17:02
 精彩回答 2  元偷偷看……

一周热门 更多>