|
|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??. h2 |- O* Y: j) ?
DONE: g4 c+ Q: K9 \
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射& r& X. r& t0 Z& [! r, R! [$ ^$ @" L
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
5 A6 q: ^- h8 k- L- z$ \4 T- i. Q SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? ' ?! b8 N5 V+ e3 `) g
/ l9 i7 P$ N% R/ }0 L3 m* L7 b
0 ~3 A2 [, B6 U( ?! p( f0 b9 Y$ D/ _- ~
" a- c* E8 B) i/ t# K MOV32 regVal, 0x0B [/ j: R J- M. z% f, Z J
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
# j6 h3 M$ ^4 t& n: ]+ A- [3 A+ O1 Y
// Clear the status of the interrupt3 d2 V M ~( B$ o6 f
LDI regVal.w2, 0x0000
1 [3 w+ {! Z3 h b, l& G1 G LDI regVal.w0, SYS_EVT
# J4 c3 [; D B$ E4 Z1 f6 h2 S7 T SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断
) G, X; Q! i4 G1 }' _5 b& t! h# ]+ q3 Q; k6 X. r/ Q
CALL DELAY_500MS
: Z* P5 S" f) K6 e. e" [' o! [ JMP DONE. _1 P0 s8 w7 K: }4 q
) X- m' R& d3 P5 B: j5 u7 f! J HALT7 d! Y' ], y( z- O) b0 d
, e5 S6 ^- Z o下面的图是改的0xC0000004地址数据状况?
. `3 G+ b) e; |. E* r! Y% w" u: ^% f7 t/ p5 Y
$ c0 J( Q7 y! K3 Q) O. L' R' \7 P0 O6 M
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|