|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??; \& L0 u& Y8 \/ _; z
DONE:
s2 q' }2 U- N( p u0 J: v //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射
# G, S4 ^# U( k2 A# K2 [ MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
: g s1 W; H6 l" b! Y SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? # G: t5 m; q& ]* n6 A! G w
$ T% H+ C; |! t) g
4 ?2 w5 e, A: p( d6 D* }4 j6 O$ J3 g" j! X
MOV32 regVal, 0x0B" u. V5 \: ^. [$ o% R: R9 g$ X& r
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
, S- h9 g& N- l& f0 ]0 i( H* d: y! V0 k" X5 _' ~ R3 t
// Clear the status of the interrupt1 v/ j( ~7 J' L5 L, _ C
LDI regVal.w2, 0x0000" \) A4 G+ \# u/ j
LDI regVal.w0, SYS_EVT
2 h, `# L% B7 J. J$ S9 b( \ SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断/ _/ a7 b$ m1 J
# W6 N' n d/ G- G! L5 W
CALL DELAY_500MS
; ]! A* ?3 P' V2 a) N' B JMP DONE: X8 q* T8 a( \1 C
1 O! R$ E) E$ `5 V; {; _2 r
HALT
# D2 j* D( z/ R) {
0 N6 q2 r/ A+ j- \& R下面的图是改的0xC0000004地址数据状况?
) C- I+ M# A$ u7 n( z6 r, n: g5 V7 ?, Y4 ^ r4 K+ Q. z
x; {$ z+ g+ D, b# Z; c1 M, i' r
5 w9 }" z/ [% j. c
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|