完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
ti专家、各位朋友:
最近遇到一个问题,在EDMA3中断服务程序中判断是MCASP receive 还是MCASP transmit完成传输触发了中断,用仿真器单步调试时,发现IPR的值是正确的。 我先先清掉IPR的标志位,然后再去执行中断服务程序。但我往ICR相应的寄存器写1想清除IPR中的相应位时,我发现没起作用。 #define EDMA3_SR1CR_IPR *(volatile uint32_t *)(0x01C02268) #define EDMA3_SR1CR_ICR *(volatile uint32_t *)(0x01C02270) 我使用的是EDMA3_0 Channel Controller 0 ,因此我配置的是Shadow Region 1 Channel Registers中的寄存器。 无论我使用EDMA3_SR1CR_ICR=0x0000 0001或者EDMA3_SR1CR_ICR=0x0000 0002(以及EDMA3_SR1CR_ICR|=0x0000 0001或者EDMA3_SR1CR_ICR|=0x0000 0002),都无法清除EDMA3_SR1CR_IPR中的标志位。 上图是对ICR寄存器的使用说明,在手册sprugp9b.pdf P115页。 |
|
相关推荐
2个回答
|
|
确定一下DRAE1里是否使能了这个channel.
http://processors.wiki.ti.com/index.php/Main_Page Think Over Before Asking. http://www.catb.org/~esr/faqs/smart-questions.html#goal |
|
|
|
lifei639156 发表于 2018-6-21 10:54 确认。 通过仿真器调试时,我在中断中设置断点观察的IPR寄存器的值,执行单步后发现对ICR中的相应位写1,IPR的值没改变,。后来思考了一下,应该是清除了IPR中的标志位,这时CPU停止在断点处,但EDMA还是在运行,只是后来EDMA搬运结束后又重新把IPR中的相应位置位。从侧面也能证明是这样的,手册上说必须清除IPR中所有标志位,后续的EDMA中断才能够执行,而我的代码一直是可以持续进入中断的。 |
|
|
|
只有小组成员才能发言,加入小组>>
326 浏览 1 评论
524 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
767 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
645 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1120 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
17浏览 28评论
51浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
242浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
192浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
52浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 14:19 , Processed in 0.996099 second(s), Total 81, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号