paradoxfx

【原创】TI C2833x介绍---系统的初始化(1)

一个C2833x系统的初始化,主要包括这样几个方面:(1)基于OSC(晶振)或者PLL的系统的时钟模块(2)看门狗定时器的初始化(3)通用数字I/O,即通常简称的GPIO的初始化(4) 

【原创】TI C2833x介绍---复位与中断(14)

从中断事件产生,到CPU响应并开始执行中断程序ISR内的指令,需要以下几个周期的延时,如图所示:可以计算出,Ø在响应内部中断的情况下:最少需要14个时钟周期Ø在响应外部中断的情况下:最少需要16个时钟周期Ø如果程序在外

【原创】TI C2833x介绍---复位与中断(13)

中断的响应需要CPU的硬件操作,显然要经过多步操作是无法在一个时钟周期内完成的,所以就存在一定的延时。首先看一下CPU处理中断时进行的操作;这里的前提是中断配置正确且正确触发,中断标志位已经置位、需要CPU做出响应了。CPU的动作描述寄存器压入堆栈14个寄存

【原创】TI C2833x介绍---复位与中断(12)

因为PIEIERx寄存器决定了程序会跳转到哪个向量,所以在清除PIEIERx里面的位时必须仔细确认操作按照前面两次提到的步骤来,否则在中断求取已经送入CPU之后再修改PIEIERx寄存器时,若没有其余的中断请求被使能,将导致进入TRAP中断,否则将进入那个被使能并等待响应的中断

【原创】TI C2833x介绍---复位与中断(11)

如何将多路复用的外设中断请求传送到CPU中?这个应该算是我们理解整个外部中断处理流程的最后一步了。整个流程相对来说还是有点小复杂并且需要小心谨慎、严格按照步骤来处理的,好在TI为我们提供了一个清晰的流程图。总结整个处理步骤如下:1.&

【原创】TI C2833x介绍---复位与中断(10)

准则3:使用PIEIER禁止中断根据是否去掉中断的使能位,又分为两种处理方法:方法1:使用PIEIER禁止中断,但是保留对应的中断标志位这种方法的特点是中断不会丢失,需要以下的步骤:1.禁止全局

【原创】TI C2833x介绍---复位与中断(9)

在程序中有多个中断需要处理的时候,几个准则不得不看,以免跳转到莫名其妙的illegalISR还一头雾水找不到原因:准则1:不要采用直接修改的方法手动清除(或者说编程操作)PIEIFR的位:对PIEIFR进行人为读操作或者读-修改-写

【原创】TI C2833x介绍---复位与中断(8)

在器件复位之后,中断向量表的映射被配置为下表:映射的向量从何处取Reset地址范围VMAPM0M1MAPENPIEBROMBootROM模块0x3FFFC0-0x3FFFFF110即复位之后,VMAP和M0M1MAP被置位,ENPIE模式被强制为0,而复位向量总是从BootROM中取(所以有一次我把BOOTROM烧坏之后,DSP

【原创】TI C2833x介绍---复位与中断(7)

在2833x中断向量表映射被设计为可以映射到RAM中的四个区域,包括M0SARAM、M1SARAM、BootRom和PIE,但是实际上暂时只有PIE被用到了(和别的保留资源一样,方便后续器件升级时进行尽可能少的改动,这也算是硬件里面的模块化吧)。映射的模式被以下几个位控制,进行

【原创】TI C2833x介绍---复位与中断(6)

上次提到了在DSP的实时仿真运行模式和标准运行情况下,使能中断时用到的寄存器是有区别的,概括为:中断处理过程在何时使能中断标准模式(正常运行的情况)DSP运行在实时模式(仿真器)并暂停INTM=0,且IER中的相应位置位IER中的相应位置位,且DBGIER是1CPU在收到

【原创】TI C2833x介绍---复位与中断(5)

经PIE控制的中断的操作顺序:(3)CPU级的操作一旦PIE控制器将中断请求送入CPU,则CPU级的INTx对应的中断标志位(IFR)将被置位。一旦IFR中相应的标志位被锁存为1之后,除非满足下面的两种条件之一,否则对应的中断请求将暂时不会被响应:1. 

【原创】TI C2833x介绍---复位与中断(4)

经PIE控制的中断的操作顺序:1)外设级别中断事件由外设产生。该事件所对应的中断控制寄存器中的中断标志位(IF)被置位。此时,如果相应的中断使能(IE)位被置位,则外设向PIE控制器发出中断请求。此时如果该中断在外设级别未被使能,则IF保持置位,直到

【原创】TI C2833x介绍---复位与中断(3)

从2812到28335,PIE的功能与核心作用并没有显著变化,可以把它比喻为外设事件的一个集中处理单元。它可以最多支持96个独立的外部中断源,但是在TMS2812DSP中实际只用到了45个,而28335也只用到了56个,剩余的中断源主要是保留给后续器件升级之后使用的,只要在空

【原创】TI C2833x介绍---复位与中断(2)

C2833x的中断源有很多,简单的归类可以分为片内的中断事件和片外的中断事件;片内的中断事件由片内的软硬件事件产生,比如3个CPU定时器、各个外设如eCAP、ePWM等、看门狗等,以及一些用户自定义的中断事件;片外的中断源则一般是与DSP的管脚联系在一起的,在特定

【原创】TI C2833x介绍---复位与中断(1)

F28x系列DSC的复位源一般是两个,一个来自于watchdog,另一个来自于XRS非(注:文字输入的原因,这里的XRS实际都为低电平有效的信号,即头上带上划线的那种标识)管脚上的低电平检测。两个复位信号经过或(or)操作之后,控制芯片的复位。如果复位是由外部操作引