我想用6678片上自带的串口对core3产生串口中断,但是看.docVIP

  • 16
  • 0
  • 约1.82千字
  • 约 2页
  • 2017-05-14 发布于天津
  • 举报

我想用6678片上自带的串口对core3产生串口中断,但是看.doc

我想用6678片上自带的串口对core3产生串口中断,但是看.doc

我想用6678片上自带的串口对core3产生串口中断,但是看芯片手册,串口中断事件属于CIC0和CIC1的Event Input(如下图1所示),这样就不能直接通过INTC来映射。看了CIC和INTC的芯片资料后,我是这么理解的: 串口中断属于外设产生的中断,外设产生的中断需要通过CIC模块映射到channel map,而channel map与host interrupt map一一对应,而host interrupt可以映射到INTC模块128个system event的某些事件上,比如事件21~31(如图2所示),62~63(如图3所示),92~95(如图4所示),102~109(如图5所示),比如UTXEVT事件号是150,我要把它映射到core3的int6,那么我只能选择图3所示的事件63,CIC0_OUT(3+8*n)=CIC0_OUT(27),其中n为3,对应core3,也就是说host interrupt的号为27,剩下的问题就是要在CIC中把事件150与host interrupt 27联系起来,下面是我写的代码: //首先是CIC0相关寄存器的宏定义 #define DEVICE_CIC0_BASE 0#define CIC0_REG_GBLENHINT 0x010 #define CIC0_REG_STATSETINDEX 0x020 #

文档评论(0)

1亿VIP精品文档

相关文档