MSP430F5529 时钟 25MHz 设置方法

2019-10-29来源: eefocus关键字:MSP430F5529  时钟  设置方法

MSP430F5529的launchpad是 TI送的比较多的一款开发套件,至少我们实验室就是人手一块,很多人都嫌他慢,确实相比较于STM32F103(72MHz) 和STM32F407(168MHz)的速度而言  默认状态下主频只有1MHz的 MSP430F5529就是个弟弟,而且处理位宽也是只有16位,,, 还不支持位带操作  ,但是就超低功耗这一点就足以让他在单片机界立足 ,废话少说,来正题。


这次跟大家分享的是标题所说的  MSP430F5529的升频方案。


要升频,首先我们得能‘看见’系统的频率,TI的工程师们充分考虑到了这个问题,他们有得引脚可以直接输出时钟信号!!!


在芯片datesheet中 的Terminal Functions  里有如下说明

所以我们可以通过设置相应的 状态来输出时钟信号, IO配置成输出+ 功能复用

以上 我们实现了 时钟的输出 ,通过测量上述的三个IO ,我们可以得到系统的不同时钟。 接下来就是对时钟的配置


主要就是配置UCS(Unified Clock System (UCS))的一些寄存器。 不过 在这之前  我们要先把核心电压升上去,430为了省电默认状态下核心电压默认设置为1.8V来节省功耗。 在用户手册的2.2.4节提到了升核心电压的方法


开启PMM管理的操作  第一步是解锁  向PMMCTL0 寄存器高8位写入 0xA5 然后设置核心电压等级是三级(官方手册有提到频率和核心电压的关系)

这里要提一下 ,我调用官方的 SetVcore()函数并不能实现效果不知道为什么 。。。。有知道的大佬还望不吝赐教


到这里 我们的核心的电压已经设置完成了,接下来就是时钟的配置了,其他大佬们也提到了很多,我这里就是按照一位大佬的做法实现的,不是原创! 只是对前人思路的理解.. 代码如下

第一步是 令 SR寄存器里面的 SCG0=1, 我猜测这里的目的应该是

我猜测这一步的作用应该是关闭锁相环,同时 关闭了这个时钟以后系统时钟应该会自动切换到备用时钟。 关闭了这个以后就可以开始对时钟进行设置了。  UCSCTL0 是直接关闭了DCO的输出

查看芯片的技术手册发现0x60(DCORSEL_6)确实是最优解!  同时0x50(DCORSEL_5)和 0x70(DCORSEL_7)也是可以选择的!


接着理解下一步  UCSCTL2 = FLLD_1 | 380;

接下来我们看一下这些bit到底是设置了什么

 

通过 这些默认的设置

初步判断时钟是从XT1CLK 来的

XT1 也就是我们先前使能的 外部晶振    P5.4 P5.5

然后我们打开launchpad的手册 在clock相关的部分也确实证实了  XTL1 是32.768KHz的晶振

XT1 的 bypass是 默认置0的  完整的时钟信号走向应该是这样的

实现效果是这样的  

这里的示波器选用的是 Loto 的虚拟示波器 OSC802 


示波器的引脚接到了 P2.2脚 我也是最近才开始捡起 430的 ,很多东西都不是很熟,出错在所难免,请各位大佬们不吝赐教!

关键字:MSP430F5529  时钟  设置方法 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic478625.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:MSP430精确延时_delay_cycles
下一篇:MSP430 延时总结

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

MSP430G2553与MSP430F5336系列单片机总结[4]——比较器B的使用
参考电压稳定  __bis_SR_register(LPM4_bits); // 进入LPM4}4.比较器B输入通道CB0接外部模拟输入信号,并且引至比较器+输入端,内部参考电压发生器利用提醒电阻电路产生#include /* *比较器B输入通道CB0接外部模拟输入信号,并且引至比较器+输入端,内部参考电压发生器利用提醒电阻电路产生 *Vcc*3/4和Vcc/4的参考电压,通过CBOUT输出进行控制引至比较器-输入端,最终当CB0输入模拟信号电压高于Vcc*3/4时,CBOUT输出高电平,当CB0输入模拟信号低于Vcc/4时,CBOUT输出低电平 *该程序在MSP430F5336当中跑
发表于 2019-11-06
win10下使用Energia开发MSP430F5529LP 基本流程及遇到的问题
energia.nu上下载energia安装驱动,部分电脑可能要禁用数字签名,常规操作不多说,官网上也有禁用数字签名的方法。都装好后打开energia,页面几乎和arduino一样,就是红得晃眼睛。什么东西都不写,先编译一下,就报错 大概意思是一个文件中的浮点数常量超出double范围 从来没见过这种错误,检查了一下自己安装的64位也没啥问题,到处找方法,论坛贴吧资料都很少,最后看到energia.exe附近有个arduino-builder.exe点击运行一下,再回去编译,就ok了,blink烧写进去也完全正常。后来发现还是有点问题,直接把报错的那个文件删除就好,不会有任何问题,亲测。当然最好留个备份,后面有关于这个函数的问题了再
发表于 2019-10-28
win10下使用Energia开发MSP430F5529LP 基本流程及遇到的问题
MSP430F149学习笔记——时钟
由于近期的需要,开始学习TI的MSP430 MCU。脑子不好使记不下来,只能辛苦一一敲在这里,便于大脑短路时随时查阅。首先学习了F149的时钟系统。F149拥有一个名为DCOCLK的内部数控振荡器,可外接两个晶振,通常一个晶振提供32768Hz实时时钟(LFXT1CLK),另一个晶振提供最大8MHz的系统主时钟(XT2CLK)。以上3个时钟源可以产生三个时钟信号:ACLK:辅助时钟。可由LFXT1CLK经1/2/4/8分频得到,可软件配置作为各种外设提供时钟信号。MCLK:主时钟。可由DCOCLK/LFXT1CLK/XT2CLK经1/2/4/8分频得到,作为CPU和系统时钟。SMCLK:副时钟。可由DCOCLK/LFXT1CLK
发表于 2019-10-25
基于MSP430F5529的μc/os嵌入式实时操作系统移植
()    //OS启动时调用,加载用户最高优先级的任务 OSCtxSw()       //任务级调度 OSIntCtxSw()      //中断级调度 OSTickISR()       //时钟中断响应,将检测到延时结束的任务加入就绪队列,    .cdecls C, LIST, "msp430.h";用户钩子,对应os_cpu_c.c中的HOOK函数    .ref     OSIntExit    .ref     OSIntNesting 
发表于 2019-10-25
MSP430F149;一、基本时钟
//  ACLK = LFXT1 = 32768, MCLK = DCO Max, SMCLK = XT2//  //* XTAL's REQUIRED - NOT INSTALLED ON FET *////  //* Min Vcc required varies with MCLK frequency - refer to datasheet *// ////                MSP430F149//           
发表于 2019-10-25
MSP430F149;一、基本时钟
使用C语言进行单片机电子时钟课程设计
第一章 设计目的及要求1.目的通过对电子时钟系统进行编程与Protues仿真,进一步掌握单片机的组成,P1、P0、P2、P3口的应用,蜂鸣器的应用,定时中断程序的编写及应用,对之前学习的单片机课程进行回顾与应用;初步掌握Protues仿真方法以及用keil软件编写程序的方法。2.题目与要求本次课程设计的题目为:电子时钟的设计,其具体要求为:(1)能实现时、分、秒的显示;(2)能实现12、24小时制的切换;(3)能设定时间;(4)能设定闹钟;整个系统要设计键盘和显示器,利用单片机内部时钟完成定时器的定时设计。第二章 理论基础1.AT89C52芯片AT89C52芯片的引脚图如图1所示。图1 AT89C52芯片引脚其中主要应用到的引脚口
发表于 2019-12-06
使用C语言进行单片机电子时钟课程设计
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved