当前位置:
文档之家› DSP5-F28335中断系统及定时器
DSP5-F28335中断系统及定时器
TINT2 TINT1 DMA
CPU定时器0 CPU定时器2 CPU定时器1
பைடு நூலகம்
GPIO MUX
注:外部中断3…7类似: 引脚对应GPIO32…63; 参见TI手册SPRUFB0D。
MUX
MUX
MUX
1
DMA
中断控制 XNMICR[15:0] XNMICTR[15:0]
XNMI_ XINT13
锁存
…
GPIOXNMISEL(4:0)
4、中断相关寄存器 a、中断标志寄存器--IFR
D15
D14
RTOSINT DLOGINT
RW-0
RW-0
D13 INT14
RW-0
D12 INT13
RW-0
……
D0 INT1
RW-0
Dx=1时,对应的中断请求信号已发生; Dx=0时,对应的中断请求信号未发生。
CPU响应中断后,对应的中断标志位自动清0。
全国教育科学“十一五”规划课题研究成果
《 DSP控制器原理与应用教程》
---基于TMS320F28335 & CCS5
主编 李全利 马骏杰 张思艳
高等教育出版社 2016.11
第五章 F28335中断系统及定时器
(一)、F28335的中断系统 (二)、F28335的CPU定时器 (三)、中断和CPU定时器应用示例
MUX INT12
(使能)
PIEIER12[INTx8:INTx1]
PIEACK
PIEACK[11]
INT1.1
PieCtrlRegs.PIEIER1.bit.INTx7=1
INT1.7 INT1.8
(标志)
PIEIFR1[INTx8:INTx1]
(使能)
PIEIER1[INTx8:INTx1]
MUX INT1
INT1.1 ……
INT1.8 ……
T
ST0
AH
AL
PH
PL
AR1
AR0
DP
ST1
DBGSTAT IER
PC(msw) PC(lsw)
3、CPU中断向量
该地址中:003F FC00H
向量表存储ISR入口地址。通常使用的是PIE向量表。
CPU中断向量映射
VMAP,ST1的bit3。复位默认值为1; M0M1MAP,ST1的bit11。复位默认值为1; ENPIE,PIECTRL的bit0。复位值默认为0,复位向 量总是取自BROM向量表(仅用到了复位向量);复位 后用户程序要完成初始化PIE向量表,并对PIE中断向 量表完成使能。
…
PIE
XINT1 XINT1CR[15:0] ADC
96个中断
DMA XINT1CTR[15:0]
XINT2
中断控制 XINT2CR[15:0]
GPIOXINT1SEL(4:0)
XINT2SOC
锁存
…
MUX
GPIO0.int
DMA XINT2CTR[15:0]
GPIOXINT2SEL(4:0)
TINT0
b、中断使能寄存器--IER
D15
D14
RTOSINT DLOGINT
RW-0
RW-0
D13 INT14
RW-0
D12 INT13
RW-0
……
D0 INT1
RW-0
Dx=1时,对应的中断使能; Dx=0时,对应的中断禁止。
操作方式: extern cregister volatiles unigned int IER;
注:此位写1清0.
PIEACK PIEACK[0]
PieCtrlRegs.PIEACK.all=0x0001
2、PIE中断向量表映射
a、定义函数型指针变量
在DSP2833x_PieVect.h文件中有定义: typedef interrupt void (*PINT)(void); PINT为指向interrupt型函数的指针
INT13
INT14
DLOGINT
RTOSINT
NMI
NMI
DMA Clear
外设(SPI,SCI,McBSP,CAN,I2C ) (ePWM,eCAP,eQEP,ADC)
WAKEINT DMA
Sync SYSCLKOUT
WDINT LPMINT
看门狗 低功耗模式
MUX
中断控制
XINT1 锁存
IFR[15:12]
(标志)
IER[15:12]
(使能)
IFR[11:0]
IER[11:0]
MUX
INTM
1 0
CPU
PIE级
外设级
INT1
(标志)
(使能)
IER |= M_INT1
EINT
来自外设或 外部中断源
组12
来自外设或 外部中断源
组1
TINT0
INT12.1
INT12.8
(标志)
PIEIFR12[INTx8:INTx1]
GPIO31.int
F28335外设中断分组:
2、中断处理及响应过程
a、产生请求:外设级的未屏蔽中断向PIE级传递
b、响应判断:PIE级进行分组,向CPU提出请求 可屏蔽中断:检查IER和INTM决定是否请求; 非屏蔽中断:立即请求。
c、中断服务(CPU级):
完成当前指令,清流水线; 自动保存现场 取中断向量送PC; 执行ISR。
(一)、F28335的中断系统
一、F28335中断系统结构 二、PIE外设中断扩展模块 三、非屏蔽中断
一、F28335中断系统结构
1、中断管理机制
外设级
各中断源使能
INT1
PIE级
INT12
支持96个,分12组
19优先级,组内有序
C28x
CPU
CPU级
INT1~INT12
INT14
INT13
IER |= 0x0008;
//enable INT4 in IER
IER &= 0xFFF7;
//disable INT4 in IER
CPU响应中断后,对应的中断允许位自动清0。
c、调试中断使能寄存器--DEBIER
D15
D14
RTOSINT DLOGINT
RW-0
RW-0
D13 INT14
RW-0
D12 INT13
RW-0
……
D0 INT1
RW-0
DEBIER用于实时仿真模式时的可屏蔽中断使能 和禁止,定义同IER。在ST1中设有DEBM屏蔽位。
用于在中断服务程序中设置断点或单步调试。
二、PIE外设中断扩展模块
1、PIE模块的结构
CPU级
RTOSINT DLOGINT INT14 INT13 INT12
中断向量表描述为:
struct PIE_VECT_TABLE {
PINT PIE1_RESERVED;
…………………;
PINT LUF;
// Latched underflow
}
中断向量表的存储器定位
向量名称
Not used INT1
…… INT12
INT13 INT14 Datalog
…… USER12