|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??
5 A; ]7 N: j; P& u. X; T$ yDONE:
5 r8 F) }6 O4 Z _/ [( I //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射1 @0 k d% N: C* v5 U2 u
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
! H- a/ C+ e9 J& S, V SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? ) @9 M. m# }; v% e: \/ j
: b" l( Q( e- P# o* h! J6 E
, r9 ]% ^% I6 ` n1 ^ \: @' @5 G
MOV32 regVal, 0x0B7 O" C3 r9 K3 u* [1 i
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
) Q# E' k$ f, g# X: m! D4 O4 F; Y s) c3 m8 x
// Clear the status of the interrupt' k4 N, j8 u8 W& x: k
LDI regVal.w2, 0x00005 d f; ?3 p; ~6 z% y+ P; @
LDI regVal.w0, SYS_EVT
' a- u7 y, w! Z7 q e SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断1 G. t$ r8 s5 e6 Q M6 p" {7 P# o
. a' b6 {) N0 W, P1 i# QCALL DELAY_500MS
9 A" J0 R; }9 E$ T& E& N JMP DONE
3 w' k8 D% Y8 m0 _7 H! A; E8 C/ O2 B O
HALT+ n! D) A5 `% c5 K4 H l- ~
+ H% `( U# R( M0 M下面的图是改的0xC0000004地址数据状况?1 x* J5 y3 l9 a8 v8 G
4 v4 u9 ^ U$ X- F, H) M) d4 j8 H4 V
2 l! B' Q, Z$ |5 E3 |! b1 O# b3 P4 {+ a5 r$ Z! _2 R( `! E
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|