|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??( D. N% w: ~# _, C+ ~
DONE:
/ y2 d1 @' a& g0 w# C. Z( a //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射
/ Y" h( q! n S0 j1 L6 F2 T0 h MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
6 R! @: l8 B9 M/ k- @ SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? / R/ \/ a1 I$ N- e# l1 H+ [
8 l* i1 t$ f3 T+ B* l% W0 ?" S; b5 D+ \, r4 |* W5 K+ E! V
5 e5 K" y/ Z) O" i5 R MOV32 regVal, 0x0B" X/ M. ?5 w; s E" m* w* T
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?5 ~; s- i F; d0 ]$ v
) H8 X! j. y s; g+ k1 K// Clear the status of the interrupt
; p* A4 {" h! p2 d5 g! q& r8 A% |1 m LDI regVal.w2, 0x00000 |/ l ]0 `: W5 @) i4 [: H
LDI regVal.w0, SYS_EVT8 I% a5 F# b5 B: O4 D8 f0 r' R! O
SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断
/ a4 Z: j) Q9 j8 |" {
3 z! W; L! S3 Y7 i! A. Q! aCALL DELAY_500MS / d' f m3 |7 m1 Q6 b
JMP DONE( f0 T* P6 T' b+ U
' t: i! z' k! [ HALT
9 k1 G2 l, q/ F: }# A c
s5 [3 n+ `. d5 p下面的图是改的0xC0000004地址数据状况?
% J, P" g( J6 ], H# y" {1 p r4 W4 K% p i! Z- n
6 z# F7 z* v H8 ~
0 l! j( A4 e' |: ^
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|