|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??
4 ~5 N7 g m$ |0 W& sDONE:
^5 U* ]& n3 c$ e& q3 Y) p% E //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射* u( c( @! E8 U3 B' N: w2 `
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件5 ?1 p3 C1 K1 B3 i4 c
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? / ^) B3 V# P( Q5 r+ p
- U* X: k$ [8 x' Q
8 D3 e( @/ U8 _: V4 r
. [) B2 e# s& N8 Q MOV32 regVal, 0x0B
% [- G1 O5 A' d+ t) Z3 h SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
* m% g) a: E ~- z9 P- n8 G- y( m" r" R# z! K$ d! w* K
// Clear the status of the interrupt9 }; E8 |) w$ ^/ `3 r0 q& s
LDI regVal.w2, 0x00001 W& H1 m9 W" F+ m$ z5 X6 S2 x
LDI regVal.w0, SYS_EVT# d) q2 o$ ]3 C, F5 u$ ?
SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断% [7 u: X1 d( g6 A
$ D2 P7 A, |; E- vCALL DELAY_500MS
! a& R9 e2 r9 p6 q% I2 t5 [( [ JMP DONE5 \" R* r4 a9 f* y( x
8 r4 V" B- r- j' k) b HALT
2 L2 y [' S" g! g1 f, O3 E
1 B) l/ p% `) e0 c6 y: D% B下面的图是改的0xC0000004地址数据状况?3 A% g- [6 h0 w2 P& g
9 m2 j) L" S, l0 K
4 K) s+ {9 t# f4 p" m7 _ I4 k5 L
% {& y" A9 I$ L. r9 x
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|