TMS320F2812A的中断机制

合集下载

基于TMS320F2812截止频率为2kHz低通滤波的设计与实现

基于TMS320F2812截止频率为2kHz低通滤波的设计与实现

截止频率为2KHz的低通滤波器设计实现滤波器是一种用来消除干扰杂讯的器件,将输入或输出经过过滤而得到纯净的直流电。

对特定频率的频点或该频点以外的频率进行有效滤除的电路,就是滤波器,其功能就是得到一个特定频率或消除一个特定频率。

滤波器主要参数如下:中心频率(Center Frequency):滤波器通带的中心频率f0,一般取f0=(f1+f2)/2,f1、f2为带通或带阻滤波器左、右相对下降1dB或3dB边频点。

窄带滤波器常以插损最小点为中心频率计算通带带宽。

截止频率(Cutoff Frequency):指低通滤波器的通带右边频点及高通滤波器的通带左边频点。

通常以1dB或3dB相对损耗点来标准定义。

相对损耗的参考基准为:低通以DC处插损为基准,高通则以未出现寄生阻带的足够高通带频率处插损为基准。

通带带宽(BWxdB):(下图)指需要通过的频谱宽度,BWxdB=(f2-f1)。

f1、f2为以中心频率f0处插入损耗为基准,下降X(dB)处对应的左、右边频点。

通常用X=3、1、0.5 即BW3dB、BW1dB、BW0.5dB 表征滤波器通带带宽参数。

分数带宽(fractional bandwidth)=BW3dB/f0×100[%],也常用来表征滤波器通带带宽。

数字滤波器按频率特性划分为低通、高通、带通、带阻、全通等类型,根据其单位冲激响应函数的时域特性可分为无限冲激响应( IIR) 滤波器和有限冲激响应滤( FIR) 波器。

有限长单位冲击响应( FIR) 数字滤波器可以做成具有严格的线性相位,同时又具有任意的幅度特性。

此外,FIR 滤波器的单位抽样响应是有限长的,因而滤波器一定是稳定的,只要经过一定的延时,任何非因果有限长序列都能变成因果有限长序列,因而总是能用因果系统实现。

MATLAB 在数字信号处理方面的应用功能。

目前FIR滤波器的实现方法大致可分为三种:利用单片通用数字滤波器集成电路、DSP器件或者可编程逻辑器件实现。

DSP中断

DSP中断

F2812的中断采用的是三级中断机制,分别为外设级,PIE级和CPU级。

外设级
PIE级
当外设产生中断事件,相关中断标志位被置位,中断使能位被置位后,外设就会把中断请求发送给PIE控制器。

PIE控制器将PIE外设和外部引脚的中断进行了分组。

8个中断一组,一共十二组,PIE1~PIE12 。

每个组的中断被多路汇集进入了一个CPU中断,如PIE1…….
和外设级相似的是,PIE控制器的每一个组都会有一个中断使能寄存器PIEIERX和中断标志寄存器PIEIFRX。

每个寄存器的低八位对应八个外设中断,高八位保留。

每个外设中断被响应后,一定要对PIEICK的相关位进行手动复位,以使得PIE控制器能够响应同组的其他中断。

语句为
CPU级
当某一外设中断通过PIE发送至CPU时,CPU中断标志寄存器IFR的相应标志位INTX 就会被置位。

//////////////////////////////////////////////////////////////////////////////////////////////////////。

TMS320F2812串行外设接口Serial Peripheral Interface (SPI)

TMS320F2812串行外设接口Serial Peripheral Interface (SPI)

• C28x的SPI有两种操作模式:
– “基本操作模式”
在基本操作模式下,接收操作采用双缓冲,也就是在新的接收操作启动 时CPU可以暂时不读取SPIRXBUF中接收到的数据,但是在新的接收操 作完成之前必须读取SPIRXBUF,否则将会覆盖原来接收到的数据。在 这种模式下,发送操作不支持双缓冲操作。在下一个字写到SPITXDAT寄 存器之前必须将当前的数据发送出去,否则会导致当前的数据损坏。由 于主设备控制SPICLK时钟信号,它可以在任何时候配置数据传输。
TMS320F2812串行外设接口 Serial Peripheral Interface
(SPI)
什么是SPI
• SPI接口的全称是“Serial Peripheral Interface”,意为串 行外围接口,是Motorola首先在其MC68HCXX系列处理 器上定义的。SPI接口主要应用在EEPROM,FLASH,实 时时钟,AD转换器,还有数字信号处理器和数字信号解 码器之间。(AD7705、AD1255、MAX7219) • SPI接口是在CPU和外围低速器件之间进行同步串行数 据传输,在主器件的移位脉冲下,数据按位传输,高位在 前,低位在后,为全双工通信,数据传输速度可达到几 Mbps。
主控制器模式
• 工作在主模式下(MASTER/SLAVE = 1), SPI在SPICLK引脚为整个串行通信网络提 供时钟。 • 数据从SPISIMO引脚输出,并锁存 SPISOMI引脚上输入的数据。SPIBR种不同的数据 传输率。
串行异步通信
• 数据传输中,以帧为单位进行数据的传送。如图7.1.1所示, 一帧数据由一个起始位、5-8位数据位、一个可编程校验 位和一个停止位组成。
串行异步通信

TMS320F2812自带ADC模块简介

TMS320F2812自带ADC模块简介
}
I++;
}
//在ADC_ISR中,对各个通道进行校正:
Interrupt
Adc_Isr (void)
{
。。。。。。。。。。
newResult n= AdcRegs.ADCRESULTn*CalGain - CalOffset;
。。。。。。。。。。
}
本文来自: DSP交流网()详细出处参考:/bbs/viewthread.php?tid=291
(3)采用适当的隔离技术,将ADC模块电源引脚和数字电源隔离;
(4)如果采样电路部分是经过多路开关切换的,可以在多路开关输出上接下拉电阻到地;
(5)采样通道上的电容效应也可能会导致AD采样误差,因为采样通道上的等效电容可能还在保持有上一个采样数据的数值的时候,就对当前数据进行采样,会造成当前数据不准确。如果条件允许,可以在每次转化完成后现将输入切换到参考地,然后在对信号进行下一次采样。
Ave_LowActualCount= Sum_LowActualCount/SAMPLES;
CalGain = (HIGH_IDEAL_COUNT - LOW_IDEAL_COUNT)//计算增益系数
/ (Avg_HighActualCount - Avg_LowActualCount);
CalOffset =Avg_LowActualCount*CalGain LOW_IDEAL_COUNT; //计算偏置
TMS320F2812内部集成了ADC转换模块,该模块具有如下的功能:
1.12位ADC核,内置了双采样-保持器(S/H);
2.顺序采样模式或者同步采样模式;
3.模拟输入:0V~3V;
4.快速转换时间运行在25MHz,ADC时钟,或12.5MSPS;

第4章_TMS320F2812系统控制及中断

第4章_TMS320F2812系统控制及中断

4.2 时钟及系统控制
华东交通大学电气学院
4.3 振荡器及锁相环模块
2812 基于 PLL 的时钟模块可以采用两种模式,一种是 PLL 未被禁止的情况下(旁路 或使能), 使用外部晶振给 2812 提供时钟信号,使用 X1/CLKIN 引脚和 X2 引脚;另外 一种 PLL 被禁止的情况下,旁 路片内振荡器,由外部时钟源提供时钟信号,即将外部振
PIEIERx。每个寄存器的低 8 位对应于 8 个外设中断,高 8 位保留。例如 T1PINT对应于PIEIFR2 的第 4 位和 PIEIER2 的第 4 位。
因为 PIE 模块是多路复用的,那么每一组同一时间应该只能是一个中断被响应,
PIE 是怎么做到的呢?PIE 除了每组具有 刚才的 PIEIERx,PIEIFRx 寄存器 之外,还有一个 PIEACK 寄存器,它的低 12 位分别对应着 12 个组,即 INT1INT12,高位保留。假如 T1 的周期中断被响应了,则 PIEACK 寄存器的第 2 位(对应于 INT2)就会被置位,并且一直保持直到手动清除这个标志位。当 CPU 在响应 T1PNT 的时候,PIEACK 的第 2 位一直是 1, 这时候如果 PIE2 组内发生其他的外设中断,则暂时不会被 PIE 响应送给 CPU,必须等到 PIEACK 的第 2 位被复位之后,如果该中断请求还存在,那么立马由 PIE 控制 块将中断请求送至 CPU。所以,每个外设中断被响应之后,一定要对 PIEACK 的相关位进行手动服务,否则同组内的其他中断都不会被响应。
时钟频率具体的计算如下面所示。 晶振为 30M,
PLLCR 的 DIV 位被设置成 1010 时的时钟频率
CLKIN=(OSCLKIN*10)/2=(XCLKIN*10)/2=(30M*10)/2=150M Hz

DSP2812和28335的中断机制

DSP2812和28335的中断机制

DSP2812和28335的中断机制(原创)DSP28x的中断主要由三部分组成,一个是以外设事件组成的公用中断扩展PIE,二是用户自定义的中断,三是其他特殊的中断,包括不可屏蔽中断、非法中断和一部分定时中断。

要理解DSP28系列的中断机制,就需要理解以下三个部分,一是PIE,二是中断执行流程,三是CPU级中断执行流程。

一、PIEDSP的外设事件很多,DSP内核CPU没有那么多资源来对每个外设事件进行响应,所以就有了PIE(peripheral interrupt expansion)。

就好比公司有很多员工,不可能每个员工有事情都去找总经理,那样的话总经理就太忙,所以就搞了N个部门,每个部门管理若干个员工,由部门经理独立向总经理进行汇报,这样总经理面对的汇报对象就少了很多,可以从容的处理公司的事务。

带来的问题就是,一个员工要把自己所掌握的情况汇报到总经理那里,需要走很多流程,而且由于“政治”因素,亲疏关系,存在优先级的问题。

关系好的员工,总是被总经理优先接待。

dsp的pie有12个部门经理,每个经理管理8个员工。

部门内部,部门经理给每个员工都有一个汇报权限(PIEIERx.y),当该权限使能时,员工有事就可以跟部门经理汇报。

总经理给每个部门经理也有个汇报权限(IERx),总经理自己还有个按钮(INTM),当总经理哪天需要休息时,将手机一关,所有的汇报都不能到达他那里了。

二、中断执行流程参见《TMS320 x2833x, 2823x System Control and Interrupts》6.3.3节。

Step1:当PIE中的外设发生了一个事件,若外设内部允许该事件产生中断,则外设向PIE发送中断。

Step2:如果PIE收到x组的y中断的信号,就将PIEIFRx.y=1。

Step3:PIE要想cpu发送中断请求,必须满足下面两个条件:a.PIEIERx.y=1b.PIEACKx必须清零。

Step4:如果步骤3的两个条件均满足,则向CPU发送中断请求,并置位PIEACKx。

TMS320F2812芯片介绍

TMS320F2812芯片介绍

TMS320F2812芯片介绍1 TMS320F2812芯片的特点 (1)2 F2812内核组成 (4)3 F2812外设介绍 (5)①事件管理器 (6)②模数转换模块 (6)③SPI和SCI通信接口 (6)④CAN总线通信模块 (7)⑤看门狗 (7)⑥通用目的数字量I/O (7)⑦PLL时钟模块 (7)⑧多通道缓冲串口 (7)⑨外部中断接口 (8)⑩JTAG (8)1 TMS320F2812芯片的特点TMS320F2812是TI公司推出的低价钱、高性能的32位定点DSP数字信号处置器,是到目前为止用于数字控制领域性能最好的DSP芯片。

它是在TMS320C28x为内核的基础上扩展了相应的存储器并集成了大量的片内外设而成的新一代适用于工业控制的DSP芯片。

图9为F2812控制器方框图。

图9 F2812控制器方框图TMS320F2812 系统组成包括:150MHz、150MIPS的低电压3.3VCPU、片内存储器、中断管理模块、事件管理器模块、片内集成外围设备。

TMS320F2812的体系结构采用4级流水线技术,加速程序的执行。

32位的CPU 内核提供了壮大的数据处置能力, 最高速度可达150MIPS,能够在单个指令周期内完成32*32位的乘累加运算。

TMS320F2812采用增强的哈佛结构,芯片内部具有6 条32位总线, 程序存储器总线和数据存储器总线彼此独立, 支持并行的程序和操作数寻址, 因此CPU的读/写可在同一周期内进行。

这种高速运算能力使各类复杂控制算法得以实现。

芯片本身具有128KB的Flash,外部RAM 能够按照需要进行扩充。

另外,它还具有高性能的12位模/数转换能力,改良的通信接口和1MB的线性地址空间。

外设模块丰硕且功能壮大,其中包括:事件管理器EV A和EVB,包括16个PWM输出,10个16位比较器和4个通用按时器;快速灵活的12位,16通道ADC,12.5MPS数据吞吐率;及其它丰硕的片内集成外设:2通道的SCI模块、SPI模块、eCAN2.0B模块、McBSP模块等。

第一章TMS320F2812系列DSP综述

第一章TMS320F2812系列DSP综述
MCU:微控制器(单片机),它是为中、低成本控制领域 而设计和开发的。单片机价格低、使用方便,但与DSP 相比,处理速度较慢。 ARM:具有比较强的事务管理能力,适合跑界面、操作系 统等,控制能力高。DSP相比具有强大的数据处理能力。 PLC:控制电机。 FPGA:一般用于数字电路,硬件的功能可以像软件一样通 过编程修改,价格较贵。 例如:手机。现在的手机都有单片机的核(ARM)和DSP的 核。ARM主要用来控制键盘,DSP的核主要是做语音的 压缩和解压,无线信道的调制和解调。
0x000000 0x000040 0x000400 0x000800 0x000D00
F2812的存储器映像
数据空间 程序空间 数据空间 程序空间 M0中的向量表 M0 SARAM(1K) M1 SARAM(1K) 保留 外设帧0 PIE中断 保留 0x000E00 向量表 保留 0x002000 XINTF Zone0(8k) 保留 XINTF Zone1(8K) 0x006000 外设帧 1 0x007000 保留 0x008000 外设帧2 保留 L0 SARAM(4K) 0x009000 L1 SARAM(4K) 0x00A000 XINTF Zone2(512k) 保留 XINTF Zone6(512K) 0x3D7800 OTP (1K) 0x3D7C00 保留(1K) 0x3D8000 保留 0x3F7FF8 片内FLASHA(128K) 安全密码128位 0x3F 8000 H0 SARAM(8K) 0x3FA000 保留 XINTF 0x3FF000 BootRom(MP/MC=0) Zone7(16K)(MP/MC=1) 0x3FFFC0 BROM Vector-ROM XINTF Vector-RAM (32×32)MP/MC=0 (32×32)MP/MC=1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

5
可屏蔽中断 1
INT2
00 0004
3F FFC4
6
可屏蔽中断 2
INT3
00 0006
3F FFC6
7
可屏蔽中断 3
INT4
00 0008
3F FFC8
8
可屏蔽中断 4
INT5
00 000A
3F FFCA
9
可屏蔽中断 5
INT6
00 000C
3F FFCC
10
可屏蔽中断 6
INT7
00 000E
连接到 PIE 模块的外设和外部中断源的分组情况如表 1 所示,表中的每行里 的 8 个中断源复用一个指定的 CPU 级中断。
表 1 F2812 的 PIE 外设中断
CPU
PIE Interrupts
Interrupts INTx.1
INTx.2
INTx.3
INTx.4
INTx.5
INTx.6
INTx.7
3F FFCE
11
可屏蔽中断 7
INT8
00 0010
3F FFD0
12
可屏蔽中断 8
INT9
00 0012
3F FFD2
13
可屏蔽中断 9
INT10
00 0014
3F FFD4
14
可屏蔽中断 10
INT11
00 0016
3F FFD6
15
可屏蔽中断 11
INT12
00 0018
3F FFD8
16
可屏蔽中断 12
TMS320F2812A 的中断机制
一、F2812 中断简介 TMS320F2812 支持 17 个 CPU 级中断,其中包括 1 个不可屏蔽中断(NMI)和
16 个可屏蔽中断(INT1~INT14,RTOSINT 和 DLOGINT)。TMS320F2812 有很多 外设,每个外设都可能产生一个或者多个外设级中断,由于 CPU 没有能力处理 所有的中断请求,因此需要一个中断扩展控制器来仲裁这些中断,外设中断扩展 模块(PIE)最多可以支持 96 个中断,每 8 个中断分成一组复用一个 CPU 级中断, 总共 12 组中断( INT1~INT12)。每个中断都会有中断向量存放在 RAM 中,构成 了整个系统的中断向量表,即中断向量表中存放的是每个中断服务程序的地址, 响应中断时,CPU 将自动从中断向量表中获取相应的中断向量。系统初始化时 需要定位中断向量表,在操作过程中也可以对中断向量表进行调整。图 1 所示为 TMS320F2812A 的中断功能硬件结构框图。
1、外设级中断 外设产生中断时,中断标志寄存器(IF)相应的位被置 1,如果中断使能寄存器 (IE)中相应的位被置位,则外设产生的中断将向 PIE 控制器发出申请。如果外设 级中断没有被使能,那么中断标志寄存器的标志位将保持不变,除非用软件清除, 如果中断产生后才被使能,且中断标志位没有被清除,同样会向 PIE 申请中断, 需要注意的是,外设的中断标志位必须用软件进行清除。 2、PIE 级中断 所有的外设中断被分成 12 组,每一组有一个中断信号向 CPU 申请中断。例 如,PIE 第 1 组复用中断 1(INT1),第 12 组复用中断 12(INT12),INT1~INT12 以外的中断直接连接到 CPU 中断上且不可复用。
INT12
reserved reserved reserved reserved reserved reserved reserved reserved
二、F2812 的中断操作顺序
TMS320F2812 的中断系统主要有三个中断级别,分别是外设级、PIE 级和 CPU 级,它们的操作顺序是外设产生中断以后,向 PIE 申请中断,然后 PIE 中 断向 CPU 申请中断,外部中断扩展模块的结构如图 2 所示,相应的中断响应流 程如图 3 所示。
(EV-B)
(EV-B)
(EV-B)
(EV-B)
(EV-B)
reserved
INT6
SPIRXINTA SPITXINTA
(SPI)
(SPI)
reserved
reserved
MRINT (McBSP)
MXINT (McBSP)
reserved
reserved
INT7
reserved reserved reserved reserved reserved reserved reserved reserved
表 2 中断向量表映射配置表
(EV-A)
T1CINT (EV-A)
T1UFINT T1OFINT
(EV-A)
(EV-A)
reserved
INT3
T2PINT (EV-A)
T2CINT (EV-A)
T2UFINT T2OFINT CAPINT1 CAPINT2 CAPINT3
(EV-A)
(EV-A)
(EV-A)
(EV-A)
(EV-A)
图 1 TMS320F2812A 的中断功能硬件结构框图
由图 1 可知,所有的 F2812 外设(包含 SPI,SCI,EV,McBSP,CAN,ADC) 共产生 41 个中断源。
在低功耗(LPM)模式下,看门狗可以产生一个 WAKEINT 中断源,将 F2812 从 IDLE/STANDBY 模式下唤醒;
INTx.8
INT1
PDPINTA PDPINTB
(EV-A)
(EV-B)
reserved
XINT1
XINT2
ADCINT TINT0 WAKEINT (ADC) (TIMER0) (LPM/WD)
INT2
CMP1INT CMP2INT CMP3INT T1PINT
(EV-A)
(EV-A)
(EV-A)
图 2 中断扩展模块图 图 2 中断响应流程图
对于复用的 12 组中断,在 PIE 模块内每组中断都有相应的中断标志位 (PIEIFRx.y)和使能位(PIEIERx.y)。除此之外,每组 PIE 中断(INT1~INT12)都有 一个响应标志位(PIEACK)。PIEIFR 和 PIEIER 不同的设置时,硬件操作如图 2 所示。
生中断嵌套,即暂停正在执行的中断服务程序,首先响应优先级高的中断,优先 级高的中断服务程序执行完毕之后,再继续执行优先级低的中断服务程序。但是 在 PIE12 组中断源中,同一组内部的中断不可嵌套,例如正在执行 TIMER0 中 断服务程序时,即使有优先级更高的 ADC 中断触发信号,也不会响应 ADC 中 断,只有当 TIMER0 中断服务程序执行完毕之后才会响应。 四、中断向量表的映射
可屏蔽中断 INT13 的信号源可以来自 CPU 定时器 1 或者 XNMI _XINT13, 具体由外部 NMI 中断控制寄存器 XNMICR 的 SELECT 位决定,同时 XNMICR 的 ENABLE 位还可以使能或禁止外部 NMI 中断。
可屏蔽中断 INT14 的信号源来自 CPU 定时器 2,CPU 定时器 1/2 保留给实时 操作系统(RTOS)用,用户的应用程序不能使用。
reserved
INT4
CMP4INT CMP5INT CMP6INT T3PINT
(EV-B)
(EV-B)
(EV-B)
(EV-B)
T3CINT (EV-B)
T3UFINT T3OFINT
(EV-B)
(EV-B)
reserved
INT5
T4PINT (EV-B)
T4CINT (EV-B)
T4UFINT T4OFINT CAPINT4 CAPINT5 CAPINT6
(CAN)
(CAN)
reserved
reserved
INT10
reserved reserved reserved reserved reserved reserved reserved reserved
INT11
reserved reserved reserved reserved reserved reserved reserved reserved
INT13
00 001A
3F FFDA
17
可屏蔽中断 13
INT14
00 001C
3F FFDC
18
可屏蔽中断 14
DLOGIN+
00 001E
3F FFDE 19(最低) 可屏蔽数据标志中断
RTOSINT+
00 0020
3F FFE0
4
可屏蔽适时操作系统中断
保留
00 0022
3F FFE2
2
保留
NMI
USER5
00 0030
3F FFF0
用户定义软中断
USER6
00 0032
3F FFF2
用户定义软中断
USER7
00 0034
3F
00 0036
3F FFF6
用户定义软中断
USER9
00 0038
3F FFF8
用户定义软中断
USER10
00 003A
3F FFFA
CPU 定时器 0 产生的中断 TINT0 加至外部中断扩展模块(PIE)中,复用可 屏蔽中断 INT1。
这样 PIE 外部中断扩展模块 96 个中断源中,仅仅使用了 45 个,剩下的中断 没有被使用,保留给后续的芯片,但是如果对应的 PIEIFRx 位被使能的话,他们 都可以被当成软件中断来使用。
F2812 还支持 3 个外部可屏蔽中断 XINT1、XINT2 和 XNMI _XINT13,其中 XINT1 和 XINT2 被加至外部中断扩展模块(PIE)中复用中断 INT1,XNMI _XINT13 和不可屏蔽中断 NMI 共用一个中断源,每一个外部中断输入单元包含 一个 16 位的增计数器,这个计数器可以就准确记录中断发生的时间。
相关文档
最新文档