完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在VDSP++的环境下程序已经实现,但是到了CCES下,把中断初始化函数修改了,还是无法正确配置中断,直接返回IIR的中断初始化失败,请问CCES下怎么使用IIR加速器?
代码如下: /* This code has the TCBS, initialization routines, and the DMA completion ISR for the IIR accelerator */ #include |
|
相关推荐
1 条评论
12个回答
|
|
您好,您的问题已经提交给ADI相关专家,将邀请专家尽快回答您的问题。谢谢!
|
|
|
|
你好!
在你的代码里面,你通过 adi_int_InstallHandler(ADI_CID_P0I,(ADI_INT_HANDLER_PTR)ACC_ISR, _NULL ,true); 把Programmable Interrupt 0 和中断处理函数关联起来了,但是你还需要通过PICRx这个寄存器把Accelerator DMA 的中端映射到Programmable Interrupt 0 |
|
|
|
谢谢你的答复,代码里面第64行到68行不是在对PICR0进行设置了吗? //Mapping the IIR DMA interrupt temp=*pPICR0; temp&=~(P0I0|P0I1|P0I2|P0I3|P0I4); temp|=P0I0|P0I1|P0I3|P0I4; *pPICR0=temp; 这里应该是吧IIR DMA Interrupt映射到Programmable Interrupt 0上吧? |
|
|
|
lulijian 发表于 2018-12-6 13:42 你好! 你需要debug一下,看看PICR0 的最低5位是不是0x1B,如果是的,哪可能是系统其他的问题让IIR没有正常工作,所以没有中断产生 |
|
|
|
确实改过来了,但是我按一步一步执行代码,看中断初始化函数返回的状态量,返回了初始化失败的值 |
|
|
|
你好! 你说的“中断初始化函数返回的状态量”是指那个函数调用? |
|
|
|
在CCES里面有个adi_int.c的源文件,调用adi_int_InstallHandler的时候,进入这个函数,函数原型如下: ADI_INT_STATUS adi_int_InstallHandler (uint32_t iid, ADI_INT_HANDLER_PTR pfHandler, void* pCBParam, bool bEnable) { ADI_INT_STATUS eStatus; if (ADI_OSAL_SUCCESS == adi_osal_InstallHandler(iid, pfHandler, pCBParam)) { if(bEnable) { adi_osal_ActivateHandler(iid); } eStatus = ADI_INT_SUCCESS; } else { eStatus = ADI_INT_FAILURE; } return eStatus; } eStatus返回的值为ADI_INT_FAILURE,初始化失败,寄存器PICR_0返回的值为PICR_0: 00001010 01000001 10001000 00111011,至此无法初始化中断,进入不了中断函数void ACC_ISR(); |
|
|
|
lulijian 发表于 2018-12-6 14:20 你好! 从你的代码上面看起来是没有什么问题的,或者你把这个简单的工程作为附件发给我,我仔细帮你检查一下 |
|
|
|
|
|
|
|
你好! 在你的代码中,我看到 adi_int_InstallHandler(ADI_CID_P0I,(ADI_INT_HANDLER_PTR)ACC_ISR, _NULL ,false); 最后一个参数如果是flase,表示disable interrupt。应该改为true。 但是我发现你在论坛描述这个问题的时候,引用的代码是 adi_int_InstallHandler(ADI_CID_P0I,(ADI_INT_HANDLER_PTR)ACC_ISR, _NULL ,true); |
|
|
|
|
|
|
|
你好! 你的工程里面的IIR的配置是没有问题的。我把你的代码改称 void main() { adi_initComponents(); initPLL_SDRAM(); //Initialize the PLL and SDRAM controller Init_IIR(); while(1) ; } 是可以进IIR中断的。 我的建议是你把你系统的每个模块都单独测试一下,理清你的系统的数据流,然后再逐步把每个模块加进去。 |
|
|
|
只有小组成员才能发言,加入小组>>
2261个成员聚集在这个小组
加入小组给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1270 浏览 2 评论
ADP5092 SYS端口为2.09V,但是REG_OUT为0是什么原因?
1874 浏览 1 评论
ad7193差分输入ain1与ain2差是正值时,读到电压与实际值误差小,但为负值值,误差就变的很大
4220 浏览 2 评论
8969 浏览 1 评论
3122 浏览 1 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
1384浏览 3评论
AD7190状态寄存器一直是0x80,连续转换模式下RDY不拉低
1628浏览 2评论
1584浏览 2评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1270浏览 2评论
1370浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 13:02 , Processed in 0.876250 second(s), Total 71, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号