DSP学习)时钟及系统控制

合集下载

DSP硬件系统的基本设计中时钟电路的设计Word版

DSP硬件系统的基本设计中时钟电路的设计Word版

一个完整的DSP系统通常是由DSP芯片和其他相应的外围器件构成。

DSP硬件系统主要包括电源电路、复位电路、时钟电路等。

DSP的时钟电路用来为TMS320C54x芯片提供时钟信号,由一个内部振荡器和一个锁相环PLL组成,可通过晶振或外部的时钟驱动。

以下我们将着重讨论DSP硬件系统的基本设计中时钟电路的设计。

关键字TMS320C54x 时钟产生器软件可编程PLL绪论 (I)第一章时钟产生器 (1)第二章软件可编程PLL (2)第一节软件配置PLL介绍 (2)一时钟模式介绍 (2)二时钟模式设置 (3)第二节程序 (7)一倍频模式向倍频模式的切换 (7)二倍频模式向分频模式的切换 (8)三分频模式向倍频模式的切换 (8)四分频模式向分频模式的切换 (9)第三章心得体会 (11)第四章参考文献 (12)TMS320C54XX1X2\CLKIN4 1 3 2VddTSM320C54XX1X2\CLKINC1C2晶体外部晶振第二章软件可编程PLL第一节软件配置PLL介绍软件可编程PLL的特点是有高度的灵活性,它包括一个用来提供各种时钟乘数因子的时钟标定位、直接开放和禁止PLL的功能和一个PLL锁存定时器,该锁存定时器可以延迟期间PLL时钟模式的切换直到所存操作完成为止。

一时钟模式介绍带有内部的软件可编程PLL的期间可以设置为下面两种时钟模式:PLL模式:输入时钟(CLKIN)乘以31个可能的因子中的一个因子,这些因子取值范围为0.25~15,他们可以通过PLL电路获取。

DIV(分频器)模式:输入时钟(CLKIN)处以2或4.当用DIV模式时,所有的模拟部分,包括PLL电路,都被禁止以使功耗降到最小。

二时钟模式设置复位操作之后,时钟操作模式立即由3个外部引脚CLKMD1,CLKMD2,CLKMD3的直来确定。

3个CLKMD引脚所对应的模式如表1所示,复位之后,软件可编程PLL可以被变成设置为所需的模式。

下列时钟模式引脚作何可以在复位时开放PLL:C5402中是CLKMD(3-1)=000b 110b.当这些时钟模式引脚被组合式,内部的PLL锁相定时器不再激活,因此,系统必须延迟释放复位以保证PLL锁存时间的延迟得以满足。

DSP实验-时钟设计

DSP实验-时钟设计

DSP 设计报告基于DSP的时钟系统一、方案背景DSP 芯片既具有高速数字信号处理功能,又具有实时性强、功耗低、集成度高等嵌入式微计算机的特点,所以随着科技的发展,DSP 技术在机电控制领域的应用愈加广泛。

LED 可显示字符,且显示清晰美观、功耗低,在电子产品中也广泛应用。

现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。

时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。

在一个DSP应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了DSP芯片系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用DSP芯片内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203等都可以满足高精度的要求。

本设计主要介绍用DSP芯片内部的定时/计数器来实现电子时钟的方法,本设计由TMS320LF2407芯片和LED数码管为核心,辅以必要的电路,构成了一个DSP 电子时钟。

二、系统方案介绍1.本方案完全用软件实现数字时钟。

原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。

利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将十字节清零。

DSP学习3)时钟及系统控制

DSP学习3)时钟及系统控制
为了实现看门狗的各项功能,内部有3个功能寄存器
17
第十七页,编辑于星期三:十八点 六分。
OSCCLK
第2章 CPU内部结构与时钟系统
WDCR(WDPS(2:0))
WDCR(WDDIS)
/512
看门狗 定标器
WDCLK
清除计数器
WDCNTR(7:0)
8位看门狗 计数器CLR
WDKEY(7:0)
看门狗55+AA 钥匙检测器 XRS
一、时钟及系统控制
看门狗及其应用
F2812的看门狗与240x的基本相同,当8位的看门狗计数器计数 到最大值时,看门狗模块产生一个输出脉冲(512个振荡器时钟宽度)。 如果不希望产生脉冲信号,用户需要屏蔽计数器,或用软件周 期向看门狗复位控制寄存器写“0x55+0xAA",该寄存器能够使看
门狗计数器清零。
坏的钥匙 好的钥匙
集电极 开路 WDRST

XPPLDIS
101
看门狗功能框图
通用输出脉冲 (512 OSCCLKs)
WDRST WDINT
SCSR(WDENINT)
18
第十八页,编辑于星期三:十八点 六分。
2、看门狗及其应用
8位的看门狗计数器(WDCNTR),当计数到最大值时看门狗模块产生 一个输出脉冲(512个OSCCLK时钟宽度),并可以中断或复位DSP。
Timer->RegsAddr->TCR.bit.FREE = 1; // Timer Free Run
Timer->RegsAddr->TCR.bit.TIE = 1; // 1 = Enable Timer Interrupt
}
12

第四章 F2833x系统时钟及中断控制-TMS320F28335 DSP原理、开发及应用-符晓

第四章 F2833x系统时钟及中断控制-TMS320F28335 DSP原理、开发及应用-符晓
在CPU崩溃时对其复位
看门狗计数器独立于CPU而运行 看门狗计数器溢出时,产生复位或者中断
CPU正常运行时看门狗计数器被定时复位,即“喂狗” 150MHz的时钟频率相当于6.67ns,看门狗计数器是16
位的,从0开始计数到计满溢出是65536个数,即 6.67ns*65536=4.396ms
第四章 系统时钟及中断控制
4.1 F2833x OSC与PLL (对应: SysCtrl.c)
3.3V时钟脉冲输入
外部晶振
片上振 荡器
PLL工作模式 XRS
表4-1 PLL工作模式
工作模式介绍
PLLSTS[DIVSEL]
PLL关闭
通过将PLLSTS寄存器中的PLLOFF位置1可将PLL模块关闭,从而减少
2-0
HSPCLK
ADC
2-0
LSPCLK
SCI / SPI / I2C / McBSP
4.2 外设时钟信号的寄存器
SysCtrlRegs.PCLKCR0
15
14
13
ECANB ECANA MA ENCLK ENCLK ENCLK
7
6
5
reserved reserved
SCIC ENCLK
12
MB ENCLK
0,1
系统噪声并减少功率损耗。在进入此模式前应首先将PLLCR寄存器设为
0x0000。
2
3
PLL旁路
上电复位或 复位后,PLL进入该模式。在该模式下时钟信号直接绕过
0,1
PLL模块,但PLL模块却未关闭。
2
3
PLL使能
向PLLCR寄存器中写入非零的数可使能PLL模块,一旦写入数据后,PLL

基于DSP的电子钟设计

基于DSP的电子钟设计

电子信息工程专业项目设计说明书(2011/2012学年第二学期)项目名称:DSP应用系统题目:基于DSP的电子钟设计专业班级:学生姓名:学号:指导教师:设计周数:设计成绩:1 课程设计目的通过课程设计,使学生综合运用DSP技术课程和其他有关课程的理论和生产实际知识去分析和解决具体问题的能力得到提高,并使其所学知识得到进一步巩固、深化和发展;初步培养学生对工程设计的独立工作能力,学习设计的一般方法;以及锻炼我们查阅资料、方案比较、团结合作的能力。

学会简单电路的实验调试和整机指标测试方法,增强我们的动手能力,为以后学习和工作打下基础。

2 课程设计正文本次课程设计的课题是一个电子时钟设计,采用2812DSP、LED显示模块和相关硬件电路,用DSP相关语言写控制程序,设计一个能够正确显示秒钟的基本DSP应用系统。

2.1 软件系统设计2.1.1主函数流程图如图1所示。

图1主函数流程图2.1.2系统实现代码#include "DSP281x_Device.h" // DSP281x Headerfile Include File#include "DSP281x_Examples.h" // DSP281x Examples Include Fileinterrupt void cpu_timer0_isr(void);void Delay(int x);char flag=1;int g_nCount;Uint16 a=0xff00; //十位Uint16 b=0x0000 ; //个位void main(void){g_nCount=0;InitSysCtrl(); //初始化cpu.InitPieCtrl(); //初始化向量表.初始化Pie寄存器.IER = 0x0000; //复位,中断使能寄存器IER,中断标志寄存器IFR.用于将Pie中断服务复位.IFR = 0x0000;InitPieVectTable(); //初始化中断向量表.EALLOW;//关闭寄存器保护,与EDIS配合使用.PieV ectTable.TINT0 = &cpu_timer0_isr; //打开TINT0,地址指针指向前面向向量,前后名字一致.EDIS; //打开寄存器保护.CpuTimer0.RegsAddr = &CpuTimer0Regs;CpuTimer0Regs.PRD.all = 0xffff; //PRD周期寄存器CpuTimer0Regs.TPR.all = 0; //TPR,8位到15位是PSC,0位到7位是TDDR.CpuTimer0Regs.TIM.all = 0; //TIM计数寄存器,存放计数值CpuTimer0Regs.TPRH.all = 0; //TPR的高16位CpuTimer0Regs.TCR.bit.TSS = 1; //TCR控制寄存器,TSS=1表示关闭定时器,TSS=0时启动CpuTimer0Regs.TCR.bit.SOFT = 1; //SOFT和FREE同时使用,都是1的时候自由运行CpuTimer0Regs.TCR.bit.FREE = 1;CpuTimer0Regs.TCR.bit.TRB = 1; //TRB重装载位,=1自动装载周期寄存器的值CpuTimer0Regs.TCR.bit.TIE = 1; //中断使能计数器,减到0自动为1请求中断.CpuTimer0.InterruptCount = 0; //计数StartCpuTimer0();//执行宏定义,TSS=0时的操作,开始定时器计数IER |= M_INT1;//赋值0X0001PieCtrlRegs.PIEIER1.bit.INTx7 = 1;//按位操作,7位//打开全局中断EINT; // Enable Global interrupt INTMERTM; // Enable Global realtime interrupt DBGMEALLOW;GpioMuxRegs.GPAMUX.all=0x0000; // Configure MUXs as digital I/Os orGpioMuxRegs.GPBMUX.all=0x0000; // peripheral I/Os//MUX表示工作方式,两种工作方式:外设和I/O,相应位为外设,为0是I/O GpioMuxRegs.GPADIR.all=0xffff; // GPIO PORTs as outputGpioMuxRegs.GPBDIR.all=0x000f; // sets 0~3 bit is output,others is input;GPIO DIR select GPIOs as output //DIR表示方向,输入还是输出管教,相应位为1为输出,为0是输入GpioMuxRegs.GPAQUAL.all=0x0000; // Set GPIO input qualifier valuesGpioMuxRegs.GPBQUAL.all=0x0000;EDIS;while ( 1 ){// GpioDataRegs.GPADA T.bit.GPIOA1=0;GpioDataRegs.GPADA T.all=a;//十位GpioDataRegs.GPBDA T.all=b;//个位if(GpioDataRegs.GPBDA T.bit.GPIOB8==0){Delay(5);if(GpioDataRegs.GPBDA T.bit.GPIOB8==0)flag=1;}if(GpioDataRegs.GPBDA T.bit.GPIOB9==0){Delay(5);if(GpioDataRegs.GPBDA T.bit.GPIOB9==0)flag=2;}if(GpioDataRegs.GPBDA T.bit.GPIOB10==0){Delay(5);if(GpioDataRegs.GPBDA T.bit.GPIOB10==0)flag=3;}if(GpioDataRegs.GPBDA T.bit.GPIOB11==0){Delay(5);if(GpioDataRegs.GPBDA T.bit.GPIOB11==0)flag=4;}}}interrupt void cpu_timer0_isr(void)//中断先声明后定义{PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;//中断应答寄存器CpuTimer0Regs.TCR.bit.TIF = 1;//中断标志位CpuTimer0Regs.TCR.bit.TRB = 1;//重装载位if ( g_nCount==0 ){b++;if(b>0x0009){b=0x0000;a++;}if(a>0xff05){a=0;b=0;}switch(flag){case 0:break;case 1: b--; if(b<=0x0000){b=9;a=a-1;};break;case 2:b++;if(b>0x0009){a=a+1;b=0x0000;};break;case 3:a--; if(a<=0xff00) a=0xff05;break;case 4:a++;if(a>0xff05)a=0xff00;break;}}g_nCount++; g_nCount%=2289;}void Delay(int x)//延时1ms*x{int i,j;for(i=0;i<x;i++)for(j=0;j<2275;j++);}2.1.3软件调试软件调试是通过对程序的编译、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。

DSP原理与应用技术-考试知识点总结

DSP原理与应用技术-考试知识点总结

DSP原理与应用技术-考试知识点总结第一章1、DSP系统的组成:由控制处理器、DSPs、输入/输出接口、存储器、数据传输网络构成。

P2图1-1-12、TMS320系列DSPs芯片的基本特点:XXX结构、流水线操作、专用的硬件乘法器、特殊的DSP指令、快速的指令周期。

3、XXX结构:是一种将程序指令储存和数据储存分开的储存器结构。

特点:并行结构体系,是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。

系统中设置了程序和数据两条总线,使数据吞吐率提高一倍。

4、TMS320系列在XXX结构之上DSPs芯片的改进:(1)允许数据存放在程序存储器中,并被算数运算指令直接使用,增强芯片灵活性(2)指令储存在高速缓冲器中,执行指令时,不需要再从存储器中读取指令,节约了一个指令周期的时间。

5、XXX结构:将指令、数据、地址存储在同一存储器中,统一编址,依靠指令计数器提供的地址来区分是指令、数据还是地址,取指令和去数据都访问同一存储器,数据吞吐率低。

6、流水线操作:TMS320F2812采用8级流水线,处理器可以并行处理2-8条指令,每条指令处于流水线的不同阶段。

解释:在4级流水线操作中。

取指令、指令译码、读操作数、执行操作可独立地处理,执行完全重叠。

在每个指令周期内,4条不同的指令都处于激活状态,每条指令处于不同的操作阶段。

7、定点DSPs芯片:定点格式工作的DSPs芯片。

浮点DSPs芯片:浮点格式工作的DSPs芯片。

(定点DSPs可以浮点运算,但是要用软件。

浮点DSPs 用硬件就可以)8、DSPs芯片的运算速度衡量标准:指令周期(执行一条指令所需时间)、MAC时间(一次乘法和加法的时间)、FFT执行时间(傅立叶运算时间)、MIPS(每秒执行百万条指令)、MOPS(每秒执行百万次操作)、MFLOPS (每秒执行百万次浮点操作)、BOPS(每秒十亿次操作)。

采用DSP实现日历时钟及时钟显示的方法

采用DSP实现日历时钟及时钟显示的方法

采用DSP实现日历时钟及时钟显示的方法西安石油大学井下信息探测实验室710065党瑞荣罗兵武张珂摘要:本文简要介绍了日历时钟12887、DSP及液晶模块的功能特点,以及它们的硬件接口及软件设计方法,通过DSP控制,实现日历时钟在液晶上的实时显示。

关键词:日历时钟DSP 接口液晶显示Abstract: This paper introduces traits of calendar clock 12887,DSP and the external controller SED1335 of LCD modle,and the hardware interface circuit .It also introduces the means of software degsin. calendar clock is diplayed in the LCD by the control of DSP.Key words :Calendar clock DSP interface LCD一引言在智能仪表中,除了必须具备信号测量,信号处理,键盘输入,屏幕显示等一些基本功能以外,有时也希望能向用户提供日历时钟显示之类的辅助功能以方便使用。

这时,就常常需要用到带后备电池的实时时钟器件。

一方面用以向系统提供长时间不间断的日历时钟,另一方面借用芯片内剩余的非易失静态RAM用以关机后长期保存系统的一些重要数据信息,具有这种功能的实时时钟芯片很多,如MCI4681、MSM5832等,它们都需要适当的外围电路支持,而且外带电池,不方便与用户接口。

而DS12887是DALLAS半导体公司研制的实时时钟器件,集成度高,不需要外围电路支持,与用户接口极为方便。

尤其是该芯片内含锂电池、石英晶振和写保护电路。

因此,DS12887是一个完整的子系统。

本文以作者的实践为基础。

介绍采用TMS320VC33实现日历时钟及时钟液晶显示的硬件设计和软件编程,其处理过程具有广泛的通用性。

DSP原理与应用知识总结

DSP原理与应用知识总结

上海电力学院题目:DSP原理与应用大报告院系:计算机与信息工程专业年级:2008071学生姓名:王涛学号:20081938TMS320LF240x芯片概述TMS320系列包括:定点、浮点、多处理器数字信号处理器和定点DSP控制器。

TMS320系列DSP的体系结构专为实时信号处理而设计,该系列DSP 控制器将实时处理能力和控制器外设功能集于一身,为控制系统应用提供了一个理想的解决方案。

主要特性:灵活的指令集;内部操作灵活性;高速的运算能力;改进的并行结构;有效的成本。

定点系列TMS320C2000、TMS320C5000,浮点系列TMS320C6000(也有部分是定点DSP)。

TMS320系列同一产品系列中的器件具有相同的CPU结构,但片内存储器和外设的配置不同。

派生的器件集成了新的片内存储器和外设,以满足世界范围内电子市场的不同需求。

通过将存储器和外设集成到控制器内部,TMS320器件减少了系统成本,节省了电路板空间,提高了系统的可靠性。

TMS320LF240x DSP的特点:采用高性能静态CMOS技术,使得供电电压降为3.3V,减小了控制器的功耗;30MIPS的执行速度使得指令周期缩短到33ns(30MHz),提高了控制器的实时控制能力。

基于TMS320C2000 DSP的CPU核,保证了TMS320C240x DSP代码和TMS320系列DSP代码的兼容。

片内有32K字的FLASH程序存储器,1.5K字的数据/程序RAM,544字双口RAM(DARAM)和2K字的单口RAM(SARAM)。

两个事件管理器模块EVA和EVB,每个包括:两个16位通用定时器;8个16位的脉宽调制(PWM)通道。

可扩展的外部存储器(LF2407)总共192K字空间:64K字程序存储器空间;64K字数据存储器空间;64K字I/O寻址空间。

看门狗定时器模块(WDT)。

10位A/D转换器最小转换时间为500ns,可选择由两个事件管理器来触发两个8通道输入A/D转换器或一个16通道输入的A/D转换器。

第四讲 DSP外设应用之系统时钟

第四讲 DSP外设应用之系统时钟

第四讲DSP外设应用之系统时钟系统时钟,即为各个模块产生所需要的时钟,如C55x core、慢速外设(Slow Peripherals),快速外设(Fast Peripherals)以及其它外设所需的基准时钟。

系统时钟的设置是任何一个可编程器件必须进行的初始化操作。

在DSP5502中,系统的时钟初始化语句为:PLL_setFreq(1, 0xC, 0, 1, 3, 3, 0);该语句为CSL(Chip Support Library)库函数语句,在进行时钟设置时,系统调用该API初始化函数,以完成系统设置,对于C55x 5502所涉及的时钟寄存器如下表所示:系统涉及的函数原型为void PLL_setFreq (Uint16 mode, Uint16 mul, Uint16 div0, Uint16 div1, Uint16 div2,Uint16 div3, Uint16 oscdiv);Uint16 mode // PLL mode//PLL_PLLCSR_PLLEN_BYP ASS_MODE//PLL_PLLCSR_PLLEN_PLL_MODEUint16 mul // Multiply factor, Valid values are (multiply by) 2 to 15.Uint16 div0 // Sysclk 0 Divide Down, Valid values are 0, (divide by 1)//to 31 (divide by 32)Uint16 div1 // Sysclk1 Divider, Valid values are 0, 1, and 3 corresponding//to divide by 1, 2, and 4 respectivelyUint16 div2 // Sysclk2 Divider, Valid values are 0, 1, and 3//corresponding to divide by 1, 2, and 4 respectivelyUint16 div3 // Sysclk3 Divider, Valid values are 0, 1 and 3//corresponding to divide by 1, 2 and 4 respectivelyUint16 oscdiv // CLKOUT3(DSP core clock) divider,Valid values are 0//(divide by 1) to 31 (divide by 32)程序中,对于MODE,则5502有两种模式:PLL旁路模式和PLL使能模式,前者是时钟未经PLL进行倍频,而后者使用PLL功能。

第4讲:281x时钟和系统控制

第4讲:281x时钟和系统控制

PLL禁止,系统时钟等于XCLKIN; PLL旁路(上电时默认配置, PLLCR寄存器为零), 系统 时钟等于XCLKIN/2 PLL使能(PLLCR寄存器中有一个非零值n),系统时钟 等于XCLKIN的(n/2)倍
锁相环控制寄存器PLLCR
• ‘28x DSP片上晶振电路模块允许采用内部振荡 器或外部时钟源为CPU内核提供时钟; • 在使用片上晶振模块的内部振荡器时,应当在 X1/XCLKIN和X2两个引脚之间连上一个石英晶振 ,片上晶振模块输出与石英晶振频率相同的时钟 信号,典型的晶振频率是30MHz。 • 采用外部时钟应把时钟信号直接接到X1/XCLKIN 引脚,X2引脚则必须悬空,这时内部振荡器不工 作,片上晶振模块输出该外部时钟信号。
• ’28XDSP芯片有独立的看门狗模块,看门狗计 数器WDCNTR为8位,计数器达到最大值2^81=255 时,看门狗模块输出一个DSP系统复位 脉冲 。 • 喂狗操作:在看门狗计数器达到最大值之前向看 门狗复位密钥寄存器WDKEY先后写入0x55和 0xAA,则看门狗计数器清零,并自动开始下一 轮的递增计数; • 写入其他任何数据都会引起DSP系统复位。
高速外设时钟预定标寄存器HISPCP
控制高速外设的时钟 ,复位时默认为001; HSPCLK配置高速外设时钟相对于系统时钟SYSCLKOUT的 分频系数;
如果HSPCLK等于零,则高速外设时钟等同于SYSCLKOUT;如果 HSPCLK不等于零,则高速外设时钟为SYSCLKOUT/(HSPCLK×2):
4.3 看门狗单元
• 看门狗单元,又称为看门狗定时器WatchDog Timer( WDT),其本质是一个定时器电路; • 若使能看门狗单元,则在系统运行时,看门狗定时器自 动计数;如果不能定时清除看门狗计数器(俗称“喂狗 ”,或“踢狗”Kick Dog),那么看门狗定时器就会溢 出从而引起看门狗中断,强行系统复位。 • 看门狗单元可以防止系统程序发生死循环(俗称“程序 跑飞”),监测软件和硬件的运行状态,从而提高系统 的可靠性。

DSP课程设计数字时钟

DSP课程设计数字时钟

软件调试:检查软件代码是 否正确,确保时钟模块、显 示模块等设备正常工作
功能测试:测试数字时钟的 功能是否正常,如时间显示、 闹钟设置等
性能测试:测试数字时钟的 性能是否满足要求,如时间 精度、功耗等
稳定性测试:测试数字时钟 的稳定性,如长时间运行是 否正常,是否出现异常情况 等
数字时钟的优化
优化目标
提高时钟精度:优化后的时钟精度更高,误差更小 降低功耗:优化后的时钟功耗更低,更节能 提高稳定性:优化后的时钟稳定性更高,不易受干扰 简化设计:优化后的时钟设计更简洁,易于理解和实现
数字时钟的应用 场景
智能家居领域
智能照明:根 据时间自动调 节灯光亮度和
色温
智能安防:监 控家中安全情 况,如门窗开 关、陌生人闯
低功耗设计可以提 高数字时钟的续航 能力
低功耗设计可以减 少数字时钟的能耗 和碳排放
低功耗设计可以降 低数字时钟的生产 成本和维护成本
感谢您的观看
汇报人:
智能家居:作为智 能家电的控制中心, 实现远程控制和定 时操作
工业自动化:用于 生产线的定时控制 和监控,提高生产 效率
医疗设备:用于医疗 设备的定时控制和监 测,提高医疗设备的 准确性和可靠性
交通管理:用于交通 信号灯的定时控制和 监测,提高交通管理 的效率和安全性
数字时钟的发展 趋势
智能化发展
提高时钟的准确性 降低时钟的功耗 提高时钟的稳定性 优化时钟的显示效果
优化方法
提高时钟精度: 采用高精度时 钟源,如晶体
振荡器
降低功耗:优 化电路设计, 减少不必要的
功耗
提高稳定性: 采用稳定的电 源和时钟源, 避免外部干扰
优化显示效果: 采用高亮度、 高对比度的显 示设备,提高

12_TMS320F28335 的时钟(包你明白)

12_TMS320F28335 的时钟(包你明白)

DSP入门知识之时钟分析及其配置在这里,以ti公司的TMS320F28335为例讲解,TMS320F28335是TI公司推出的一款浮点型DSP,其主频可达150MHz。

在这里,主要对该芯片的时钟进行分析并讲述时钟的配置过程。

在讲述中,XCLKIN为外部时钟输入引脚,OSC为外部晶体振荡器,OSCCLK为时钟源,PLLCLK为锁相环时钟,CLKIN为CPU输入时钟,SYSCLK为系统时钟(CPU输出时钟),HSPCLK为告诉高速外设时钟,LSPCLK为低速外设时钟。

先看一下整个时钟框图:在图一中,可以看到XCLKIN和OSC通过寄存器PLLSTS的OSCOFF位来控制选择时钟源OSCCLK=XCLKIN还是OSCCLK=OSC,接着由寄存器PLLSTS的PLLOFF位控制OSCCLK 是否经过锁相环进行倍频,接着由寄存器PLLCR的DIV位来控制倍频系数,接着由寄存器PLLSTS的DIVSEL位控制CLKIN=OSCCLK是CLKIN=PLLCLK(VCOCLK)。

在图二中,可以看出CPU将输入的时钟CLKIN进行输出得到系统时钟SYSCLK,这个系统时钟就是CPU运行一个指令所需要的时钟,接着就是将SYSCLK进行分频依次得到高速外部时钟HSPCLK和低速外部时钟LSPCLK。

以上就是该芯片的时钟讲解,接下来就是时钟的配置。

时钟配置有一个流程,器件先要检测是否有丢失时钟,如果没有丢失时钟,则检查PLLSTS 的DIVSEL位是否为0,如果是0,就可以关闭主时钟入口进行时钟配置,先设定PLL倍频值,然后检测PLL倍频后的时钟相位是否锁定,如果锁定,则开启主时钟入口,此时,系统时钟也就配置好了,如果需要进行分频,此时用户才可以修改寄存器PLLSTS的DIVSEL位得到需要的时钟频率。

以上为系统时钟的配置,配置完系统时钟后,就可以配置外设时钟了。

高速外设时钟由高速外设时钟预分频寄存器HISPCP的0~2位配置即可。

DSP学习 3)时钟及系统控制解析

DSP学习 3)时钟及系统控制解析

TIF-Timer Interrupt Flag TIE-Timer Interrupt Enable TRB-Timer Reload Bit TSS-Timer Stop Status Bit

10
通用定时器
定时器的工作过程:
1)用32位计数寄存器(TIMH:TIM)装载周期寄存器(PRDH:PRD)中的
HSPCK/LSPCK
第2章 CPU内部结构与时钟系统
一、时钟及系统控制
晶体振荡器及锁相环
XF_PLLDIS 预存器 XPLLDIS
时钟模块提供两种操作模式: ▲ 内部振荡器:如果使用内部振荡
器,则必须在X1/XCLKIN和X2两个引 脚之间连接一个石英晶体。
XRS X1/XCLKIN 片内振荡器 (OSC) OSCCLK (PLL被禁止) PLL 旁路 PLL /2 0 CLKIN (送至CPU)
F281×器件上有3个32位CPU定时器(TIMER0/1/2) TIMER0可以在用户程序中使用,TIMER1/2预留给DSP BIOS 或其它RTOS使用(如果不用DSP BIOS,可以供用户使用)。 每个定时器有4个寄存器:

1)计数寄存器(TIMH:TIM):32位
2)周期寄存器(PRDH:PRD):32位 3)预定标寄存器(TPR): 32位(预定标计数器PSC+分频寄存器TDDR) 4)控制寄存器(TCR):16位
计时常数; 2)计数寄存器根据SYSCLKOUT时钟递减计数(16+32位); 3)当计数寄存器等于0时,定时器的计数器寄存器重载周期寄存器值, 并输出一个中断脉冲(TINT0)。
11
配置CPU定时器
下面的函数中周期寄存器由给定的DSP时钟频率Freq(MHz)和定时器 周期Period(µs) 两个参数确定。初始化后定时器处于停止状态。

ch5 DSP的时钟与系统控制

ch5 DSP的时钟与系统控制
的定时时钟。
5.2 时钟和系统控制单元
C28x DSP
外 设 总 线
Reset SYSCLKOUT
外设Reset CLKIN
看门狗 PLL&OSC
低功耗
LSPCLK LOSPCP
PCLKCR0/1/3
外设 寄存器
SCI-A, SPI-A
外设 寄存器
ECAP1, EPWM1~4
外设 寄存器
I2C-A
地址 0x0000-7010 0x0000-7011 0x0000-7012 0x0000-7013 0x0000-7014 0x0000-7016 0x0000-701B 0x0000-7021 0x0000-7022
大小(×16) 1 1 1 1 1 1 1 1 1
描述 XCLKOUT/XCLKIN控制 PLL状态寄存器 时钟控制寄存器 PLL锁定周期寄存器 内部振荡器1调整寄存器 内部振荡器2调整寄存器 低速外设时钟预分频器寄存器 PLL控制寄存器 系统控制&状态寄存器
PCLKCR3 外设时钟控制寄存器



描述
15-14 13
保留 GPIOINENCLK
12-11 10
9
8
7:2 1
保留 CPUTIMER2EN
CLK
CPUTIMER1EN CLK
CPUTIMER0EN CLK
保留 COMP2ENCLK
0
COMP1ENCLK
保留
GPIO输入时钟使能。
0
不给GPIO模块计时。
7-5
保留
4 I2CAENCLK
I时钟使能。
0 不给I模块计时。(默认)(1)
1 给I模块计时。

TMS320C5409DSP时钟的编程控制

TMS320C5409DSP时钟的编程控制

TMS320C5409DSP时钟的编程控制四川大学原子核科学技术研究所国家教委开放实验室(610064) 李尚柏 郑高群 唐章利摘 要 文章分析了TMS320C5409DSP芯片内置软件可编程时钟发生器的工作原理;详细讨论了不同时钟模式之间切换与控制的编程方法;并给出了应用实例。

关键词 DSP 时钟发生器 PLL1 概述TMS320C5409(以下简称C5409)是TI公司推出的C54x系列DSP芯片的新品种。

它是一种低功耗高性能的16位定点DSP芯片,具有很高的操作灵活性和运行速度,使用改进的哈佛结构(1组程序存储器总线、3组数据存储器总线、4组地址总线),设计有高度并行处理的硬件逻辑CPU、片内存储器、片内外围设备和一套高度专业化的指令集。

该器件在经典信号处理、现代信号处理、语音处理、图形图像处理、通信、自动化仪表、家用电器等诸多领域得到广泛应用。

C5409的工作频率可以高达100MHz,为了降低时钟的高频噪声干扰,进而提高系统整体的性能,通常又都希望使用频率比较低的外部参考时钟源(10~20MHz)。

为此C5409提供了一个具有高度柔性的可编程时钟发生器,它可以在在线的情况下,通过编程对系统的工作时钟进行控制,以保证在使用较低的外部时钟源的情况下,通过它的内部集成的锁相环(PLL,phase2locked loop)的倍频来获得所希望的工作频率;同时通过在DSP内部对时钟进行编程控制,也能够较好地满足不同应用的要求。

例如,对于自动化仪表、便携式仪器以及家电等应用场合,往往希望有较低的能耗,这时可以通过编程,使DSP工作在较低的频率,因为这时器件的功耗会很低,甚至可以设定为固定分频模式,并关断内部的锁相环相关电路,使功耗最小。

而对于数字信号处理以及实时系统,常常又需要DSP工作在全速状态,这时则可以通过编程,使系统在完成引导之后,进入到锁相倍频模式,提高系统的工作频率。

有时即使是在同一应用中,为了需要,也可以通过编程控制,使系统在不同的阶段工作在不同的频率。

dsp课程设计时钟设计

dsp课程设计时钟设计

dsp课程设计时钟设计一、教学目标本课程的教学目标是使学生掌握数字信号处理器(DSP)的基本原理和时钟设计的方法,培养学生运用DSP技术解决实际问题的能力。

具体目标如下:1.知识目标:(1)了解DSP的基本概念、结构和特点;(2)掌握DSP的编程语言和开发工具;(3)熟悉时钟设计的基本原理和方法;(4)掌握DSP时钟系统的调试和优化。

2.技能目标:(1)能够使用DSP开发工具进行程序设计和调试;(2)能够运用DSP技术实现简单的时钟设计;(3)具备分析问题和解决问题的能力;(4)具备团队协作和沟通能力。

3.情感态度价值观目标:(1)培养对DSP技术的兴趣和好奇心;(2)树立正确的创新意识,勇于探索和实践;(3)注重团队合作,培养良好的团队精神;(4)认识到了解和掌握DSP技术对于国家发展和个人成长的重要性。

二、教学内容本课程的教学内容主要包括以下几个部分:1.DSP基本原理:DSP的概念、结构和特点,DSP的编程语言和开发工具。

2.时钟设计:时钟的基本原理,DSP时钟系统的组成,时钟信号的产生和分配,时钟系统的调试和优化。

3.DSP编程实践:DSP基本编程方法,常用DSP指令集,DSP程序的调试和优化。

4.案例分析:分析典型的DSP应用案例,如数字滤波器、数字信号处理等。

5.实验操作:进行DSP时钟设计的实验,掌握DSP开发工具的使用,培养实际操作能力。

三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性:1.讲授法:讲解DSP基本原理和时钟设计方法,引导学生掌握关键知识。

2.讨论法:学生进行小组讨论,培养团队合作和沟通能力。

3.案例分析法:分析典型DSP应用案例,提高学生的实际应用能力。

4.实验法:进行DSP时钟设计实验,培养学生的动手能力和实践能力。

四、教学资源本课程所需教学资源包括:1.教材:选用权威、实用的DSP教材,为学生提供系统、全面的知识学习。

2.参考书:提供相关的DSP技术参考书,丰富学生的知识储备。

轻松学会DSP——定时器和时钟课件

轻松学会DSP——定时器和时钟课件

止、调整频率等。
定时器与时钟的联合编程实例
定时器触发时钟
可以通过定时器触发时钟的启动或停止,实现定时任务与时间戳的 同步。
时钟回调定时器
可以在时钟中断处理程序中调用定时器的回调函数,实现时间敏感 任务的调度。
联合编程注意事项
在联合编程时,需要注意时序问题,确保定时器和时钟的同步运行; 同时还需要注意资源共享问题,避免资源冲突和死锁。
用于控制定时器的启动、停止 、复位等操作,以及设置定时
器的计数值和预置值。
定时器的控制方式
硬件控制方式
通过硬件电路实现定时器的启动、停 止、复位等操作,具有速度快、可靠 性高的优点。
软件控制方式
通过编写程序实现定时器的启动、停 止、复位等操作,具有灵活性高、易 于实现复杂功能的优点。
定时器的计数方式
CHAPTER 05
DSP定时器与时钟的编程实 例
使用C语言编写DSP定时器程序
定时器初始化
在C语言中,需要先对定时器进 行初始化设置,包括设置定时器
模式、计数值等。
定时器中断处理
在定时器溢出时,需要编写中断 处理程序,以执行相应的操作, 如更新计数值、执行回调函数等

定时器控制
通过C语言中的函数调用,可以 实现对定时器的控制,如启动、
频率合成
时钟信号还可以用于生成其他频率 的信号,这在信号调制和解调中非 常有用。
定时器与时钟的协同工作
时间基准与事件计数
定时器可以基于时钟信号进行触发,用于计数或测量时间间隔。
同步操作
通过将定时器输出与系统时钟源同步,可以确保DSP中的各种操作 在正确的时间点开始和结束。
动态调整
根据需要,可以通过调整时钟频率或定时器的配置来动态改变DSP 的处理速度或响应时间。

《手把手教你学DSP视频教程》要点摘要

《手把手教你学DSP视频教程》要点摘要

模数转换ADC。模拟转到数字。 Analog to Digital converter 12位ADC模块。(实际上通常达到9位或10位。软件可以协助提高) 可采集2*8=16路信号。采样率:80ns 12.5M 信号范围控制在0-3v。超过3v,会烧坏dsp。
烧写flash。左边的key全是ffff。就是密钥。修改后就是密钥。 注意:不能全部设置为0.如果全部设置为0,2812的flash会被锁死。 如果买到的不能lock。说明是二手的。
AD保护电路及矫正电路设计。 2812必须在0到3v之间。 保护电路:嵌位电路。即把电压限制到某一个范围。 2812的校正电路。采样精度是12位。但是实际上只能达到9位或10位。 通过矫正方法减少误差。 设计两路精准电压。通过对这两路精准电压采样,求的增益误差和偏移误差。 从而对误差进行矫正。 芯片:CJ431.一端恒定电压2.5v。通过电阻分压 输出的精准电压,会和计算的值有点误差。
外扩设计: 外扩存储空间。外扩RAM或者外扩FLASH。放大程序。 外扩RAM:DSP的地址总线跟RAM地址连接。数据连接数据。读写信号相应连接 片选信号连接。 起始地址:ox100000 。--》512k Flash电路扩展:选择sst39vf400.将dsp地址总线跟flash地址、dsp数据总线对flash数据、读写信号、片选信号。片选cs2.即Xintf2区。起始地址0x80000.大小256k或512k。
TMS320*2812结构、资源及性能 32位定点DSP。高性能的CMOS技术。 主频:150MHZ。-》指令周期6.67ns (1/150) 30MHz的晶振 +两个24PF的电容。输入2812,经过pll锁相环,得到150MHz。 低功耗。内核电压1.8v。IO口电压:3.3v。flash编程电压:3.3v 当我们给IO引脚一个电压。如果》3.3v,会烧坏DSP。 内核电压为1.8v,最高主频达不到150MHZ,而是135Mhz。 只有电压设计成1.9v才能达到150MHz。 上电后,dsp迅速发烫,就说明dsp烧了。

DSP之时钟学习先说软件设置时钟...

DSP之时钟学习先说软件设置时钟...

DSP之时钟学习先说软件设置:时钟倍频Initpll在DSP280X_SysCtrl.c文件中的系统初始化函数InitSysCtrl();中设置。

void InitSysCtrl(void){//Disable the watchdogDisableDog();//首先应该关看门狗//Initialize the PLL control:PLLCR and CLKINDIV//DSP28_PLLCR and DSP28_CLKINDIV are defined in DSP280x_Examples.hInitPll(DSP28_PLLCR,DSP28_CLKINDIV);//PLL时钟设置InitPeripheralClocks();//外设时钟启动}//注:DSP28_PLLCR,DSP28_CLKINDIV这两个变量就是指定PLL倍频的数据,在DSP280x_Examples.h头文件中宏定义的,但是可以在此头文件中去修改这两个数值。

如下就是宏定义的原型。

#define DSP28_CLKINDIV0//Enable/2for SYSCLKOUT//#define DSP28_CLKINDIV1//Disable/2for SYSCKOUT//#define DSP28_PLLCR10//#define DSP28_PLLCR9//#define DSP28_PLLCR8//#define DSP28_PLLCR7#define DSP28_PLLCR6//#define DSP28_PLLCR5//#define DSP28_PLLCR4//#define DSP28_PLLCR3//#define DSP28_PLLCR2//#define DSP28_PLLCR1//#define DSP28_PLLCR0//PLL is bypassed in this mode//Initialize the peripheral clocks进出CPU时钟CLKIN可以是PLL关闭可以是PLL旁路,还可以是PLL使能注:·晶振操作:此模式允许使用外部为器件提供时基。

第四讲 DSP外设应用之系统时钟

第四讲 DSP外设应用之系统时钟

第四讲DSP外设应用之系统时钟系统时钟,即为各个模块产生所需要的时钟,如C55x core、慢速外设(Slow Peripherals),快速外设(Fast Peripherals)以及其它外设所需的基准时钟。

系统时钟的设置是任何一个可编程器件必须进行的初始化操作。

在DSP5502中,系统的时钟初始化语句为:PLL_setFreq(1, 0xC, 0, 1, 3, 3, 0);该语句为CSL(Chip Support Library)库函数语句,在进行时钟设置时,系统调用该API初始化函数,以完成系统设置,对于C55x 5502所涉及的时钟寄存器如下表所示:系统涉及的函数原型为void PLL_setFreq (Uint16 mode, Uint16 mul, Uint16 div0, Uint16 div1, Uint16 div2,Uint16 div3, Uint16 oscdiv);Uint16 mode // PLL mode//PLL_PLLCSR_PLLEN_BYP ASS_MODE//PLL_PLLCSR_PLLEN_PLL_MODEUint16 mul // Multiply factor, Valid values are (multiply by) 2 to 15.Uint16 div0 // Sysclk 0 Divide Down, Valid values are 0, (divide by 1)//to 31 (divide by 32)Uint16 div1 // Sysclk1 Divider, Valid values are 0, 1, and 3 corresponding//to divide by 1, 2, and 4 respectivelyUint16 div2 // Sysclk2 Divider, Valid values are 0, 1, and 3//corresponding to divide by 1, 2, and 4 respectivelyUint16 div3 // Sysclk3 Divider, Valid values are 0, 1 and 3//corresponding to divide by 1, 2 and 4 respectivelyUint16 oscdiv // CLKOUT3(DSP core clock) divider,Valid values are 0//(divide by 1) to 31 (divide by 32)程序中,对于MODE,则5502有两种模式:PLL旁路模式和PLL使能模式,前者是时钟未经PLL进行倍频,而后者使用PLL功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

如果不希望产生脉冲信号,用户可以屏蔽看门狗模块,或者通过软件周 期性的向看门狗复位寄存器(WDKEY)写“0x55+0xAA”,使得 WDCNTR清零。

应用说明:

使能看门狗或屏蔽看门狗模块?看门狗时钟倍率?WDCR 希望看门狗中断(从低功耗模式唤醒)还是复位(程序失控)?SCSR
程序运行过程周期性的复位WDCNTR。向WDKEY 写“0x55+0xAA”
F281×器件上有3个32位CPU定时器(TIMER0/1/2) TIMER0可以在用户程序中使用,TIMER1/2预留给DSP BIOS 或其它RTOS使用(如果不用DSP BIOS,可以供用户使用)。 每个定时器有4个寄存器:

1)计数寄存器(TIMH:TIM):32位
2)周期寄存器(PRDH:PRD):32位 3)预定标寄存器(TPR): 32位(预定标计数器PSC+分频寄存器TDDR) 4)控制寄存器(TCR):16位
D8 D7
R/W-0
D0
PSCH
R-0
TDDRH
R/W-0
第2章 CPU内部结构与时钟系统
一、时钟及系统控制
看门狗及其应用
F2812的看门狗与240x的基本相同,当8位的看门狗计数
器计数到最大值时,看门狗模块产生一个输出脉冲(512个振荡 器时钟宽度)。如果不希望产生脉冲信号,用户需要屏蔽计数
器,或用软件周期向看门狗复位控制寄存器写“0x55+0xAA",
当计数寄存器等于0时,定时器中断输出产生一个中断脉冲。
32位周期寄存器 PRDH:PRD
16位预定标计数器 PSCH:PSC 借位
32位计数器 TIMH:TIM 借位
TINT
定时器功能框图
第2章 CPU内部结构与时钟系统
定时器
▲ 工作原理 √在每个SYSCLKOUT脉冲后PSC减1,一直减到0。 √在下一个SYSCLKOUT周期 ,TDDR加载新的除数值到PSC,并使TIM减1。 √重复前两步操作,即PSC每次减到0后,TIM进行一次减1操作,直到TIM减为0 √在下一个SYSCLKOUT周期,将定时器中断(TINT)送到CPU,和TOUT引脚。同
5
第2章 CPU内部结构与时钟系统
一、时钟及系统控制
高速外设时钟 PLLCR 设置寄存器 LOSPCP 慢速外设时钟 SCSR 设置寄存器 HISPCP PCLKCR 外设时钟控制 WDCNTR 寄存器 LPMCR0 低功耗模式控 WDKEY 制寄存器0 LPMCRl 低功耗模式控 WDCR 制寄存器1 HISPCP PLL控制寄 存器 系统控制和 状态寄存器
坏的钥匙 好的钥匙 坏的 WDCHK 钥匙
通用输出脉冲 (512 OSCCLKs)
WDRST WDINT
XRS 集电极 开路
WDRST WDCR(WDCHK(2:0))
SCSR(WDENINT)
XPPLDIS
1 0 1
看门狗功能框图
2、看门狗及其应用
8位的看门狗计数器(WDCNTR),当计数到最大值时看门狗模块产生 一个输出脉冲(512个OSCCLK时钟宽度),并可以中断或复位DSP。
1
▲ 外部时钟源:如果采用外部时钟,
可以将输入的时钟信号直接接到X1/ XCLKIN引脚上,而X2悬空。在这种情 况下,不使用内部振荡器。
X2
4位PLL选择
当XPLLDIS为低电平,系统直接采用时钟或晶振直接作为系统时钟; 当XPLLDIS为高电平,外部时钟经过PLL倍频后,为提供时钟。
第2章 CPU内部结构与时钟系统
TIF-Timer Interrupt Flag TIE-Timer Interrupt Enable TRB-Timer Reload Bit TSS-Timer Stop Status Bit

10
通用定时器
定时器的工作过程:
1)用32位计数寄存器(TIMH:TIM)装载周期寄存器(PRDH:PRD)中的
R/W-0
保留 ECANENCLK 保留 MCBSPENCLK SCIBENCLK SCIAENCLK 保留 SPIENCLK
R/W-0
D7 保留
R-0
D4
D3 ADCENCLK
R/W-0
D2 保留
R-0
D1
R/W-0
D0
R/W-0
EVBENENCLK EVAENCLK 数据存储空间 0X00007022 D1 D0
22
系统控制和状态寄存器SCSR
WDINTS:看门狗中断状态位,反映WDINT的状态。 WDENINT:
第2章 CPU内部结构与时钟系统
定时器
▲ 计数器——TIM
D15 D0
TIM
D15
R/W-0
D0
TIMH
R/W-0
▲ 周期寄存器——PRD
D15 D0
PRD
D15
R/W-0
D0
PRDH
R/W-0
第2章 CPU内部结构与时钟系统
定时器
▲ 控制寄存器——TCR0 TCR功能: √控制定时器模式 √重新加载定时器 √启动和停止定时器
12
第2章 CPU内部结构与时钟系统
一、时钟及系统控制
定 时 器
复位 定时器重新装载 16位定时器分频 TDDRH:TDDR SYSCLKOUT TCR.4
(定时器起始状态)
工作过程:首先用32位计数寄存器(TIMH:TM)装载周期寄存器
(PRDH:PRD)内部的值。计数寄存器根据SYSCLKOUT时钟递减计数。
HSPCK/LSPCK
第2章 CPU内部结构与时钟系统
一、时钟及系统控制
晶体振荡器及锁相环
XF_PLLDIS 预存器 XPLLDIS
时钟模块提供两种操作模式: ▲ 内部振荡器:如果使用内部振荡
器,则必须在X1/XCLKIN和X2两个引 脚之间连接一个石英晶体。
XRS X1/XCLKIN 片内振荡器 (OSC) OSCCLK (PLL被禁止) PLL 旁路 PLL /2 0 CLKIN (送至CPU)
一、时钟及系统控制
锁相环控制寄存器PLLCR——用于选择锁相环的工作模式和倍频系数
D15 D4 D3 D0
Reserved
DIV
R/W-010
定时器
R-0Biblioteka 有3个32位CPU定时器(TIMER0/1/2): √定时器0用户可以在应用程序中使用。 √定时器1和定时器2预留给实时操作系统使用(例如 DSPBIOS)。 ▲ TIM —— 16位的计数寄存器,重新装载PRD的值。 ▲ PRD —— 16位周期寄存器。 ▲ TCR —— 16位的定时器控制寄存器。 ▲ PSC —— 16位的预定标寄存器,重新装载TDDR的值。 ▲ TDDR —— 16位的分频寄存器。
void ConfigCpuTimer(struct CPUTIMER_VARS *Timer, float Freq, float Period) { unsigned long temp; Timer->CPUFreqInMHz = Freq; // Initialize timer period Timer->PeriodInUSec = Period; temp = (long) (Freq * Period); // 150MHz×100us=15000 Timer->RegsAddr->PRD.all = temp; Timer->RegsAddr->TPR.all = 0; // Set pre-scale counter to divide by 1 Timer->RegsAddr->TPRH.all = 0; // Initialize timer control register: Timer->RegsAddr->TCR.bit.TSS = 1/0; // 1 = Stop timer, 0 = Start Timer Timer->RegsAddr->TCR.bit.TRB = 1; // 1 = reload timer Timer->RegsAddr->TCR.bit.SOFT = 1; Timer->RegsAddr->TCR.bit.FREE = 1; // Timer Free Run Timer->RegsAddr->TCR.bit.TIE = 1; // 1 = Enable Timer Interrupt }
21

// This function disables the watchdog timer. void DisableDog(void) { EALLOW; SysCtrlRegs.WDCR= 0x0068; //WDDIS=1, WDCHK=101, EDIS; // WDPS=000 (WDCLK=OSCCLK/512) }
使能/屏蔽看门狗模块
// This function enables the watchdog timer.
void EnableDog(void) { EALLOW; SysCtrlRegs.WDCR= 0x0028; //WDDIS=0, WDCHK=101, EDIS; // WDPS=000 (WDCLK=OSCCLK/512) }
R/W-0 R/W1C-1
▲ 系统控制和状态寄存器 SCSR ——
D15 D3 D2
R-1
Reserved
R-0
WDINTS WDENINT WDOVERRIDE
—— 0x0000701A/B D2 D0
R/W-010
▲ 高低速外设时钟寄存器 HISPCP/LOSPCP
D15 D3
相关文档
最新文档