|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??, b& C- J# i6 Q7 y+ U& {
DONE:9 ~" `4 ~/ i4 Q$ k+ k
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射9 O6 [) J: Y0 C' n
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
! r6 v- n9 Z) h5 U. V# h5 p SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? 9 B% r+ r) l2 ^- p1 J
9 b8 w$ Y* K A7 B e
! z. r8 S# m7 b0 U7 ?/ y- m' M
% w5 V8 B* @7 B8 d0 r MOV32 regVal, 0x0B
, x z# l" p/ q% Y3 M" \ SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
1 b0 b. _; Y6 M j
2 q" f" k) y' F8 C// Clear the status of the interrupt1 T& B7 g3 N2 W" g3 x& h7 @! T
LDI regVal.w2, 0x0000
) z* r2 V% f9 X+ J ? LDI regVal.w0, SYS_EVT
3 ^9 i* U8 ~7 n: l SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断7 k4 E$ b- k; p8 |% Y' K
- l3 o! E' z, ~7 ~2 I6 k' uCALL DELAY_500MS & M! J( y! E' N4 _7 N( ^! r0 ^& n3 O
JMP DONE) r0 y1 Z& o/ u$ Z$ ^( y% a |
+ J) c/ {' ?5 U1 @+ Y; `
HALT0 f' n: {) W# o) V2 H: I
8 W& |; D0 H. R8 u# j
下面的图是改的0xC0000004地址数据状况?
7 m1 U0 u3 x9 S" M4 ]
9 M& Z1 W) ~5 {4 |
3 [* b' _# m+ e) x4 ^: d8 \& y' N6 M; X# b
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|