ImageVerifierCode 换一换
格式:DOC , 页数:7 ,大小:207.50KB ,
资源ID:4528278      下载积分:6 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4528278.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(F2812的时钟和控制系统.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

F2812的时钟和控制系统.doc

1、F2812得时钟与控制系统 众所周知,支撑我们身体四肢能够灵活运动得能量来源于心脏,正就是心脏不停得有规律得跳动给身体得各个机能供血,我们才能去做任意我们想做得事情。如果我们得身体过度疲劳,或者感染了细菌病毒而生病了,这个时候就会有医生来给我们检查身体,并且进行治疗。其实DSP也一样,需要一个类似于心脏得模块来提供其正常运行得动力与节奏。在这一章里面,我们一起来学习F2812得“心脏”——F2812得振荡器、锁相环PLL与时钟机制。除此之外还要学习给DSP做“身体检查”,以维持其正常工作得瞧门狗模块。 1、振荡器OSC(Oscillator)与锁相环PLL(Phase Locked

2、Logic) 为了能够让F2812能够按部就班得执行相应得代码,实现相应得功能,她需要不断得规律得时钟脉冲,而这一功能就由F2812内部得振荡器OSC与基于PLL得时钟模块来实现。 在这里简单得介绍一下究竟振荡器OSC与锁相环PLL就是什么: 振荡器OSC: 一种能量转换装置,将直流电能转换为具有一定频率得交流电能。 锁相环PLL: 锁相环也叫相同步逻辑,用途就是在收、发通信双方建立载波同步或位同步。因为它得工作过程就是一个自动频率(相位)调整得闭合环路,所以叫环。 让我们来瞧一下整体得图: 图1 2812芯片内得OSC与PLL模块 如上图所示,F

3、2812上有基于PLL得时钟模块,为器件及各种外设提供时钟信号。锁相环中有4位倍频设置位,以此来提供各种速度得时钟信号。基于PLL得时钟模块可以采用两种操作模式: (1)内部振荡器:在PLL未被禁止得情况下,使用外部晶振给2812提供时钟信号,则必须使用X1/XCLKIN引脚与X2引脚,在这两引脚之间连接一个石英晶体,即外部晶振。 (2)外部时钟源:在PLL被禁止得情况下,旁路片内振荡器,由外部时钟源提供时钟信号,这时候讲外部振荡器得信号直接输入到X1/XCLKIN引脚上,此时X2引脚不使用。 外部引脚可以选择系统得时钟源。当为低电平时,系统直接采用时钟或晶振直接作为系统时钟;当为高电

4、平时,外部时钟经过PLL倍频后,为系统提供时钟。系统可以通过锁相环控制寄存器来选择锁相环得工作模式与倍频得系数。 下面得表格列出了各种PLL得配置模式下,时钟输入信号XCLKIN与时钟模块输出信号,即送至CPU得信号CLKIN之间得关系: PLL模块 功能描述 CLKIN PLL被禁止 上电复位时如果引脚就是低电平,则PLL完全被禁止。此时,输入CPU得时钟就是由外部振荡器直接通过X1/XCLKIN引脚输入得信号。 XCLKIN PLL旁路 如果PLL未处于不使能得状态,上电默认得PLL配置(PLLCR得值为0)。PLL自身被旁路,从X1/XCLKIN引脚输入得时钟信号先除以

5、2,然后再送去CPU。 XCLKIN/2 PLL使能 通过给PLLCR寄存器写一个不为0得值来实现PLL得使能,时钟信号需要进入PLL模块进行n倍频,然后再除以2,最后送至CPU。 (XCLKIN*n)/2 锁相环PLL中有锁相环控制寄存器PLLCR,作用就是用来选择锁相环得工作模式与倍频得系数。上面提到过锁相环中有4位倍频设置位DIV,即为0~3位,往里面写入0000~1010用来确定倍频得系数,其她为保留。锁相环控制寄存器PLLCR如下: 15 4 3

6、 0 保留 DIV 在PLL模式中,平常使用得就是PLL使能模式,从图1可以瞧到,通常采用30M得晶振来给2812提供时基。当PLLCR得DIV位被置为最大值1010得时候,CPU得时钟将达到150MHz,就是2812所能支持得最大时钟频率,这也就是为什么我们会选用30M晶振得原因。时钟频率具体得计算如下所示: 晶振为30M,PLLCR得DIV位被置为1010时得时钟频率 CLKIN=(OSCLKIN*10)/2=(30M*10)/2=150MHz 2、2812芯片中各种时钟信号得产生情况 2812芯片内各种时钟信号得产生情况如图2所示。CLKIN就是经过P

7、LL模块后送往CPU得时钟信号,进过CPU分发,作为SYSCLKOUT送至各个外设。因此,SYSCLKOUT=CLKIN。 图2 2812芯片内各种时钟信号得产生情况 我们在使用2812开发得时候,通常会用到一些外设,例如SCI,EV,AD等,要使得这些外设工作,首先得就就是向其提供时钟信号。因此,我们再系统初始化得时候,就需要对使用到得各个外设得时钟进行使能,在这里与时钟使能相关得寄存器就是外设时钟控制寄存器PCLKCR。 PCLKCR控制各种时钟得工作状态,使能或禁止相关外设时钟,而PCLKCR各位得分配如下所示: 15 14 13

8、 12 11 10 9 保留 ECANENCLK 保留 MCBSPENCLK SCIBENCLK SCIAENCLK 保留 8 7 4 3 2 1 0 SPIENCLK 保留 ADCENCLK 保留 EVBENCLK EVAENCLK 对PCLKCR中各种外设时钟有了基本得了解后,那么究竟就是如何对项目中所需要得各个外设得时钟进行使能得呢?假设

9、要做得项目中用到了EVA、SCIB、SPI、AD这4个外设,那么就需要按照下面得程序对这4个外设进行时钟得使能。 使能外设时钟 SysCtrlRegs、PCLKCR、bit、EVAENCLK=1; SysCtrlRegs、PCLKCR、bit、SCIBENCLK=1; SysCtrlRegs、PCLKCR、bit、SPIENCLK=1; SysCtrlRegs、PCLKCR、bit、ADCENCLK=1; 从图2中也能瞧到,SYSCLKOUT信号经过低速外设时钟预定标寄存器LOSPCP(取值范围0~7,即000~111)变成了LSPCLK,提供给低速外设SCIA、SCIB

10、SPI、McBSP;SYSCLKOUT信号经过高速外设时钟预定标寄存器HISPCP(取值范围0~7,即000~111)变成了HSPCLK,提供给高速外设EVA、EVB、ADC。她们各位得分配如下: 高速外设时钟设置寄存器HISPCP 15 3 2 0 保留 HSPCLK 低速外设时钟设置寄存器LOSPCP 15

11、3 2 0 保留 LSPCLK 在各个外设实际使用时钟得时候,LSPCLK或者HSPCLK需要经过各个外设自己得时钟预定标,如果外设自己得时钟预定标位得值为0得话,则外设实际使用得时钟就就是LSPCLK或者HSPCLK。 LSPCLK计算公式 LOSPCP=0,LSPCLK=SYSCLKOUT LOSPCP=1~7,LSPCLK=SYSCLKOUT/(2*LOSPCP) HSPCLK计算公式 HOSPCP=0,HSPCLK=SYSCLKOUT HOSPCP=1~7,HSPCLK=SYSCLKOUT/(2*HISPCP) 通过上面得2个计算公式,可

12、能会产生疑问,LSPCLK得值有没有可能会比HSPCLK得值大?也就就是说提供给低速外设得时钟频率反而比提供给高速外设得时钟频率来得快?从上面得LSPCLK与HSPCLK得计算公式可以瞧出,这两个时钟信号得频率就是独立无关得,各自分别取决于LOSPCP或者HISPCP得值,与其她因素没有关系。当我们给LOSPCP寄存器所赋得值小于给HISPCP寄存器所赋得值时,LOSPCP得值就会大于HSPCP得值。虽然这完全取决于我们对于寄存器得初始化,但就是一般情况下,也不会让这样得情况出现得,因为低速外设所需要得时钟毕竟要比高速外设所需要得时钟慢些,否则就没有必要区分高低速了,当然这些定义也都就是相对而

13、言得。 3、瞧门狗(Watch Dog) 在学习DSP瞧门狗之前,先让我们来了解一下MCU(Microprocessor Control Unit 微处理器单元)中瞧门狗得原理,以便我们能更好得理解DSP中瞧门狗,因为两者之间得原理就是类似得。 MCU中瞧门狗得原理 在有MCU构成得微型计算机系统中,由于单片机得工作常常会受到来自外界电磁场得干扰,造成程序得跑飞,而陷入死循环,程序得正常运行被打断,由单片机控制得系统无法继续工作,会造成整个系统陷入停滞状态,发生不可预料得后果,所以出于对单片机运行状态进行实时监测得考虑,便产生了一种专门用于监测单片机程序运行状态得芯片,

14、俗称“瞧门狗”。 瞧门狗电路得应用,使单片机可以在无人状态下实现连续工作,其工作原理就是:瞧门狗芯片与单片机得一个I/O引脚相连,该I/O引脚通过程序控制它定时地往瞧门狗得这个引脚上送入高电平(或低电平),这一程序语句就是分散地放在单片机其她控制语句中间得,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写瞧门狗引脚得程序便不能被执行,这个时候,瞧门狗电路就会由于得不到单片机送来得信号,便在她与单片机复位引脚相连得引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器得起始位置开始执行,这样便实现了单片机得自动复位。 瞧门狗,又叫watchdog t

15、imer,就是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU得RST端,MCU正常工作得时候,每隔一段时间输出一个信号到喂狗端,给WDT清零,如果超过规定得时间不喂狗(一般在程序跑飞时),WDT定时超过,就会给出一个复位信号到MCU,使MCU复位。防止MCU死机。瞧门狗得作用就就是防止程序发生死循环,或者说程序跑飞。 图3 瞧门狗功能框图 2812中得瞧门狗原理与上面讲诉得MCU得瞧门狗原理就是类似得,其作用就是为DSP得运行情况进行“把脉”,一旦发现程序跑飞或者状态不正常便立即使DSP复位。

16、 为了实现瞧门狗得各项功能,需要准备设置其内部得3个功能寄存器,而这3个功能寄存器分别就是瞧门狗计数寄存器WDCNTR、瞧门狗复位寄存器WDKEY、瞧门狗控制寄存器WDCR。 瞧门狗计数寄存器WDCNTR 15 8 7 0 保留 WDCNTR 在这里可以瞧到计数器一共有8位,当这个8位得计数器计数达到最大值256时,瞧门狗模块就会产生一个输出脉冲,脉冲宽度为512个振荡器时钟周期。可能有疑问为什么要产生一个512倍振荡器时钟周期得

17、宽脉冲信号?因为需要就是内核复位得信号与要唤醒处理器得中断信号得有效时间远大于振荡器得时钟周期。 为了防止瞧门狗加法计数器WDCNTR溢出,不想产生脉冲信号,这里我们通常可以采用两种方法: (1)禁止瞧门狗,也即为屏蔽计数器,使得计数器WDCNTR无效。则下面我们介绍另外一个寄存器。 瞧门狗控制寄存器WDCR 15 8 7 6 5 3 2 0 保留 WDFLAG WDDIS WDCHK WDPS 禁止瞧门狗,则只需要在WDCR中得WD

18、DIS位置1即可,相反置0为使能瞧门狗。跟着我们介绍其她功能位得作用:瞧门狗复位状态标识位WDFLAG,如果置为1,则表示瞧门狗复位满足了复位条件;如果置为0,则表示外部器件或上电复位条件。WDCHK必须置为101,因为写其她任何值都会引起器件内核得复位,不过这一条件得实现要在瞧门狗已经使能得情况下。最后瞧门狗预定标器WDPS,这里跟上面所学到得高低速预定标器就是相同得道理,作用就是配置瞧门狗计数时钟WDCLK得。 WDCLK计算公式 OSCCLK振荡时钟信号 WDPS=0,WDCLK=OSCCLK/512/1 WDPS=1~7,WDCLK=OSCCLK/512/ (2)定期进行“喂

19、狗”,即通过软件周期性地向瞧门狗复位寄存器中WDKEY位写进“0x55+0xAA”,紧跟着0x55写入0xAA能够清除WDCNTR,写任何其她得值都会使瞧门狗立即复位。 瞧门狗复位寄存器WDKEY 15 8 7 0 保留 WDKEY 4、如何写系统初始化函数 要使得2812能够工作,我们在上电开始得时候就需要对2812进行系统初始化,以提供其正常运行得基本条件,例如分配时钟信号。 系统初始化函数InitSysCtrl一般在工

20、程得DSP28_SysCtrl、c文件中。 系统初始化函数分析 Void InitSysCtrl(void) { Uint16 i; //定义16位int类型得变量i EALLOW; //允许访问受EALLOW保护得寄存器 //On TMX samples , to get the best performance of on chip RAM blocks M0/M1/L0/L1/H0 //internal control registers bit have to be enabled 、 The bits are in Device emu

21、lation registers 、 //在TMX采样时,为了能够使得片内RAM模块M0/M1/L0/L1/H0能够获得最好得性能,//控制寄存器得位必须使能,这些位在设备硬件仿真寄存器内。 DevEmuRegs、M0RAMDFT = 0x0300; //固定格式 DevEmuRegs、M1RAMDFT = 0x0300; DevEmuRegs、L0RAMDFT = 0x0300; DevEmuRegs、L1RAMDFT = 0x0300; DevEmuRegs、H0RAMDFT = 0x0300; //Disable

22、 watchdog module //禁止瞧门狗模块 SysCtrlRegs、WDCR = 0x0068; //禁止瞧门狗,WDDIS位置1 //Initalize PLL //设置PLL SysCtrlRegs、PLLCR = 0xA; //使2812所能支持得最大时钟频率,如果外部晶振为//30MHz,则SYSCLKOUT=(30M*10)/2=150MHz //Wait for PLL to lock for( i = 0 ; i < 5000 ; i++ ) {} //延时,使得PLL能完成上面语句

23、得操作 //HISPCP/LOSPCP prescale register settings , normally it will be set to default values //设置HISPCP/LOSPCP,一般情况下她们会设置为默认值 SysCtrlRegs、HISPCP、all = 0x0001; //这里设定了高速时钟HSPCLK=150M/2=75MHz SysCtrlRegs、LOSPCP、all = 0x0002; //这里设定了低速时钟LSPCLK=150M/(2*2)=37、5MHz //Perip

24、heral clock enables set for the selected peripherals //设置外设使能 SysCtrlRegs、PCLKCR、bit、EVAENCLK=1; SysCtrlRegs、PCLKCR、bit、SCIBENCLK=1; SysCtrlRegs、PCLKCR、bit、SPIENCLK=1; SysCtrlRegs、PCLKCR、bit、ADCENCLK=1; //使能了EVA、SCIB、SPI、ADC得时钟,说明这个工程里将会用到这4个外设,一般//得工程中需要用到哪些外设,就对对应外设得时钟进行使能。 EDIS; //禁止访问受EALLOW保护得寄存器 }

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服