|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??
+ b7 I( b' K: tDONE:
2 P: W/ I9 o$ r! k P. T //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射6 ?# l% D7 _0 g. E* A
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件! A D4 y, X3 }/ z4 C: K: _
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? 8 B# W$ T/ {- r3 R
$ a4 A* t* n Z* ^* C7 ~: U2 ]+ l; Y2 b0 b! v h" C2 B3 ?! q4 g
b R N5 n7 O( V' w. |( ]
MOV32 regVal, 0x0B
6 p1 E2 P5 M7 G A/ R, }' n t SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?: i7 q- w3 p" g
3 P4 v, W# L0 L9 p. @+ L/ S7 C
// Clear the status of the interrupt; M7 u* U8 r7 v# l# ]" U
LDI regVal.w2, 0x0000
2 F; U6 J, i7 U LDI regVal.w0, SYS_EVT
, v) X! y0 l' n4 m8 \ SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断
2 r; n% e8 G' `
q; g- J) n) d# w$ vCALL DELAY_500MS $ @; y1 B0 n( G
JMP DONE
+ Q% L. i) J! y) N6 ]* L4 \+ M3 a( d8 I) R+ y- L
HALT/ `( G2 _: M. K, R/ }, i
w* c' ?* p, F- w7 p下面的图是改的0xC0000004地址数据状况?, j6 e5 K% |/ T9 `* |
# ~; Y0 e7 _* y0 G
3 _: {2 U) M# p) G! Q2 t3 p/ _0 X- R, _6 L: o# D! n
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|