【MSP430i2xx教程第二讲】时钟系统 & EUSCI_A_UART

[复制链接]
42003|276
734774645 发表于 2015-4-1 16:45 | 显示全部楼层
pywmiss 发表于 2015-4-1 16:19
我也在学430,,,,一直用台湾的松翰单片机...
现在学430觉得很多不习惯的...感觉仿真也不那么顺利...拖得好久 ...

楼主,你直接可以使用内部DCO就行了,其他的就别用了,这MCLK和SMCLK只是时钟系统可以提供不同频率的信号给系统不同的设备使用,比如MCLK就是CPU核心的,SMCLK可以分频后提供给ADC等外设使用。哈哈,不要纠结,低功耗是430的优点,实现的方式就是时钟系统配合分级休眠模式。
pywmiss 发表于 2015-4-1 16:52 | 显示全部楼层
是的..基本的都学习了..DCO.跟松翰单片机...一样都是内置的晶振....就是搞太久了...越来越没有动力..呵呵
dirtwillfly 发表于 2015-4-1 16:56 | 显示全部楼层
pywmiss 发表于 2015-4-1 16:19
我也在学430,,,,一直用台湾的松翰单片机...
现在学430觉得很多不习惯的...感觉仿真也不那么顺利...拖得好久 ...

是的。不过这个教程是针对msp430i2xx系列的,讲的是该系列的库函数
feiting94 发表于 2015-4-1 16:58 | 显示全部楼层
DCO 全称是Digitally Controlled Oscillator(DCO),DCO一共有两种模式,内部部电阻模式(Internal Resistor Mode)和外部电阻模式(External Resistor Mode),通过 CSCTL0寄存器的DCOR位选择。注意旁路模式是通过CSCTL0寄存器的DCOBYP位置1选择的。通过datasheet了解到,外部电阻模式提供更高的时钟精度在绝对容度和温度漂移方面,原文为This mode offers higher clock accuracy in terms of absolute tolerance and temperature drift compared to internal resistor mode
Leeone 发表于 2015-4-1 17:00 | 显示全部楼层
1、内部振荡器能不能屏蔽,外接有源晶振
2、内置空闲线和地址位通信协议的多处理器系统,这个是怎么应用的,有没有案例分析下;这个支不支持串口接受空闲中断
数码小叶 发表于 2015-4-1 17:06 | 显示全部楼层
强仔00001 发表于 2015-4-1 12:15
占座,有些问题:现在的MSP430的DCO产生的时钟频率和接外部晶振产生的频率那个更稳定和准确,还 ...

一般来讲都是外接的吧,也不一样,看你买的啥了,至于省电,内接的DCO有配置寄存器,应该更省吧
数码小叶 发表于 2015-4-1 17:10 | 显示全部楼层
hanzhenfei 发表于 2015-4-1 12:44
DCO旁路模式什么概念?

说的简单点,就是用外接的震荡源,将内部的DCO旁路不用
数码小叶 发表于 2015-4-1 17:13 | 显示全部楼层
pywmiss 发表于 2015-4-1 16:19
我也在学430,,,,一直用台湾的松翰单片机...
现在学430觉得很多不习惯的...感觉仿真也不那么顺利...拖得好久 ...

430为了降低功耗,有不同的时钟,在不同的低功耗模式下,关闭不同的时钟的时钟,最大化的降低功耗,因为430的看门狗默认是开启的,和AVR或其他的默认关闭不一样,所以一般教程都是第一,关闭看门狗喽:D:D:D
feiting94 发表于 2015-4-1 17:14 | 显示全部楼层
将printf函数移植到UART程序中,很好用的
#if 1
#pragma import(__use_no_semihosting)                          
struct __FILE
{
        int handle;
};

FILE __stdout;      
_sys_exit(int x)
{
        x = x;
}
int fputc(int ch, FILE *f)
{        
        while((UCAxIFG&0X08)==0);//bit3 UCTXCPTIFG,传输完成标志
        UCAxTXBUF = (u8) ch;      
        return ch;
}
#endif

评分

参与人数 1威望 +6 收起 理由
dirtwillfly + 6 很给力!

查看全部评分

必胜客A 发表于 2015-4-1 18:22 | 显示全部楼层
不错不错先占个位置
mmuuss586 发表于 2015-4-1 18:27 | 显示全部楼层

内容编辑是干啥的
hanzhenfei 发表于 2015-4-1 19:21 | 显示全部楼层
本帖最后由 hanzhenfei 于 2015-4-1 19:23 编辑
钟模块有四个系统时钟信号可以使用:
ACLK:辅助时钟。当运行在DCO时,ACLK是固定在32kHz。如果设备是设置在DCO旁路模式,ACLK运行在旁路时钟频率的1/512。
MCLK:主时钟。MCLK可以被1,2,4,8或16分频。MCLK通常被CPU和系统使用。
SMCLK:子系统主时钟。SMCLK可以被1,2,4,8或16分频。SMCLK可以被各个外围模块通过软件选择使用。
SD24CLK:SD24时钟提供一个1.024MHz固定频率的时钟给Sigma-Delta ADC(SD24)。
  该时钟只为SD24的请求所使用。如果SD24功能必须在DCO旁路模式下工作,那么外部时钟频率必须是16.384Mhz。

430单片机时钟模块正是因为有这些时钟源配合不同的低功耗模式保证超低功耗。这个系列ACLK时钟32k的,记得G系列好像是12k的。去年做了一种产品因为功耗要求很低,5uA,使用三年,就是选用了G系列的MCU,MCU大部分时间处于休眠状态LPM3,定时器工作在ACLK时钟下。。。
mintspring 发表于 2015-4-1 19:50 来自手机 | 显示全部楼层
430最难的就是时钟系统,有了库函数以后用方便多了
dirtwillfly 发表于 2015-4-1 20:04 | 显示全部楼层
mmuuss586 发表于 2015-4-1 18:27
内容编辑是干啥的

就是传说中的小编;P
dirtwillfly 发表于 2015-4-1 20:06 | 显示全部楼层
Leeone 发表于 2015-4-1 17:00
1、内部振荡器能不能屏蔽,外接有源晶振
2、内置空闲线和地址位通信协议的多处理器系统,这个是怎么应用的 ...

先回答第一个问题:可以根据需要选择使用内部振荡器或者外部晶振。
yaoyuanytu 发表于 2015-4-1 20:13 | 显示全部楼层
可以使用内部晶振,也可以使用外部晶振。我觉得内部晶振可能不那么精确,应该和ST的芯片差不错内部晶振不精确;另外不同的时钟给不同的设备用,类似ST的模式。只是我看430f149外部晶振一般都是用4MH的,不知道是不是只能是4MHZ的?

打赏榜单

21小跑堂 打赏了 5.00 元 2015-08-06

评论

你打赏我买单活动奖励发在这啦~~  发表于 2015-8-6 16:52
dirtwillfly 发表于 2015-4-1 20:29 | 显示全部楼层
yaoyuanytu 发表于 2015-4-1 20:13
可以使用内部晶振,也可以使用外部晶振。我觉得内部晶振可能不那么精确,应该和ST的芯片差不错内部晶振不精 ...

不是的,也可以选择其他频率
月下飞鸿 发表于 2015-4-1 20:58 | 显示全部楼层
刚学430,不太懂,有个弱智的问题想问一下,如果不是MSP430i2系列的单片机,而是MSP430F6系列的,可不可以用库函数进行程序的编写?
dirtwillfly 发表于 2015-4-1 21:06 | 显示全部楼层
Leeone 发表于 2015-4-1 17:00
1、内部振荡器能不能屏蔽,外接有源晶振
2、内置空闲线和地址位通信协议的多处理器系统,这个是怎么应用的 ...

第二个问题,我翻了翻手册,也没看到空闲中断,可能是没有这个中断。
@gaoyang9992006 也帮忙看看。不知道库函数里有没有相关例程
dirtwillfly 发表于 2015-4-1 21:07 | 显示全部楼层
月下飞鸿 发表于 2015-4-1 20:58
刚学430,不太懂,有个弱智的问题想问一下,如果不是MSP430i2系列的单片机,而是MSP430F6系列的,可不可以 ...

可以的,不过MSP430F6系列的库函数,和msp430i2xx系列的有一些差异。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部