TI中文支持网
TI专业的中文技术问题搜集分享网站

PRU给ARM的中断

在OMAP138开发中,用PRU控制SPI发送DSP处理好的数据,同时,PRU接收SPI数据后触发ARM中断;ARM处理完后,通知PRU控制SPI把数据发出。现在,碰到一个问题:在CCS5下仿真,通过ARM加载DSP和PRU程序,三个核各自运行程序,可以实现DSP的数据通过PRU自动上报,PRU接收的数据可以中断ARM,处理后,ARM触发PRU发送出去;但是,把DSP/ARM程序下载到NOR FLASH片内,由FLASH启动运行,DSP的数据可通过PRU自动上报,PRU接收到数据并通过GPO输出通知ARM,但是ARM不响应GPIO中断???

试了2种方法:1.通过PRU 中断控制器,即SYS34->channel2->host2中断ARM(写R31寄存器);2.通过GPO(写R30寄存器)输出,由外部FPGA环回到GPIO7[15],ARM置GPIObank7中断。

目前,可以确定的是,PRU接收了数据,并触发了中断(给ARM),但ARM没响应。不知道为什么,在CCS仿真可以?

请诸位大侠帮忙分析分析,谢谢

jing li1:

补充说明:

OMAP138的BANK7中断只给PRU使用;

CPU速率200MHz,SPI速率2MHz;

jing li1:

可以确定的是ARM中断不响应。

奇怪的是,在CCS5下,ARM中断正常,下载到芯片就不行?是否与gel有关?

哪位大侠能给个成功的ARM中断例程,谢谢。

jing li1:

回复 jing li1:

中断用的是StarterWare 01_10_04例程。

jing li1:

哎,怎么没人理呢?

感觉跟137 timer问题的那哥们有点类似,都是从NOR FLASH启动,二次搬移,仿真没问题,从NOR FLASH启动中断不响应。

本人也试过TIMER0中断,仿真正常,从NOR FLASH启动后,影响主程序while循环。

jing li1:

自己做的板子,legacy NOR boo,UBL小于16kB,UBL中pll0/pll1/ddr与gel设置一样,ckockout输出测试一样。实在不明白为什么在仿真下可以中断,下载到ARM后无法进中断???

Jack Wu3:

可以去找广州创龙的OMAPL138 PRU例程看看,他们的板子资料很丰富,有视频教程。

jing li1:

回复 Jack Wu3:

现在不是PRU的问题,而是Arm中断问题:仿真正常,下载到片内norflash启动,中断不响应

Tony Tang:

回复 jing li1:

是不是GPIO模块没有使能?

你可以在板子boot后,不加gel文件连上仿真器查看寄存器看问题出在哪?

Tony Tang:

回复 jing li1:

jing li1legacy NOR boo

好奇问一下为什么用legacy boot? 虽然与这个问题无关。

jing li1:

回复 Tony Tang:

GPIObank已经使能,上、下沿触发都试过,就是不行。
您说的不加gel看寄存器,主要看哪些寄存器?gpio、中断,还有哪些?

赞(0)
未经允许不得转载:TI中文支持网 » PRU给ARM的中断
分享到: 更多 (0)