|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??8 ~1 G0 e2 |1 j1 Y
DONE:2 ]0 E: e @1 h: y& }+ v% F. P
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射
% _8 z9 B5 q! E: c5 t. P MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
% O) K, ^" H$ S [ m$ b4 w5 l- m SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? % O4 p* C' p7 o5 K- Q; t) ~
, O, Z% x! Y. T7 t8 ~% x
+ G. A6 n4 `0 u. A& l/ v( f s B& M3 f# `7 o9 G `+ o, ^, R
MOV32 regVal, 0x0B
7 o1 g5 z6 t! y& l9 K SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
, Z$ Z$ f% ^/ z' q
e$ u) K2 n1 E$ K/ R// Clear the status of the interrupt) \( c2 P! L8 j& E: V/ H, J+ [
LDI regVal.w2, 0x00002 D) P: B* |+ x; G7 d) e
LDI regVal.w0, SYS_EVT
0 S+ V1 r4 q% A+ n% b" [ SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断# e$ i( u: ^2 w3 Q* @/ o- Z
( H" y7 |' U, D U0 O j3 |CALL DELAY_500MS & C+ N. }. j+ ^; k
JMP DONE& }4 {, @% H3 ?& J1 A& h
4 k, D0 @! L' {+ T& b7 ]! r HALT
9 C5 }# P8 ?, d( ]% ~- b* q3 H. I+ Y- h; h# ]8 `
下面的图是改的0xC0000004地址数据状况?
% z4 F) u8 q, u; Y
* E+ }0 b+ L- O4 w0 [4 O) C3 S: R w. r6 K) N
- S0 h/ z# s9 ]) S3 E. h# l
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|