MSP430单片机.ppt
《MSP430单片机.ppt》由会员分享,可在线阅读,更多相关《MSP430单片机.ppt(211页珍藏版)》请在一课资料网上搜索。
1、MSP430单片机单片机1MSP430系列单片机系列单片机原理与应用原理与应用MSP4302l参考书: 1. 谢兴红等著,MSP430单片机基础与实践 北京航空航天大学出版社,20082. 沈建华等著,MSP430系列16位超低功耗单片机原理与应用 清华大学出版社,2005MSP4303l一. MSP430单片机简介 l二. MSP430F149单片机结构l三. MSP430单片机片内外围模块及应用MSP4304一一. MSP430单片机简介单片机简介 1. MSP430系列单片机历史系列单片机历史 MSP430系列是一个16位的、具有精简指令集的、超低功耗的混合型单片机,在1996年问世,由
2、于它具有极低的功耗、丰富的片内外设和方便灵活的开发手段,已成为众多单片机系列中一颗耀眼的新星。回忆MSP430系列单片机的发展过程,可以看出有这样三个阶段: 开始阶段从1996年推出MSP430系列开始到2000年初,这个阶段首先推出有33X、32X、 3 1 X等几个系列,而后于2000年初又推出了l l X、l l X1系列。 MSP430的33X、32X、31X等系列具有LCD驱动模块,对提高系统的集成度较有利。每一系列有ROM型(C)、OTP型(P)、和 EPROM型(E)等芯片。EPROM型的价格昂贵,运行环境温度范围窄,主要用于样机升发。这也表明了这几个系列的升发模式,即:用户可以
3、用EPROM型开发样机;用OTP型进行小批量生产;而ROM型适应大批量生产的产品。MSP4305 2000年推出了1l X1 lX l系列。这个系列采用20脚封装,内存容量、片上功能和IO引脚数比较少,但是价格比较低廉。 这个时期的MSP430已经显露出了它的特低功耗等的一系列技术特点,但也有不尽如人意之处。它的许多重要特性,如:片内串行通信接口、硬件乘法器、足够的IO引脚等,只有33X系列才具备。33X系列价格较高,比较适合于较为复杂的应用系统。当用户设计需要更多考虑成本时,33X并不一定是最适合的。而片内高精度AD转换器又只有32X系列才有。 MSP4306 寻找突破,引入Flash技术随
4、着Flash技术的迅速发展, TI公司也将这一技术引入 MSP430系列中。在2000年7月推出Fl 3XF1 4X系列,在200 1年7月到2002年又相 继推出F41X、 F43X、 F44X这些全部是Flash型单片机。 F4 1 X单片机是目前应用比较广的单片机,它有48个IO口, 96段LCD驱动。 F43X、F44X系列是在13X、14X的基础上,增加了液晶驱动器,将驱动LCD的段数由3XX系列的最多120段增加到160段。并且相应地调整了显示存储器在存储区内的地址,为以后的发展拓展了空间。MSP4307 MSP430系列由于具有Flash存储器,在系统设计、开发调试及实际应用上都
5、表现出较明显的优点。这是TI公司推出具有Flash型存储器及JTAG边界扫描技术的廉价开发工具MSPFET430X110,将国际上先进的JTAG技术和Flash在线编程技术引入MSP430。 这种以Flash技术与FET开发工具组合的开发方式,具有方便、廉价、实用等优点,给用户提供了一个较为理想的样机开发方式。 另外,2001年TI公司又公布了BOOTSTRAP技术,利用它可在烧断熔丝以后只要几根线就可更改并运行内部的程序。这为系统软件的升级提供了又一方便的手段。 BOOTSTRAP具有很高的保密性,口令可达到32个字节的长度。 MSP4308 蓬勃发展阶段在前一阶段,引进新技术和内部进行调整
6、之后,为MSP430的功能扩展打下了良好的基础。于是TI公司在2002年底和2003年期间又陆续推出了F15X和 F16X系列的产品。 在这一新的系列中,有了两个方面的发展。一是从存储器方面来说,将RAM容量大大增加,如F1 6 l 1的RAM容量增加到了l0KB。这样一来,希望将实时操作系统(RTOS)引入MSP430的,就不会因RAM不够而发愁了。二是从外围模块来说,增加了I 2 C、DMA、DAC 12和SVS等模块。 在2003年中,TI公司还推出了专门用于电量计量的MSP430FE42X和用于水表、气表、热表上的具有无磁传感模块的MSP430FW42X单片机。我们相信由于MSP430
7、的开放性的基本架构和新技术的应用,新的MSP430的产品品种必将会不断出现。MSP4309 MSP430系列单片机的迅速发展和应用范围的不断扩大,主要取决于以下的特点。 a. 强大的处理能力: MSP430系列单片机是一个16位的单 片机,采用了精简指令集(RISC)结构,具有丰富的寻址方式(7种源操作数寻址、4种目的操作数寻址)、简洁的27条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可参加多种运算;还有高效的查表处理指令;有较高的处理速度,在8MHz晶体驱动下指令周期为125 ns。这些特点保证了可编制出高效率的源程序。 2 2、MSP430MSP430单片机的特点单片机的
8、特点MSP43010l b. 在运算速度方面,MSP430系列单片机能在8MHz晶体的驱动下,实现125ns的指令周期。16位的数据宽度、125ns的指令周期以及多功能的硬件乘法器(能实现乘加)相配合,能实现数字信号处理的某些算法(如FFT等)。l c. MSP430系列单片机的中断源较多,并且可以任意嵌套,使用时灵活方便。当系统处于省电的备用状态时,用中断请求将它唤醒只用6us。 MSP43011l d. 超低功耗 MSP430单片机之所以有超低的功耗,是因为其在降低芯片的电源电压及灵活而可控的运行时钟方面都有其独到之处。 首先,MSP430系列单片机的电源电压采用的是1.83.6V电压。因
9、而可使其在lMHz的时钟条件下运行时,芯片的电流会在200400uA左右,时钟关断模式的最低功耗只有01uA。 其次,独特的时钟系统设计。在MSP430系列中有两个不同的系统时钟系统:基本时钟系统和锁频环(FLL和FLL+)时钟系统或DCO数字振荡器时钟系统。有的使用一个晶体振荡器(32768Hz),有的使用两个晶体振荡器)。由系统时钟系统产生CPJ和各功能所需的时钟。并且这些时钟可以在指令的控制下,打开和关闭,从而实现对总体功耗的控制。 由于系统运行时打开的功能模块不同,即采用不同的工作模式,芯片的功耗有着显著的不同。在系统中共有一种活动模式(AM)和五种低功耗模式(LPMOLPM4)。在等
10、待方式下,耗电为0.7uA,在节电方式下,最低可达0.1uA。 MSP43012l e. 系统工作稳定 上电复位后,首先由DCOCLK启动CPU,以保证程序从正确的位置开始执行,保证晶体振荡器有足够的起振及稳定时间。然后软件可设置适当的寄存器的控制位来确定最后的系统时钟频率。如果晶体振荡器在用做CPU时钟MCLK时发生故障,DCO会自动启动,以保证系统正常工作;如果程序跑飞,可用看门狗将其复位。 MSP43013l f. 丰富的片上外围模块 MSP430系列单片机的各成员都集成了较丰富的片内外设。它们分别是看门狗(WDT)、模拟比较器A、定时器A (TimerA)、定时器B (TimerB)、
11、串口0、 1(USART0、1)、硬件乘法器、液晶驱动器、l 0位l 2位ADC、I 2 C、总线直接数据存取(DMA)、端口0(P0)、端口16(P1P6)、基本定时器(Bas i c Timer)等的一些外围模块的不同组合。其中,看门狗可以使程序失控时迅速复位;模拟比较器进行模拟电压的比较,配合定时器,可设计出AD转换器:16位定时器(Timer_A和Timer_B)具有捕获比较功能,大量的捕获比较寄存器,可用于事件计数、时序发生、PWM等;有的器件更具有可实现异步、同步及多址访问串行通信接U可方便的实现多机通信等应用:具有较多的IO端口,最多达6*8条IO口线: PO、 P1、 P2端口
12、能够接收外部上升沿或下降沿的中断输入; 1214位硬件AD转换器有较高的转换速率,最高可达200kbps,能够满足大多数数据采集应用:能直接驱动液晶多达160段:实现两路的12位DA转换;硬件I 2 C串行总线接口实现存储器串行扩展;以及为了增加数据传输速度,而采用直接数据传输(DMA)模块。MSP430系列单片机的这些片内外设为系统的单片解决方案提供了极大的方便。MSP43014l g. 方便高效的开发环境 目前MSP430系列有OPT型、FLASH型和ROM型三种类型的器件,这些器件的开发手段不同。对于OPT型和ROM型的器件是使用仿真器开发成功之后在烧写或掩膜芯片;对于FLASH型则有十
13、分方便的开发调试环境,因为器件片内有JTAG调试接口,还有可电擦写的FLASH存储器,因此采用先下载程序到FLASH内,再在器件内通过软件控制程序的运行,由JTAG接口读取片内信息供设计者调试使用的方法进行开发。这种方式只需要一台PC机和一个JTAG调试器,而不需要仿真器和编程器。开发语言有汇编语言和C语言。 MSP430单片机目前主要以FLASH型为主。l h. 适应工业级运行环境 MSP430系列器件均为工业级的,运行环境温度为一40+85摄氏度,所设计的产品适合用于工业环境下。 MSP43015l 我国的多数读者对89C 5 1系列的单片机是很熟悉的,为了加深对MSP430系列单片机的认
14、识,我们不妨将两者进行一下比较。l 首先,89C 51单片机是8位单片机。其指令是采用的被称为“CISC”的复杂指令集,共具有111条指令。而MSP430单片机是16位的单片机,采用了精简指令集(RISC)结构,只有简洁的27条指令,大量的指令则是模拟指令,众多的寄存器以及片内数据存储器都可参加多种运算。这些内核指令均为单周期指令,功能强,运行的速度快。3 3、MSP430MSP430系列与系列与89C5l89C5l系列的比较系列的比较 MSP43016l 再者,89C 5 1系列单片机由于其内部总线是8位的,其内部功能模块基本上都是8位的虽然经过各种努力其内部功能模块有了显著增加,但是受其结
15、构本身的限制很大,尤其模拟功能部件的增加更显困难。MSP430系列其基本架构是16位的,同时在其内部的数据总线经过转换还存在8位的总线,在加上本身就是混合型的结构,因而对它这样的开放型的架构来说,无论扩展8位的功能模块,还是16位的功能模块,即使扩展模数转换或数模转换这类的功能模块也是很方便的。这也就是为什么MSP430系列产品和其中功能部件迅速增加的原因。 MSP43017l 最后,就是在开发工具上面。对于89C51来说,由于它是最早进入中国的单片机,人们对它在熟悉不过了,再加上我国各方人士的努力,创造了不少适合我们使用的开发工具。但是如何实现在线编程还是一个很大的问题。对于MSP430系列
16、而言,由于引进了Flash型程序存储器和JTAG技术,不仅使丌发工具变得简便,而且价格也相对低廉,并且还可以实现在线编程。MSP43018l 其次,89C 5l单片机本身的电源电压是5伏,有两种低功耗方式:待机方式和掉电方式。正常情况下消耗的电流为24mA,在掉电状态下,其耗电电流仍为3mA;即使在掉电方式下,电源电压可以下降到2V,但是为了保存内部RAM中的数据,还需要提供约50uA的电流。而MSP430系列单片机在低功耗方而的优越之处,则是89C5l系列不可比拟的。正因为如此, MSP430更适合应用于使用电池供电的仪器、仪表类产品中。MSP430194. MSP430系列单片机命名规则系
17、列单片机命名规则MSP43020l 端口较容易损坏。l 外部输入中断优先级顺序不能编程。l 不能采用过多的浮点运算(所有处理器的特点)。5 5、MSP430MSP430单片机的其它特点单片机的其它特点 MSP43021二二. MSP430F149单片机结构单片机结构MSP43022MSP430X14X系列系列 MSP43023MSP43024MSP43025MSP43026MSP43027MSP43028MSP430 CPU的的16个寄存器个寄存器 简 写功 能 R0程序计数器PC R1堆栈指针SP,指向堆栈的栈顶 R2状态寄存器SR/常数发生器CG1 R3常数发生器CG2 R4通用寄存器R4
18、 R15通用寄存器R15MSP43029状态寄存器状态寄存器SR /R2/常数发生器常数发生器1 状态标志 : 控制标志 C :进位标志 GIE :中断标志位 Z :零标志 CPUOFF :CPU控制位 N :负标志 OscOFF:晶振控制位 V :溢出标志 SCG0,SCG1:时钟控制位MSP43030MSP430存储器结构和地址空间存储器结构和地址空间 MSP43031MSP430的低功耗模式的低功耗模式 MSP43032MSP430的低功耗模式的低功耗模式 MSP43033l MSP430的低功耗模式的低功耗模式 MSP43034系统响应中断的过程系统响应中断的过程 l 硬件自动中断服务
19、 l 执行中断处理子程序 l 执行RETI指令(中断返回) PC入栈 SR入栈 中断向量赋给PCGIT、CPUOFF、OSCOFF和SCG1清除IFG标志位清除(单源中断标志)MSP43035三三. MSP430单片机片内外围模块单片机片内外围模块l 1. MSP430时钟模块l 2. MSP430的端口l 3. 定时器l 4. USART模块l 5. FLASH存储器模块l 6. A/D及D/Al 7. 比较器Al 8. SPIl 9. I2Cl 10. MSP430液晶驱动模块l 11. DMA控制器MSP430361. MSP430时钟模块时钟模块l 高速晶体振荡器l 低速晶体振荡器l
20、数字控制振荡器DCOl 锁频环FLL以及锁频环增强版本FLL+ MSP43037MSP43038MSP430X1XX时钟模块时钟模块MSP43039振荡器控制逻辑振荡器控制逻辑MSP43040DCO频率的调节频率的调节 MSP43041DCO频率的调节频率的调节 MSP43042DCO频率的调节频率的调节 MSP43043时钟模块寄存器时钟模块寄存器1-DCOCTLMSP43044时钟模块寄存器时钟模块寄存器2-BCSCTL1MSP43045时钟模块寄存器时钟模块寄存器3-BCSCTL2MSP43046时钟模块寄存器时钟模块寄存器4-IE1MSP43047时钟模块寄存器时钟模块寄存器5-IFG
21、1MSP43048基础时钟模块工作方式和相关寄存器设置基础时钟模块工作方式和相关寄存器设置 例1设MCLK = XT2, SMCLK = DCOCLK,将MCLK由P5.4输出。(MSP430X14X中引脚P5.4和MCLK复用)。实现上述功能的程序如下:#include void main(void) unsigned int i; WDTCTL = WDTPW + WDTHOLD; / 停止看门狗 P5DIR |= 0 x10; / P5.4 输出P5SEL |= 0 x10; / P5.4 用作MCLK输出 BCSCTL1 &= XT2OFF; / XT2有效do IFG1 &= OFI
22、FG; /清除振荡器失效标志for (i = 0 xFF; i 0; i-); / 稳定时间 while (IFG1 & OFIFG) != 0); / 如果振荡器失效标志存在 BCSCTL2 |= SELM1; / MCLK = XT2 for (;); MSP43049例例:l void clock_set(void)l l IFG2=0;l IFG1=0;l _DINT();l _BIC_SR(OSCOFF);l BCSCTL1&=XTOFF;/LFXT2关闭l BCSCTL1|=RSEL1+RSEL0+XTS;l BCSCTL1&=RSEL2;l waiting(6000); l IF
23、G1 &=OFIFG;l BCSCTL2|=SELM1+SELM0;l waiting(500);l MSP43050MSP430F4XX系列时钟模块系列时钟模块 MSP43051FLL+模块应用举例模块应用举例 例1 设:ACLK = LFXT1 = 32768Hz, 令MCLK = SMCLK = DCOCLK = (n+1) ACLK,并将MCLK和ACLK分别通过P1.1和P1.5输出。程序代码如下#include msp430 x44x.hvoid main(void) WDTCTL = WDTPW + WDTHOLD; / 停止看门狗 SCFI0 |= FN_2; /设置锁相环频率
24、调整范围 FLL_CTL0 = XCAP18PF; /设置锁相环频率控制寄存器SCFQCTL = 74; / (74+1) 32768 = 2.45MhzP1DIR = 0 x22; / P1.1 & P1.5 输出 P1SEL = 0 x22; / P1.1 & P1.5输出 MCLK & ACLK while(1); 内部DCO 2.45Mhz,P1.1- MCLK = 2.45Mhz,P1.5- ACLK = 32khz MSP43052低功耗低功耗l 使用内部时钟发生器(DCO)无需外接任何元件 l 选择外接晶体或陶瓷谐振器,可以获得最低频率和功耗 l 采用外部时钟信号源l 瞬间响应特
25、性 MSP43053MSP43054例:系统初始化完毕之后工作于低功耗模式0,中断事件触发到活动模式,中断处理结束后进入到低功耗模式3。;主程序.;初始化操作开始;初始化完毕BIS #GIE+CPUOFF,SR ; 主程序中设置低功耗模式0;.; 程序在这里停止;;中断子程序;中断处理开始;中断处理结束BIS #GIE+CPUOFF+SCG1+SCG0,0(SP);设置SR为低功耗模式3RETI;中断返回;系统进入低功耗模式3。 低功耗低功耗0转变为低功耗转变为低功耗3MSP43055;主程序.;初始化操作开始;初始化完毕BIS #GIE+CPUOFF,SR ; 主程序中设置低功耗模式0L1



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MSP430 单片机
