文档介绍:第6章 MSP430单片机及设计实例
一、MSP430单片机原理——1、概述
MSP430系列单片机是美国德州仪器(TI)公司1996年开始推向市场的一种16位单片机,采用精简指令集,是一种超低功耗的混合型单片机。
MSP430单片机的基本特点如下:
超低功耗——-、200-400uA电流、。
强大的处理能力——16位、RISC结构、指令及寻址方式丰富、8MHz时钟晶振指令周期125ns。
高性能模拟技术及丰富的片上外围模块——WDT、模拟比较器、硬件乘法器、液晶驱动器、10/12位ADC、I2C总线、DMA、UART、并行端口。
系统工作稳定——DCOCLK和MCLK配合工作。
方便高效的开发环境——支持汇编和C及JTAG调试接口
2、发展阶段
1996 —— 2000 年:33X 、 32X 、 31X 、11X 、 11X1 等系列。(特点:前三种系列具有LCD驱动模块、所有系列具有ROM、EPROM和OTP等形式。) 。
2000 ——2002年:F13X、F14X 、F41X 、F43X 、F44X 等系列。(特点:Flash 型、后三种系列具有液晶驱动器、拓展了显示存储器在存储区内的地址。)
2002——2003年:F15X、F16X系列。(特点:RAM容量大大增加(如F1611的RAM容量为10K);增加了 I 2 C 、 DMA 、 DAC12 和 SVS 等模块。)
3、MSP430单片机与51单片机的比较
89C51单片机是8位单片机,采用“CISC”,共111条指令;MSP430单片机是16位单片机,采用“RISC”,共27条指令。
89C 51 单片机电源电压是 5 伏,正常情况下消耗的电流为 24mA ,在掉电状态下,其耗电电流仍为 3mA ;即使在掉电方式下,电源电压可以下降到 2V ,但是为了保存内部 RAM 中的数据,还需要提供约 50uA 的电流;MSP430单片机则为超低功耗单片机。
89C51单片机受其结构本身限制,很难实现模拟功能部件的增加;MSP430单片机无论扩展 8 位功能模块还是 16 位的功能模块,即使扩展模/ 数转换或数/ 模转换这类的功能模块也很方便。
89C51单片机在线编程始终是个问题;但MSP430单片机不仅开发工具简便,而且价格也相对低廉,并且可以实现在线编程。
4、MSP430单片机的内部结构
MSP430 内部包含了计算机所有部件,是一个真正的单片机( 微控制器 MCU)。
5、MSP430单片机的CPU和存储器
CPU——;包含1个16位的ALU、16个寄存器和1个指令控制单元。16个寄存器中有4个为特殊用途:PC、SP、SR和CG1/CG2,其余为通用寄存器。
存储器——ROM和RAM为同一地址空间,从0000H~0FFFFH这一段范围内从低到高分别是:SFR、外围模块、数据存储器、程序存储器、中断向量表。不同型号的器件其存储器的具体组织不一样,主要不同在于数据存储器及代码存储器的容量、信息存储器和引导存储器的有无。ROM、RAM及外围模块通过内部总线与CPU相连,有的以字/字节访问,有的只能字访问,有的只能字节操作。
时钟输入源:
LFXT1CLK 低频时钟源
 XT2CLK 高频时钟源
DCOCL 数字控制RC振荡器
时钟输出信号
ACLK 辅助时钟
MCLK主系统时钟
SMCLK子系统时钟
慢速外设
CPU和
系统
快速外设
6、MSP430单片机的基本时钟模块
基本时钟编程示例//管中窥豹
例:设MSP430F149单片机的MCLK = XT2, SMCLK =DCOCLK,()。
实现上述功能的程序如下:
#include <>
void main(void)
{
unsigned int i;
WDTCTL = WDTPW + WDTHOLD; // 停止看门狗
P5DIR |= 0x10; // 输出
P5SEL |= 0x10; // 用作MCLK输出
续前页:
BCSCTL1 &= ~XT2OFF; // XT2有效
do
{
IFG1 &= ~OFIFG; //清除振荡器失效标志
for (i = 0xFF; i > 0; i--); // 稳定时间
}
while ((IFG1 & OFIFG) != 0); // 如果振荡器失效标志存在
BCSCTL2 |= SELM1; // MCLK = XT2
for (;;);
}
相关寄存器说明——基本时钟系统控制寄存器1
b7:XT2OFF,选择