完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本帖最后由 gentalk 于 2016-4-10 21:12 编辑
小弟最近用F28335开发一个项目需要使用F28335的片内ADC,于是配置了一个ePWM+ADC的采集模式,也成功了,基本搞清楚了ADC各个寄存器的作用,使用ePWM给ADC提供启停信号,并设置采样率,然后利用ADC完成转换的中断去操作数据,成功地完成了一个ePWM+ADC的基本配置,代码如下:
PWM的设置开启了SOCB事件,针对级联模式的启动,代码运行没有问题,但是我对排序器清零有些疑惑,也就是AdcRegs.ADCTRL2.bit.RST_SEQ1 = 1;这个寄存器。在找了些相关资料看了后,了解了启停模式和连续运行模式在排序器指针问题上是有区别的,在连续模式下,每次转换完conv配置的所有通道后,指针会复位到初始通道,这个过程是自动的,而启停模式下,也就是在上述代码中使用的模式,转换完所有的通道后指针并不会自动复位到初始通道,需要对RST_SEQ这个寄存器置1来让指针复位,不然读取的数据就会出错。在后期我想使用ePWM+ADC+DMA纯硬件来完成整个数据的采集工作,从而不需要一直进入中断,释放CPU,因为项目中对运算有一定要求,这里我就遇到了一个很大的问题,如果使用DMA去传输数据,DMA能够自动清除一些ADC的标志寄存器,但它并不能将RST_SEQ这个寄存器置位,在启停模式下无法将排序器指针复位,导致了数据采集错误,并且我寻找了几乎所有的样例,都没有人去完整地讨论这个问题,所以来论坛看看有没有大牛,能点拨几点。谢谢。 |
|
相关推荐
2个回答
|
|
看看,楼主厉害
|
|
|
|
楼主完成了 epwm_adc_dma没,我也在做这部分工作。想请教
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
基于 DSP5509 进行数字图像处理中 Sobel 算子边缘检测的硬件连接电路图
2293 浏览 0 评论
677 浏览 0 评论
普中科技F28335开发板中,如何使用aic23播放由代码生成的正弦波
2730 浏览 0 评论
3495 浏览 1 评论
1190 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-20 18:39 , Processed in 0.500438 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号