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

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四讲 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_MODE Uint16 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 respectively Uint16 div2 // Sysclk2 Divider, Valid values are 0, 1, and 3 //corresponding to divide by 1, 2, and 4 respectively Uint16 div3 // Sysclk3 Divider, Valid values are 0, 1 and 3 //corresponding to divide by 1, 2 and 4 respectively Uint16 oscdiv // CLKOUT3(DSP core clock) divider,Valid values are 0 //(divide by 1) to 31 (divide by 32) 程序中,对于MODE,则5502有两种模式:PLL旁路模式和PLL使能模式,前者是时钟未经PLL进行倍频,而后者使用PLL功能。由于目前无源晶振生产工艺限制,其所能产生的频率超过30即会有较大的误差,而5502最高可达到300M时钟,一般需要使能PLL功能。其它参数均为各除法器的值,查询相应的寄存器即可完成。 表1 所涉及的PLL寄存器及其各相关位 PLLCSR PLLEN, PLLPWRDN, OSCPWRDN, PLLRST, LOCK, STABLE PLLM PLLM PLLDIV0 PLLDIV0, D0EN PLLDIV1 PLLDIV1, D1EN PLLDIV2 PLLDIV2, D2EN PLLDIV3 PLLDIV3, D3EN OSCDIV1 OSCDIV1, OD1EN WAKEUP WKEN0, WKEN1, WKEN2, WKEN3 CLKMD CLKMD0 CLKOUTSR CLKOUTDIS, CLKOSEL 图1 系统时钟发生器 图2 晶振及其时钟产生电路 图3 内部时钟频率范围值 附各个寄存器相关位说明 (1) PLL Control / Status Register (PLLCSR) (0x1c80) n STABLE 6 R 1 Oscillator output stable. This bit indicates if the OSCOUT output has stabilized. STABLE = 0: Oscillator output is not yet stable. Oscillator counter is not done counting 41,032 reference clock cycles. STABLE = 1: Oscillator output is stable. This is true if any one of the three cases

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档