新7天 发表于 2022-5-11 17:26:27

STC8H3K64,ADC问题

STC8H3K64,
代码更新后 突然ADC的低8位都是0了,之前返回结果正常。 ADC部分的代码没有改过,改了其他不少代码,突然ADC返回结果值总是偏小,发现低8位一直都是0,一直没找到哪里原因

初始化ADC只在启动时运行一次
void InitADC() //电压
{
        ADCCFG = 0x28;//高二位 放ADC_RES
        ADCTIM = 0x3F;
       
       
        ADC_RES=0;
        ADC_RESL=0;

        ADC_CONTR = 0;
       
}


Int GetADCResult(BYTE ch) //通道号,234567
{
        Int Value;
       
        ADC_CONTR = ADC_POWER | ch | ADC_START; //使能和启动转换
               
       
        _nop_();
        _nop_();
        _nop_();


        while(!(ADC_CONTR & ADC_FLAG)); //等待
       
        ADC_CONTR &= ~ADC_FLAG;    //清标记
               
       
        ADC_CONTR &= ~ADC_POWER;                ////关ADC电源 =0x7F;
       
       
        ARESL1 = ADC_RESL;
       
        Value = ADC_RES;
        Value <<= 8;
        Value += ARESL1;
       
       
        return Value;
       
}

国学芯用 发表于 2022-5-11 17:30:36

技术咨询/采购/询价/免费样品,具体您打 直销电话/销售电话/送样电话/咨询/技术电话: 0513-55012928   <9:00-12:00,13:00-17:30,工作日的 周一到周五>,会安排专人支持你

小李非刀 发表于 2022-5-11 17:49:13

可以向STC技术支持索要测试程序,或者从STC官网下载测试程序。

国学芯用 发表于 2022-5-12 09:58:27

小李非刀 发表于 2022-5-11 17:49
可以向STC技术支持索要测试程序,或者从STC官网下载测试程序。
(引用自3楼)

STC8H系列-ADC相关程序
页: [1]
查看完整版本: STC8H3K64,ADC问题