资源预览内容
第1页 / 共64页
第2页 / 共64页
第3页 / 共64页
第4页 / 共64页
第5页 / 共64页
第6页 / 共64页
第7页 / 共64页
第8页 / 共64页
第9页 / 共64页
第10页 / 共64页
亲,该文档总共64页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 http:/www.M 微控设计网微控设计网 中国中国 MSP430 单片机专业网站单片机专业网站 MSP430F 常用模块应用原理 微控设计网 版主 DC 策划 原创于:2006- 3- 7 最后更新:2008- 5- 31 V8.2 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 为了更好地引导 MSP430 单片机爱好者的入门, 微控设 计网为大家整理了一个份 MS430 单片机入门资料, 希望能 够帮助到更多的国内单片机爱好者朋友。 如果你在学习或应用 MSP430 单片机过程中想与同行 分享成果或交流技术问题, 欢迎进入我们的微控技术论坛。 欢迎购买微控设计网 MSP430 单片机开发工具 DC 版主 QQ: 108517559 模块列表 1- 复位模块 2- 时钟模块 3- IO 端口模块 4- WDT 看门狗模块 5- Timer A 定时器模块 6- 比较器 A 模块 7- ADC12 数模转换模块 8- USART 串行异步通讯模块 9- CPU 模块及全局资料 10- MSP430 其它应用介绍 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 1- 复位模块复位模块 MSP430 单片机系统复位电路单片机系统复位电路 从上 MSP430 系统复位电路功能模块图中可以看到了两个复位信号,一个是上电复位信 号 POR(Power On Reset)和上电清除信号 PUC(Power Up Clear)。 POR 信号是器件的复位信号,此信号只有在以下的事件发生时才会产生: 器件上电时。 RST/NMI 引脚配置为复位模式,当 RST/NMI 引脚生产低电平时。 当 POR 信号产生时, 必然会产生 PUC 信号; 而 PUC 信号的产生时不会产生 POR 信号。 会引起产生 PUC 信号的事件: POR 信号发生时。 启动看门狗时,看门狗定时器计满时。 向看门狗写入错误的安全参数值时。 向片内 FLASH 写入错误的安全参数值时。 MSP430 单片机系统复位后器件的初始单片机系统复位后器件的初始 当 POR 信号或 PUC 信号发生时引起器件复位后,器件的初始化状态为: RST/NMI 引脚配置为复位模式。 I/O 引脚为输入模式。 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 装态寄存器复位。 程序计数器(PC)装入复位向量地址 0xFFFE,CPU 从此地址开发始执行。 其它模块的寄存器初始化,详情请查器件手册。 POR 和 PUC 两者的关系: POR 信号的产生会导致“系统复位”并“产生 PUC 信号”。 而 PUC 信号不会引起 POR 信号 的产生。 无论是POR信号还是PUC信号触发的复位,都会使 MSP430 从地址0xFFFE 处读取复位中 断向量,程序从中断向量所指的地址处开始执行。 触发 PUC 信号的条件中,除了 POR 产生触发 PUC 信号外,其他的豆科一通过读取相应的中断向量来判断是何种原因引起的 PUC信号,以便 作出相应的处理。 系统复位(指 POR)后的状态为: (1) RST/NMI 管脚功能被设置为复位功能; (2)所有 I/O 管脚被设置为输入; (3)外围模块被初始化,其寄存器值为相关手册上的默认值; (4)状态寄存器 SR 复位; (5)看门狗激活,进入工作模式; (6)程序计数器 PC 载入 0xFFFE 处的地址,微处理器从此地址开始执行程序。 典型的复位电路有一下 3 种: (1) 在 RST/NMI 管脚上接 100K 欧的上拉电阻。 (2)在1的基础上再接 0.1uf 的电容,电容的一端接地,可以使复位更加可靠。 (3)在2的基础上,再在电阻上并接一个型号为 IN4008 的二极管,可以可靠的实现系统断电 后立即上电。 2- 时钟模块时钟模块 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 MSP430F1XX 系列时钟模块图 时基模块结构如上图: MSP430 系列单片机基础时钟主要是由低频晶体振荡器,高频晶体振荡器,数字控制 振荡器(DCO),锁频环(FLL)及 FLL+等模块构成。由于 430 系列单片机中的型号不同, 而时钟模块也将有所不同。虽然不同型号的单片机的时基模块有所不同,但这些模块产 生出来的结果是相同的.在 MSP430F13、 14 中是有 TX2 振荡器的, 而 MSP430F11X,F11X1 中是用 LFXT1CLK 来代替 XT2CLK时钟信号的.在时钟模块中有 3 个(对于 F13,F14)时钟 信号源(或 2 个时钟信号源,对于 F11X、F11X1): 1- LFXT1CLK: 低频/高频时钟源.由外接晶体振荡器,而无需外接两个振荡电容器.较 常使用的晶体振荡器是 32768HZ。 2- XT2CLK: 高频时钟源.由外接晶体振荡器。需要外接两个振荡电容器,较常用 的晶体振荡器是 8MHZ。 3- DCOCLK: 数字可控制的 RC 振荡器。 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 MSP430 单片机时钟模块提供 3 个时钟信号输出,以供给片内各部电路使用。 1- ACLK: 辅助时钟信号.由图所示,ACLK 是从 FLXT1CLK 信号由 1/2/4/8 分频器分 频后所得到的.由 BCSCTL1 寄存器设置 DIVA 相应为来决定分频因子.ACLK 可用于提供 CPU 外围功能模块作时钟信号使用. 2- MCLK: 主时钟信号.由图所示,MCLK 是由 3 个时钟源所提供的。他们分别是 LFXT1CLK,XT2CLK(F13、F14,如果是 F11,F11X1 则由 LFXT1CLK 代替),DCO 时钟 源信号提供.MCLK 主要用于 MCU 和相关系统模块作时钟使用。同样可设置相关寄存器 来决定分频因子及相关的设置。 3- SMCLK: 子系统时钟,SMCLK 是由 2 个时钟源信号所提供.他们分别是 XT2CLK(F13、F14)和 DCO,如果是 F11、F11X1 则由 LFXT1CLK 代替 TX2CLK。同样 可设置相关寄存器来决定分频因子及相关的设置。 MSP430X1X1 系列产品中,其中 XT1 时钟源引脚接法有如 3 种应用。F13、14 的 XT1 相 同。需要注意的是,LFXT1 只有工作在高频模式下才需要外接电容。 对以引脚较少的 MSPX1XX 系列产品中有着不同时基模块,具体如下: MSP430X11X1:LFXT1CLK , DCO MSP430F12X: LFXT1CLK , DCO MSP430F13X/14X/15X/16X:LFXT1CLK , DCO , XT2CLK MSP430F4XX: LFXT1CLK , DCO , XT2CLK , FLL+ 时钟发生器的原理说明: 问题的提出:1、高频、以便能对系统硬件请求和事件作出快速响应 2、低频率,以便将电流消耗降制至最少 3、稳定的频率,以满足定时器的应用。 4、低 Q 值振荡器,以保证开始或停止操作没有延时 MSP430 采用了一个折衷的办法:就是用一个低频晶镇振,将其倍频在高频的工作频率 上。一般采用这种技术的实用方法有两种,一个是说、锁相环、 一个是锁频环,而锁相 环采用模拟的控制容易引起 “失锁” 和易引起电容量的改变。 而 TI 采用的是锁频环技术, 它采用数字控制器 DCO 和频率积分来产 生高频的运行时钟频率。 低功耗设置的技巧问题: 1、LPM4:在振荡器关闭模式期间,处理机的所有部件工作停止,此时电流消 耗最小。此时只有在系统上电电路检测到低点电平或任一请求异步响应中断的外部中断 事件时才会从新工作。因此在设计上应含有可能需要用到的外部中断才采用这种模式。 否则发生不可预料的结果。 2、LPM3:在 DC 发生器关闭期间,只有晶振是活动的。但此时设置的基本时序条 件的 DC 发生器的 DC 电流被关闭。由于此电路的高阻设计,使功耗被抑制。注:当从 DC 关闭到启动 DC0 要花一端时间 (ns- us) 3、LPM2:在此期间,晶镇振和 DC 发生器是工作的,所以可实现快速启动。 4、LPM1:在此振荡器已经工作,所以不存在启动时间延时问题。 结合上述特点,在写程序时要综合考虑低功好耗特性,对外部事件的安排也很 重要。你必须在功能实现上综合考虑才能达到你预期的效果。使用 C 语言可用如下的语 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 句:_BIS_SR(LMP3_bits)和_BIC_SR(LPM3 bits) LPM3 和 LPM3_EXIT 它们的定义是一样的。这里说明在 C 语言环境中有些定义的函数是不可见的。但你可以 从 in430.h 文件看到它们的定义。 DCOCTL DCO 控制寄存器控制寄存器 7 6 5 4 3 2 1 0 DCO.2 DCO.1 DCO.0 MOD.4 MOD.3 MOD.2 MOD.1 MOD.0 DCO.0- DCO.4 定义 8 种频率之一,可以分段调节 DCOCLK 频率,相邻两种频率相差 10%。而频率由注入直流发生器的电流定义。 MOD.0- MOD.4 定义在 32 个 DCO 周期中插入的 Fdco+1 周期个数, 而在下的 DCO 周期 中为 Fdco 周期,控制改换 DCO 和 DCO+1 选择的两种频率。如果 DCO 常数为 7,表示 已经选择最高频率,此时不能利用 MOD.0- MOD.4 进行频率调整。 BCSCTL1 基本时钟系统控制寄存器基本时钟系统控制寄存器1 7 6 5 4 3 2 1 0 XT2OFF TXS DIVA.1 DIVA.0 XT5V Rsel.2 Resl.1 Resl.0 XT2OFF 控制 XT2 振荡器的开启与关闭。 TX2OFF=0,XT2 振荡器开启。 TX2OFF=1,TX2 振荡器关闭(默认为 TX2 关闭) XTS 控制 LFXT1 工作模式,选择需结合实际晶体振荡器连接情况。 XTS=0,LFXT1 工作在低频模式(默认) 。 XTS=1,LFXT1 工作在高频模式(必须连接有高频相应的高频时钟源) 。 DIVA.0 DIVA.1 控制 ACLK 分频。 0 不分频(默认) 1 2 分频 2 4 分频 3 8 分频 XT5V 此位设置为 0。 Resl1.0,Resl1.1,Resl1.2 三位控制某个内部电阻以决定标称频率。 Resl=0,选择最低的标称频率。 Resl=7,选择最高的标称频率。 BCSCTL2 基本时钟系统控制寄存器基本时钟系统控制寄存器2 7 6 5 4 3 2 1 0 SELM.1 SELM.0 DIVM.1 DIVM.0 SELS DIVS.1 DIVS.0 DCOR SELM.1 SELM.0 选择 MCLK 时钟源 http:/www.M 微控设计网 微控设计网为你准备的 MSP430F 单片机入门必修课 0 时钟源为 DCOCLK(默认) 1 时钟源为 DCOCLK 2 时钟源为 LFXT1CLK(对于 MSP430F11/12X),时钟源为 XT2CLK(对 于 MSP430F13/14/15/16X); 3 时钟源为 LFTXTICLK。 DIVM.1 DIVM.0 选择 MCLK 分频 0 1 分频(默认) 1 2 分频 2 4 分频 3 8 分频 SELS 选择 SMCLK 时钟源 0 时钟源为 DCOCLK(默认) 1 时钟源为 LFXT1CLK(
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号