|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??
! F' U A1 G* W% w1 jDONE:8 m( [' g! P+ Z' P* s
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射
. _% V. Q, N6 e0 C. `4 ^3 f" B% G MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件
" Y- W3 W9 @ J SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? : d- [6 F" k- ~5 w& ]& o! e9 }3 N$ ~
6 P( \ Q1 {, `6 G* G. ~ h5 g! E
, {! ^. m9 y: H
1 A# E8 q) x7 l: ~0 D5 M MOV32 regVal, 0x0B/ f" `, G4 C4 U: C6 X
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
u t& Y" C8 c0 C1 u
0 \. h% I4 d8 z' g// Clear the status of the interrupt
; H! R2 p8 }6 _# n LDI regVal.w2, 0x0000
$ ~$ E- ?' h8 s LDI regVal.w0, SYS_EVT. @$ y$ P5 a7 q% ^
SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断
3 q; _5 a+ f/ X3 C D" K
* D0 p; E* p8 Z7 ^4 yCALL DELAY_500MS ( {# ^" a+ @& W. l" y; B( {/ E: S5 W
JMP DONE
, A: [' [3 T! r! }. x( p, `" J, g2 e9 t
HALT
1 I4 d! L6 |+ c) }+ t& l
6 k. @ y# s" M) |4 R2 K下面的图是改的0xC0000004地址数据状况?6 p r$ L# s" D2 ^* l( M
* D1 C' q, o, u( _8 a' r
, |; I) ]- ?( Y( n1 ]: h, c* \ S/ H
: Y& E* A% N5 T/ E+ ^* F: W) N
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|