胡靖 发表于 2025-2-20 09:14:34

AD 采样理解 adc_pre[j]=read_adc(0xce)??

uint16_t read_adc(uint16_t adccon)
{
        uint8_t adc;
       
        ADC_CONTR |= adccon;                      //启动AD转换
        _nop_();
        _nop_();
        while (!(ADC_CONTR & 0x20));            //查询ADC完成标志
        ADC_CONTR &= ~0x20;                     //清完成标志
       
        u16_adcnum=ADC_RES<<4;
       
        adc=ADC_RESL>>4;
       
        u16_adcnum=u16_adcnum|adc;
        return u16_adcnum;
}

void avarge()//DC功率求平均值
{
       
                        adc_pre=read_adc(0xce);//读取直流功率
}

_奶咖君_ 发表于 2025-2-20 10:58:49

<p><img src="data/attachment/forum/202502/20/105833o92jz3upzpug922k.png" alt="image.png" title="image.png" /></p>

胡靖 发表于 2025-2-21 11:00:32

u16_adcnum=ADC_RES<<4;
      
      adc=ADC_RESL>>4;
      
      u16_adcnum=u16_adcnum|adc;
      return u16_adcnum;   你好这句话怎么理解

_奶咖君_ 发表于 2025-2-21 14:11:34

<p><img src="data/attachment/forum/202502/21/141131po1ec8dd1odddxc1.png" alt="image.png" title="image.png" /></p>

_奶咖君_ 发表于 2025-2-21 14:12:14

<p>看看手册吧<img alt="cahan" class="emoji" src="https://www.stcaimcu.com/static/image/smiley/default/cahan.gif" title="cahan" /></p>
页: [1]
查看完整版本: AD 采样理解 adc_pre[j]=read_adc(0xce)??