|
|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??) \3 Q% Y T2 u0 m
DONE:6 z& ~ [! @0 C0 L: B( ?3 d
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射
; K y8 p; @9 h2 L; S' ^ MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件% k' q6 M) N( k F _. g4 o# g
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? 6 |8 h* v) M- u6 `" ]; J& D/ z
/ [* i7 }3 H' ^# f6 t! C8 Q
- K6 R1 E4 C( ^* h7 Z% O3 \( P2 F) ^' [! q
MOV32 regVal, 0x0B& ? J- q$ l, |: d6 D* C4 n
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
) H+ ]# t3 q, B8 C* d3 G2 q$ p- R8 v
+ T; }6 b( @3 K// Clear the status of the interrupt
# C8 e T5 u; M) C LDI regVal.w2, 0x0000
8 h7 `# N3 ^( Y4 r- e# H LDI regVal.w0, SYS_EVT2 b+ J$ `# J$ z/ K9 N9 x( ^8 H) l' x
SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断* \* M& D+ h- [$ a' n
$ k( j$ U2 G1 C% R% d0 n
CALL DELAY_500MS 5 D* O' U1 l" w0 n8 `
JMP DONE
& F/ @$ u$ G- c m) }5 a- X+ n3 t" g3 {% E9 ~
HALT! H9 C: f# C( a# i/ L8 W
4 U% _$ R! T4 o3 d4 p下面的图是改的0xC0000004地址数据状况?/ h; \2 p9 |6 o
3 \+ w7 W, W& e% i) E
9 {: e* b/ T7 j, }
/ W6 }# Q! X1 k |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|