|
|
请教下 创龙 PRUtoDSP_Interrupt工程当中,PRU代码部分的作用??6 J+ x9 G( i* R3 t0 W" d
DONE:1 _$ X- \8 P) q* r0 i9 R
//Generate SYS_EVT32 by event out mapping 通过事件输出生成SYS_EVT32映射) ?# F6 d, g! ^# L
MOV32 r31, SYS_EVT // 这里写R31寄存器(R31=32),将产生中断输出事件到中断控制器的32号系统事件: U1 Q1 z) _7 z+ @4 n* v. {
SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = regVal // regVal r17 = 32 为什么要有这一步呢? # @2 Z: p4 \ u: U$ `$ `
! Y8 Z% o8 _' `
9 I& I3 t( L, n* C. M8 g) |
% F$ I; g# m) S9 V2 F MOV32 regVal, 0x0B
" K0 }4 X1 P; [- W v% Y SBCO regVal, CONST_DDR, 0x04, 4 // *(0xC0000000 + 0x04) = 0x0B 为什么要将 0xC0000004 的复制为0x0B呢?
2 [9 K+ B3 H. a; W% e( j' r* t" O$ M% h6 _+ a
// Clear the status of the interrupt$ V( a8 `$ n3 X4 r4 F
LDI regVal.w2, 0x0000
1 M" r: F& i" N) Q' L: n4 E" j LDI regVal.w0, SYS_EVT
4 N, z* E8 J8 C% |+ X SBCO regVal, CONST_PRUSSINTC, 0x24, 4 // *(C0 + 0x24) = SYS_EVT 清除系统中断 s* e3 q2 ~$ A2 `& T o/ J
2 @) a3 M# S BCALL DELAY_500MS
# _5 j3 k* o+ B1 b W JMP DONE
4 F; L3 f' Z2 ]5 J6 l1 G. U8 `9 F1 R+ k* _7 f( P& _) k$ }
HALT
) R& W# u6 C+ j* z! w1 v7 D# K
6 O9 m' w( f" B下面的图是改的0xC0000004地址数据状况?7 @# r5 A' H8 V; U
/ r0 D: X% U# `. d! w# t+ Y3 ^1 ?8 F% |5 ]/ J
- [- O4 k$ `) @0 ^# [
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|