|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??
1 a) T# V# R g2 Y4 a. g$ rDONE:5 C$ T4 p. J" Q/ d( E
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射8 ?4 ?$ C w/ V9 x4 `; \; e1 g g
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件# \3 {( p& `1 g" j, z c1 g) I. }4 P. g3 ^
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? ! c; U0 c9 J4 o: N3 Q- N' G! L
) n6 N* T7 j5 H* N
; r; ^6 z4 h) e0 u
- J) d C ]/ s3 \5 h MOV32 regVal, 0x0B. ~6 D' c% T9 L7 d
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?; v3 t$ X) ^, _, H3 v: k2 m2 d
: _5 H* \1 w. g8 Q8 _1 \0 @
// Clear the status of the interrupt b/ ?+ ]( N" ?1 U) ~4 b1 }: o
LDI regVal.w2, 0x0000
, J+ w, G* x5 C7 R" P3 r$ Q/ U LDI regVal.w0, SYS_EVT6 W7 d8 J2 ^( c# [( a4 h0 F+ r7 k
SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断+ a N2 K6 c$ b3 M
! ~0 f1 O# w; |. A9 ?
CALL DELAY_500MS
8 D) m# H! o! w JMP DONE
% K3 _. G2 m. V% ^" t( B: r; ^; Q" @ a6 D$ k
HALT
/ B& r, x$ d4 P, A8 x5 x+ j* N- ?7 T- k$ w- @% g/ g5 `
下面的图是改的0xC0000004地址数据状况?
( H. o/ n. h) d' }9 `/ h
/ W) b5 E9 x! [- r! O
. |) [& t% |* d8 e, @8 Q! @* P: p1 d- Q
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|