打印

STC12C5A60S2

[复制链接]
785|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
497205974|  楼主 | 2016-12-23 17:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
uint get_AD_result(uchar channel)
  {
    char inflag = 0x00;
    channel &= 0x07;         //0000,0111 清0高5位
    ADC_CONTR = 0x80;       //打开A/D转换器电源
    delay_ms(10);   
    P1ASF = P1ASF|channel;   //选择A/D当前通道
    ADC_CONTR |= ADC_SPEED;
    ADC_CONTR |= channel;    //选择模拟输入通道         
    ADC_RES = 0x00;                         // AD转换结果寄存器
    ADC_RESL = 0x00;                 // AD转换结果寄存器低
    AUXR1 |= 0X04;          //A/D转换结果高2位存放在ADC_RES,低8位存放在ADC_RESL
    ADC_CONTR|=0x08;        //A/D开始
    while(inflag==0x00)    //判断A/D转换是否结束
        {
           inflag=ADC_CONTR&0x10;        // 判断 ADC_FLAG 是否为 1;
    }
    ADC_CONTR=ADC_CONTR&0xE7;//清0,停止A/D转换          ADC_FLAG = 0;

   return(ADC_RES<<8|ADC_RESL);
}

这段代码它输入电压进行A/D转换它的输入是P0^0口吗?

相关帖子

沙发
497205974|  楼主 | 2016-12-23 17:21 | 只看该作者
调用的时候参数channel为0

使用特权

评论回复
板凳
xyz549040622| | 2016-12-23 19:51 | 只看该作者
对照数据手册,看看通道0对应的是哪个IO就OK了。

使用特权

评论回复
地板
ningling_21| | 2016-12-24 14:59 | 只看该作者
好像是P1口

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝