|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??, `$ t# \; o' o. d/ S
DONE:
2 N: a) K) z, [7 ?0 A+ F' v9 u //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射- m/ H2 N; Q7 u
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
2 j# `! _0 \2 R9 f8 l! f1 W SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? . j4 O2 j+ w; g; W
" J3 L( O0 }" N3 O* h# j" |
( j; k4 ~8 b% h/ P. M4 z6 t
- J. @9 X0 B, d+ I MOV32 regVal, 0x0B& N# ?% M6 B& G
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?" m) I0 B1 V4 H1 H8 L, v
% x- t8 }4 z Z6 J; n/ S+ p4 G// Clear the status of the interrupt* j V& C0 Q! j* ?& l5 C
LDI regVal.w2, 0x0000
& s0 Y, s" s, j3 u8 U LDI regVal.w0, SYS_EVT+ F$ v4 D/ T% o5 ]5 X3 W4 H
SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断1 t% |# M! q3 j
: O* l% f% U/ Y! o' t! O+ h
CALL DELAY_500MS
4 H6 c# l. w1 _2 d$ z, Y4 M JMP DONE
- X# R, R, f! m; c, A) U8 Z
4 M [# I2 {0 z# V5 C# g6 A HALT) P- E+ P7 `/ H; E
$ R1 q E( j" B! H& q( ^2 C
下面的图是改的0xC0000004地址数据状况?( u. `% D7 z, s3 R5 E9 M
" a3 u1 H8 [9 i
$ [4 [7 |* k3 @( D( z
1 e" h" g- J/ r$ ?1 {; ^ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|