uint32_t adc_detect(uint32_t ad_channel)
{
hadc.instance->chselr = 0;
adc_channelconftypedef sconfig;
sconfig.channel = ad_channel;
sconfig.rank = adc_rank_channel_number;
sconfig.samplingtime = adc_sampletime_1cycle_5;
hal_adc_configchannel(&hadc, &sconfig);
uint32_t adc_result;
/*adc start*/
if(hal_adc_start(&hadc)!=hal_ok)
{
while(1)
{
}
}
/*wait for adc completed*/
if (hal_adc_pollforconversion(&hadc, 10) != hal_ok)
{
while(1)
{
}
}
else
{
/*get the converted value of regular channel*/
adc_result = hal_adc_getvalue(&hadc);
hal_adc_stop(&hadc);
//adc_result =((adc_result*3300)>>8);
return adc_result;
}
}
使用cube生产的adc无法配置多路采样,多路采样采集值不对,研究后发现是底层函数没有将channel清零导致的
只需要在函数中增加 hadc.instance->chselr = 0; 手动清0 寄存器即可。
上手体验昂科威四驱系统
美电磁频谱作战技术体系与应对策略研究
华为与唯云科技签署SD-WAN MSP合作协议,共同赋能数字经济创新生态
Vishay推出新款小型1500外形尺寸汽车级插件电感器
东芝刷新纪录 亏损9500亿日元
STM32F0多路ADC采样中的BUG和解决方案
华为mate9和荣耀v9评测对比:相同的配置,价格为何能高出1000元?
智能家居RFID射频电子锁电路图剖析
体感试衣镜可让未来人们的购物方式更便捷更智能
承德科胜25公斤包装机|颗粒豆包装机|河北包装机
携手Ampere,联想交付Ampere eMAG服务器平台
拟投资35亿!晶瑞股份微电子材料项目落户潜江
中国充电枪、充电插座市场发展现状
基于51单片机的数字电压表仿真设计[图]
驾驶员监控系统对自动驾驶的作用分析
当DoIP遇上TLS
这么强?明年之后80%智能机内建人工智能
USB雷达,架设你自己的导弹防御系统
为什么DSP处理器中有两个片内的SRAM
员工持股草案出炉 掌趣科技研发转型持续深化