|
|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??' e8 R5 X+ ]& v z+ W
DONE:
. S# s+ N) |* R# K- y" K' ? //Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射
& N$ `8 J) x5 A5 U0 |4 z# w7 k/ P MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
1 ]( l+ J& B8 Z( g SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢?
! K) M+ B4 E" N) Y% C1 D. b8 f9 z, e! d/ l
5 I# t4 f" X2 w* ~* ? Y, O. m+ q/ r7 ]3 T; o$ b6 H0 ~8 {% P1 Q
MOV32 regVal, 0x0B9 S3 Y) @5 h3 s3 K D
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
2 c3 D1 U; ?3 E; G& D- k/ m5 F' Q$ x7 K# Q2 X/ c) ]) ]2 ~
// Clear the status of the interrupt
@" S% y p8 Y$ a. [ LDI regVal.w2, 0x0000
' ^0 V2 M* T. O LDI regVal.w0, SYS_EVT
( Z1 h5 c0 D) \; W$ `( ?$ _ SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断; A3 K5 ^' K% i
! T( D7 l9 k1 r9 t: D0 H/ hCALL DELAY_500MS
" s B) l+ n ]8 N JMP DONE
7 e0 E! l1 I& O" k% X7 b% b, p( d" \, G! S
HALT
& c+ \. ^7 ~, O7 A: p5 \* T; U- k) K1 C- M: Y8 p% F) m
下面的图是改的0xC0000004地址数据状况?
) d) ]% a7 c5 f! F4 T
+ n( T! Y% Z+ M! W! F# k g4 I4 {/ b! F0 d
# b- B9 J, ^7 A+ A |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|