ad0832.txt

来自「模数转换程序」· 文本 代码 · 共 62 行

TXT
62
字号




#include<reg52.h>
#include<adc0832.h>

/*================================
==================================
==========此程序UVR原创===========
==========在此借用下==============
================================*/


unsigned char readadc(void)
{
    unsigned char dat,i;
    CLK=0;         //芯片复位
    CS=1;
    _nop_();
    CS=0;
    _nop_();
    
    DI=1;         //启动位
    CLK=1;
    _nop_();
    CLK=0;
    
    DI=1;         //配置位1
    CLK=1;
    _nop_();
    CLK=0;
    
    DI=0;         //配置位2
    CLK=1;
    _nop_();
    
    CLK=0;         //空闲位
    _nop_();
    CLK=1;

    
    for(i=0;i<=8;i++){             //读出8字节数据
        dat=dat<<1;
        _nop_();
        CLK=0;
        if(D0){
            dat|=0x01;
        }
        _nop_();
        CLK=1;
    }
        
    CS=1;        //关闭芯片
    return(dat);          //返回数据
}

/* 检查DI DO是否搞反了!
    DI  需要连续发送四次数据 才能启动0832  再开始读数据

DI=1101    DI=1001   DI=1011  DI=1111 */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?