平头哥RVB2601测评:ADC轮询单通道与DMA多通道采集

本文详细介绍了平头哥RVB2601芯片在ADC使用上的实践,包括忽视内部API,初始化配置,通道设置,采样频率调整,回调函数的应用。重点探讨了单通道查询方式与DMA多通道采样的实现,通过示例代码展示了如何利用DMA进行多通道采样,以实现高效的数据获取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作者:溪悦哦

由于ADC没有文档介绍也没有历程所以就只能靠着他所给的API来用,对照着PWM一步一步的来,最后还是调通了。也总结了不少技巧,比如他所提供的API前面有static的就是他文件内部是函数,给自己调用的,到最后就剩下了几个。比如初始化的,adc通道配置的,adc开始停止的,adc模式的函数,还有给DMA用的缓冲区还有他相应的配置函数等等。

1.内部盗用的API,可以不用管他,刚开始还研究了好久。

 static void wj_adc_channel_conv_end_irq(csi_adc_t *adc)
 static void wj_adc_irqhandler(void *args)
 static csi_error_t wj_adc_start_intr(csi_adc_t *adc)
 static csi_error_t wj_adc_start_dma(csi_adc_t *adc)
 static csi_error_t wj_adc_stop_intr(csi_adc_t *adc)
 static csi_error_t wj_adc_stop_dma(csi_adc_t *adc)
 static int adc_channel_delete(uint8_t *channels, uint8_t nums, uint8_t channel)

2.ADC初始化,开始停止,通道配置,采样频率、时间,回调函数,ADC读取值等等

 csi_error_t csi_adc_init(csi_adc_t *adc, uint32_t idx)
 void csi_adc_uninit(csi_adc_t *adc)
 csi_error_t csi_adc_start(csi_a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值