分享一下学习资料
特性
暂略
简介暂略
引脚有LQFP、BGA、PBGA封装,开发板用的是LQFP
待有时间详细分析
待有时间详细分析
该器件可由一个外部振荡器计时或者由一个连接到片载振荡器电路的晶振计时。提供的一个PLL支持高达1031个输入时钟缩放比。PLL比率可用软件中在器件运行时更改,这使得用户在需要低功耗运行时能够按比例降低运行频率。时序细节,请参考电气规范部分。PLL块可被设定为旁路模式。
OSC和PLL块 使用内部振荡器,30MHz外部石英晶振 基于PLL的时钟模块 此器件有一个片载、基于PLL的时钟模块。这个模块为器件提供所有需要的时钟信号,以及对低功耗模式进入的控制。PLL有一个4位比率控制PLLCR[DIV]来选择不同的CPU时钟速率。在写入PLLCR寄存器之前,安全装置模块应该被禁用。在PLL模式稳定后,它可被重新启用(如果需要的话),重新启用的时间为131072个OSCCLK周期。输入时钟和PLLCR[DIV]位应该在PLL (VCOCLK)的输出频率不超过300MHz时候选择。
中断
用户中断分为三部分:外设级、PIE级、CPU级
三级串联构成一路中断。
外设中断扩展 (PIE)块
PIE块将许多中断源复用至中断输入的较小的集合中。PIE块能够支持多达96个外设中断。在2833x/2823x中,96中断中的58个被外设使用。96个中断被分成8组,每组被提供 12个CPU中断线(INT1或者INT12)中的1个。96个中断中的每一个中断由其存储在一个可被用户写覆盖的专用RAM块中的矢量支持。在处理这个中断时,这个矢量由CPU自动抽取。抽取这个矢量以及保存关键CPU寄存器将花费 8个CPU时钟周期。 因此CPU能够对中断事件作出快速响应。 可以通过硬件和软件控制中断的优先级。每个中断都可以在PIE块内启用或禁用。
外部中断 (XINT1-XINT7,XNMI)
此器件支持 8个被屏蔽的外部中断 (XINT1–XINT7, XNMI)。 XNMI 可被连接至 INT13 或者 CPU 的 NMI 中断。 这些中断中的每一个可被选择用于负边沿、正边沿或者正负边沿触发,并且可被启用或禁用(包括XNMI 在内)。 XINT1, XINT2,和 XNMI 还包含一个 16位自由运行的上数计数器,当检测到一个有效的中断边沿时,该计数器复位为 0。 这个计数器可被用于为中断精确计时。 与 281x 器件不同,没有用于外部中断的专用引脚。 XINT1,XINT2 和 XINT 中断可接受来自 GPIO0-GPIO31 引脚的输入。 XINT3–XINT7 中断可接受来自 GPIO32-GPIO63 引脚的输入。
整个时钟电路的原理框图如图所示。
在使用有源晶振作为外部的时钟源时,DSP片内的晶体振荡电路会被旁路,外部的时钟信号有XCLKIN管脚输入DSP。看门狗定时器取OSCCLK信号作为其输入。C28x的内核会将输入的CLKIN信号转换为SYSCLKOUT信号(这就是通常我们提到的那些150MHz的信号)。SYSCLKOUT主要用来为DSP片上的一些外设提供时钟信号。按照外设的速率,一般分为需要高速时钟信号HSPCLK(顾名思义即high speed peripheral clock)的外设,如EPWM、ADC等等;以及仅需要较低的信号频率LSPCLK(顾名思义即low speed peripheral clock)的外设,主要是一些串行设备,如SCI、SPI、I2C、McBSP等。HSPCLK与LSPCLK都是通过对SYSCLKOUT进行分配得到的,主要是通过配置寄存器的控制位实现不同的分频因子。举例如下:
HSPCLK/ LSPCLK |
外设时钟频率 |
0 0 0 |
SYSCLKOUT |
0 0 1 |
SYSCLKOUT / 2 |
0 1 0 |
SYSCLKOUT / 4 |
0 1 1 |
SYSCLKOUT / 6 |
1 0 0 |
SYSCLKOUT / 8 |
1 0 1 |
SYSCLKOUT / 10 |
1 1 0 |
SYSCLKOUT / 12 |
1 1 1 |
SYSCLKOUT / 14 |
HSPCLK的上电默认值是SYSCLKOUT / 2,即在SYSCLKOUT为150MHz的情况下,HSPCLK默认为75MHz,所以如果想让外设工作在最高频率下一定不能忘了设置这些位。此外,如果没有正确配置的话,那外设里面的定时器,如PWM定时器的周期都将与预想的产生倍数倍的错位。LSPCLK的默认值则为SYSCLKOUT / 4。
在SysCtrlRegs.PCLKCR0、SysCtrlRegs.PCLKCR1、SysCtrlRegs.PCLKCR3寄存器中,有对各个外设时钟信号的单独的使能控制。比如,我们禁止掉SysCtrlRegs.PCLKCR0里面的ECANBENCLK,则ECANB模块没有时钟信号输入,其消耗的功率就近乎为0了。(为什么?因为CMOS电路的功耗主要是动态功耗啊!)
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图四被打赏50分 | |
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 |