MSP430简介(超详细·)
第2章第1节MSP430概述
……
CMP x , y JC less …… …… ;x-y ;若 C=1 , x<y , 转至 less处运行 ;否则x>=y 运行此指令
less: ……
……
;less处的指令
Z:零标志(Zero Flag) 若运算结果为 0 时,则Z=1,否则Z=0 例:CMP指令与Z标志结合测试两个操作数是否相等: ……
计算机的基本组成和工作原理
输 入 设 运算器ALU
存储器
输 出 设
备 控制器
CPU
备
1.以二进制表示数据和指令(程序)
? ? ?
要 点
2. “存储程序” 3. 五大组成部分
+
“程序控制”
冯· 诺依曼计算机
微机的基本结构
输入/输出 设备1 输入/输出 设备n
CPU
运算器 + 控制器 + 寄存器
第一章 MSP430F149简介
第一章MSP430单片机简介本章主要内容:一、MSP430单片机是什么以及它的特点;二、MSP430单片机的结构;本章重点内容:MSP430单片机的结构§1.1MSP430系列单片机MSP430系列单片机是美国TI公司1996年推出的一种16位超低功耗单片机,由MSP430单片机CPU和针对不同应用而配置的外设模块构成。
MSP430F149单片机主要特点:超低功耗RAM保持模式耗电:0.1uA实时时钟模式耗电:0.8uA全速模式耗电:250uA/MIPS五种省电模式:LPM0:CPU、MCLK禁止LPM1:CPU、MCLK禁止,若DCO未用则DC发生器禁止LPM2:CPU、MCLK、SMCLK禁止,若DCO未用则自动关闭LPM3:CPU、MCLK、SMCLK、DCO禁止,DC发生器禁止LPM4:CPU、MCLK、SMCLK、ACLK、DCO禁止,DC发生器禁止从待机模式唤醒时间:6us16位RISC,125ns指令周期12位ADC,带内部参考源、采样保持双12位DAC16位定时器Timer_A,带3个捕获/比较寄存器16位定时器Timer_B,带7个捕获/比较寄存器片内比较器A串行在线编程,无需外部编程电压,可编程的保密熔丝代码保护2个异步串行通信接口(USART0,USART1)§1.2MSP430F149单片机结构一、MSP430x14x单片机结构框图如图1-1所示,构成模块有:1、系统时钟振荡器:产生3个时钟信号ACLK、SMCLK、MCLK;2、60KB Flash代码存储器;3、2KB RAM数据存储器;4、8通道12位ADC,转换时间小于10us;5、具有中断功能的P1、P2口;6、普通I/O口P3~P6;7、16位定时器Timer_A,带3个捕获/比较寄存器8、16位定时器Timer_B,带7个捕获/比较寄存器9、片内比较器A、16位看门狗定时器、硬件乘法器10、2个异步串行通信接口(USART0,USART1)11、JTAG调试仿真模块12、16位的CPU二、MSP430x14x单片机封装引脚图如图1-2所示,MSP430x14x单片机芯片总共有64个引脚。
MSP430单片机及设计实例
基于MSP430单片机的医疗设备控制系统
总结词
高可靠性、实时性、安全性
详细描述
MSP430单片机在医疗设备控制系统中具有高可靠性和实时性,能够满足医疗设备对安全性的高要求 。通过与各类传感器和执行器配合,实现对医疗设备的精确控制,如输液泵、监护仪等。系统可提高 医疗设备的自动化水平,减轻医护人员的工作负担。
通过PWM信号控制电机驱动器,实现电机的调速和方向控制。
速度与位置控制
通过编码器检测电机的实际速度和位置,实现闭环控制。
基于MSP430单片机的无线通信系统设计
无线通信模块选择
选择合适的无线通信模块,如Wi-Fi、蓝牙、Zigbee等。
MCU与无线通信模块接口
通过串口或SPI接口实现数据传输和控制。
数据传输与接收
实现数据的发送和接收,并进行必要的处理和显示。
05
MSP430单片机应用实例
基于MSP430单片机的智能家居控制系统
总结词
低功耗、高效能、易于扩展
详细描述
MSP430单片机以其低功耗和高性能在智能家居控制系统中得到广泛应用。通过与传感器、执行器等外围设备连 接,实现对家居环境的智能监控和控制,如温度、湿度、光照等。系统可扩展性强,可接入各种智能设备,为用 户提供便捷的生活体验。
基于MSP430单片机的工业自动化控制系统
总结词
抗干扰能力强、适应性强、易于维护
详细描述
MSP430单片机在工业自动化控制系统中表现出抗干扰能力强、适应性强和易于维护等 优点。广泛应用于各种工业控制领域,如电机控制、过程控制等。系统可提高生产效率,
降低能耗,为企业带来经济效益。
THANKS
感谢观看
MSP430单片机的编程语言
第1讲 MSP430单片机概述及开发环境
| ^ ~ <<
>>
若 P1 端 口 输 出 寄 存 器 P1OUT=00001111 , 则 执 行 按位相与,均为1时,结果为1 P1OUT=P1OUT&111111110;语句后,P1OUT=00001110, 即把最后一位输出拉低,其余位不变。 若 P1OUT=00001111 , 则 执 行 按位相或,有1则结果为1,均为0时结果 P1OUT=P1OUT|10000000; 语 句 后 , P1OUT=10001111 , 为0 即把第一位输出拉高其余位不变。 按位异或,两个变量相同时,结果为0; 若 P1OUT=00001111 , 则 执 行 两个变量不同时,结果为1 P1OUT=P1OUT^00111100; 语 句 后 , P1OUT=00110011 。 若P1OUT=00001111,则执行P1OUT=~P1OUT;语句后, 按位取反,1取反后为0;0取反后为1 P1OUT=11110000。 左移,把第一个变量的二进制位左移第 二个变量指定的位数,其左移出的数据丢 若a=00100010,则执行a<<2;语句后,a=10001000。 弃,变量右侧补“0” 右移,把第一个变量的二进制位右移第 二个变量指定的位数,其右移出的数据丢 若a=00100010,则执行a>>2;语句后,a=00001000。 弃,变量左侧补“0”
符号
> >= ==
含义
大于 大于等于 等于
设:a=4,b=5
a>b 返回值0 a>=b 返回值0 a==b 返回值0
<
<= !=
小于
小于等于 不等于
a<b 返回值1
msp430
MSP430单片机系列种类
非基于LCD
MSP430x1xx: : 基于闪存/ ROM的MCU提供 伏至3.6伏的工作电压, 基于闪存 的 提供1.8伏至 伏的工作电压, 提供 伏至 伏的工作电压 高达60kB和8MIPS(带有基本时钟 带有基本时钟) 高达 和 带有基本时钟 MSP430F2xx: : 基于闪存的MCU 提供 提供1.8 伏至 伏至3.6 伏工作电压,掉电复位及 伏工作电压, 基于闪存的 16MIPS(带有基本时钟 带有基本时钟) 带有基本时钟 MSP430F5XX: : 基于闪存的MCU 提供 提供1.8 伏至 伏至3.6 伏工作电压,掉电复位及 伏工作电压, 基于闪存的 18MIPS(带有基本时钟 带有基本时钟) 带有基本时钟
各模块简要介绍— 5,Msp430f247的基准时钟系统
系统复位后: 系统复位后: MCLK和SMCLK由DCO提供, 提供, 和 由 提供 ACLK由LFXT1提供 由 提供
以下是DCO设置程序: //设定DCO为16MHZ : BCSCTL1 =CALBC1_16MHZ; DCOCTL =CALDCO_16MHZ; 可选频率1M,8M,12M,16M 读取0x10f9和0x10f8两 个地址里面 16MHzDCO常数分别 装入BCSCTL1和 DCOCTL两个寄存器
MSP430单片机的应用领域
日常公用测量 水表,气表,自动抄表, 水表,气表,自动抄表,先进电 表网络基础设施, 表网络基础设施,热分配表 便携式消费 无线鼠标和键盘,触摸按键, 无线鼠标和键盘,触摸按键, 手机,数码相机, 手机,数码相机,MP3 电动牙刷,剃须刀, 电动牙刷,剃须刀,运动手表等
主要内容
Msp430单片机简介 Msp430单片机简介 Msp430单片机的结构及主要模块 Msp430单片机的结构及主要模块 Msp430单片机的具体应用 Msp430单片机的具体应用 —位移测量装置 位移测量装置
MSP430简介_中文
Energia中极为丰富的示例程序:
包括数字量、模拟 量、串口通信、集 成传感器等例程
插上Lauchpad能够自 动生成虚拟的串口
MSP430 | Ultra-Low Power is in our DNA
更简易的编程方式:
基于Energia和ArduBlock的图形编程
从左端的工具框中 拖出逻辑模块和外 设模块,按照接口 的对接完成程序流 程的构建
LaunchPad 开发板初探:
USB 仿真连接
嵌入式仿真 6-pin eZ430 Connector Crystal Pads Chip Pinouts Part and Socket
P1.3 Button LEDs and Jumpers P1.0 & P1.6
Power Connector Reset Button
MSP430 | Ultra-Low Power is in our DNA
The TI Development Programme
MSP430 Launchpad 基于 Arduino系统的介绍
——上海交通大学
Shanghai Jiaotong university
MSP430 | Ultra-Low Power is in our DNA
—— Launchpad的扩展
基于Launchpad的简易收音机
基于Launchpad的空中鼠标
基于Launchpad的简易播放器
像Arduino系统一样添加传感器
MSP430 | Ultra-Low Power is in our DNA
—— Launchpad的扩展
模拟电压的测量
像Arduino系统一样添加传感器
MSP430系列单片机简介
MSP430系列单片机简介1、MSP430 单片机的发展MSP430 系列是一个16 位的、具有精简指令集的、超低功耗的混合型单片机,在1996 年问世,由于它具有极低的功耗、丰富的片内外设和方便灵活的开发手段,已成为众多单片机系列中一颗耀眼的新星。
回忆MSP430 系列单片机的发展过程,可以看出有这样三个阶段:开始阶段从1996 年推出MSP430 系列开始到2000 年初,这个阶段首先推出有33X 、32X 、31X 等几个系列,而后于2000 年初又推出了11X 、11X1 系列。
MSP430 的33X 、32X 、31X 等系列具有LCD 驱动模块,对提高系统的集成度较有利。
每一系列有ROM 型(C )、OTP 型(P )、和EPROM 型( E )等芯片。
EPROM 型的价格昂贵,运行环境温度范围窄,主要用于样机开发。
这也表明了这几个系列的开发模式,即:用户可以用EPROM 型开发样机;用OTP 型进行小批量生产;而ROM 型适应大批量生产的产品。
2000 年推出了11X/11X1 系列。
这个系列采用20 脚封装,内存容量、片上功能和I/O 引脚数比较少,但是价格比较低廉。
这个时期的MSP430 已经显露出了它的特低功耗等的一系列技术特点,但也有不尽如人意之处。
它的许多重要特性,如:片内串行通信接口、硬件乘法器、足够的I/O 引脚等,只有33X 系列才具备。
33X 系列价格较高,比较适合于较为复杂的应用系统。
当用户设计需要更多考虑成本时,33X 并不一定是最适合的。
而片内高精度A/D 转换器又只有32X 系列才有。
寻找突破,引入Flash 技术随着Flash 技术的迅速发展,TI 公司也将这一技术引入MSP430 系列中。
在2000 年7 月推出F13X/F14X 系列,在2001 年7 月到2002 年又相继推出F41X 、F43X 、F44X 这些全部是Flash 型单片机。
F41X 单片机是目前应用比较广的单片机,它有48 个I/O 口,96 段LCD 驱动。
MSP430铁电产品的路线图原理及功能介绍
行速率,如果满速跑没有这幺低功耗。有些场景我们的机器其实大部分都在
待机,等待定时采样一下或者外部传感器变化了出发采集,那幺待机模式能
做到0.5uA,这个时候其实部分外设是不工作了,是与运行模式的主要差
别。如果有些仪器甚至不会周期性工作,必须等待用户操作了之后才进行工
作,那平时进入关闭模式做到0.1uA就很小很小了,可能耗电速度赶不上电
池自放电的速度了。上面的这些模式需要我们用的时候根据场景灵活安排,
如果上来就最好频率甚至超频运行,使能不需要的管脚输出以及外设,想做
到超低功耗也是很难的。
快速唤醒
MSP430唤醒时间不到1us,对使用的实时性影响较小。
各种外设
这里总的来说,在2553上就有16位比较器(位长越长可设置的定时时间
越长),IO引脚触摸功能,UART、SPI、I2C等常见串行通信接口、10位
6、多达24个支持触摸感测的I/O引脚
7、USCI\UART\SPI\I2C
8、用于模拟信号比较功能或者斜率模数(A/D)转换的片载比较器
9、带有内部基准、采样与保持以及自动扫描功能的10位200ksps模数
(A/D)转换器
超低功耗
低功耗是430最大亮点,运行模式也只有230uA,当然限制了1MHz的运
MSP430铁电产品的路线图原理及功能介绍
MSP430特性:
1、低电源电压范围:1.8V至3.6V
2、超低功耗
运行模式:230μA(在1MHz频率和2.2V电压条件下)
待机模式:0.5μA
关种节能模式
4、可在不到1μs的时间里超快速地从待机模式唤醒
5、两个16位Timer_A,分别具有三个捕获/比较寄存器
MSP430I2C通信
04
MSP430I2C通信模块的 应用实例
MSP430I2C通信模块与EEPROM的通信
总结词
实现数据存储与读取
详细描述
MSP430I2C通信模块通过与EEPROM进行通信,可以实现数据的存储和读取功能。在数据存储时,可以将需要 保存的数据通过I2C通信协议发送到EEPROM中;在数据读取时,可以从EEPROM中读取数据并通过I2C通信协 议返回给MSP430I2C通信模块。
要点三
解决方案
首先检查总线的负载情况,确保总线 上连接的设备数量和信号线的长度在 合理范围内。然后检查信号线的质量 ,排除信号干扰的可能性。此外,可 以尝试调整I2C通信的速率参数,以 找到最适合系统需求的通信速率。
THANKS
感谢观看
寄存器访问
通过读写寄存器的方式,实现数据的读取和 写入。
03
MSP430I2C通信模块的 使用
MSP430I2C通信模块的初始化
初始化I2C通信模块
启动I2C通信
在开始通信之前,需要先初始化I2C通 信模块,包括设置通信速率、数据位、 停止位等参数。
完成初始化后,通过发送起始信号启 动I2C通信。
I2C通信模块支持多主模式和从模式, 方便实现多机通信。
MSP430I2C通信模块具有硬件仲裁 功能,可自动处理多个主设备同时请 求的情况,保证数据传输的可靠性。
02
I2C通信协议
I2C通信协议概述
I2C通信是一种双线串行通信协 议,主要用于连接微控制器和 各种外围设备。
它由Philips公司开发,具有简 单、稳定、高速等优点,广泛 应用于各种嵌入式系统中。
模块的亮度和对比度等参数,从而实现数据显示和控制功能。
05
MSP430单片机原理与应用
TI公司已拥有超过400种的MSP430单片机的芯片。这些芯片在很多领域取得了广泛的应用。
读者对MSP430单片机具有了初步的了解和认识,从而为以后章节的学习打下良好的基础。
MSP430单片机原理与应用
第2章 MSP430单片机软件工程开发基础
MSP430单片机的CPU属于RISC(精简指令集)处理器,RISC处理器基本上是为高级语 言所设计的,因为精简指令系统很大程度上降低了编译器的设计难度,有利于产生高效紧 凑的代码。初学者完全可以在不深入了解汇编指令系统的情况下,直接开始C语言的学习。 本章介绍MSP430单片机软件工程的开发基础,主要讲解MSP430单片机C语言编程基础、 MSP430单片机的软件编程方法及软件集成开发环境的基本操作。通过本章的讲解,旨在 使读者对MSP430单片机的编程思想有一定的了解。
2.1
2.2 2.3
MSP430单片机C语言基础
MSP430单片机软件工程基础
MSP430单片机软件开发集成环境CCSv5
2.1 MSP430单片机C语言基础
2.1.1 标识符和关键字
1.标识符 标识符用来标识程序中某个对象的名字,这些对象可以是语句、数据类型、函数、变 量、常量、数组等。标识符的第一个字符必须是字母或下划线,随后的字符必须是字母、 数字或下划线。例如,count_data、text2是正确形式,而2count是错误形式。 C语言对大小写字符敏感,所以在编写程序时要注意大小写字符的区别。例如,对于 sec和SEC这两个标识符来说,C语言会认为它们是两个完全不同的标识符。
要配置少量的外围器件,就可满足一般应用的要求。为了使读者对MSP430单片机有一个
初步的认识和了解,本章首先介绍MSP430单片机的发展历史及应用,然后叙述MSP430单 片机具有的特点及优势,最后简要介绍MSP430单片机的应用选型。
MSP430简介(超详细·)
MSP430简介(超详细·)msp430简介MSP430是德州公司新开发的⼀类具有16位总线的带FLASH 的单⽚机,由于其性价⽐和集成度⾼,受到⼴⼤技术开发⼈员的青睐.它采⽤16位的总线,外设和内存统⼀编址,寻址范围可达64K,还可以外扩展存储器.具有统⼀的中断管理,具有丰富的⽚上外围模块,⽚内有精密硬件乘法器、两个16位定时器、⼀个14路的12位的模数转换器、⼀个看门狗、6路P⼝、两路USART通信端⼝、⼀个⽐较器、⼀个DCO内部振荡器和两个外部时钟,⽀持8M 的时钟.由于为FLASH型,则可以在线对单⽚机进⾏调试和下载,且JTAG⼝直接和FET(FLASH EMULATION TOOL)的相连,不须另外的仿真⼯具,⽅便实⽤,⽽且,可以在超低功耗模式下⼯作对环境和⼈体的辐射⼩,测量结果为100mw左右的功耗(电流为14mA左右),可靠性能好,加强电⼲扰运⾏不受影响,适应⼯业级的运⾏环境,适合与做⼿柄之类的⾃动控制的设备.我们相信MSP430单⽚机将会在⼯程技术应⽤中得以⼴泛应⽤,⽽且,它是通向DSP 系列的桥梁,随着⾃动控制的⾼速化和低功耗化, MSP430系列将会得到越来越多⼈的喜爱.⼀、IO⼝(⼀)、P⼝端⼝寄存器:1、PxDIR 输⼊/输出⽅向寄存器(0:输⼊模式 1:输出模式)2、PxIN 输⼊寄存器输⼊寄存器是只读寄存器,⽤户不能对其写⼊,只能通过读取该寄存器的内容知道I/O⼝的输⼊信号。
3、PxOUT 输出寄存器寄存器内的内容不会受引脚⽅向改变的影响。
4、PxIFG 中断标志寄存器(0:没有中断请求 1:有中断请求)该寄存器有8个标志位,对应相应的引脚是否有待处理的中断请求;这8个中断标志共⽤⼀个中断向量,中断标志不会⾃动复位,必须软件复位;外部中断事件的时间必须>=1.5倍的MCLK的时间,以保证中断请求被接受;5、PxIES 中断触发沿选择寄存器(0:上升沿中断 1:下降沿中断)6、PxSEL 功能选择寄存器(0:选择引脚为I/O端⼝ 1:选择引脚为外围模块功能)7、PxREN 上拉/下拉电阻使能寄存器(0:禁⽌ 1:使能)(⼆)、常⽤特殊P⼝:1、P1和P2⼝可作为外部中断⼝。
MSP430单片机简介(创新实验)
单片机中断的例子(略)
CCS中自带的例子(略)
以下应用实例为西电学生的作品, 它们均以Launchpad实验板为核心。
多路电源开关
多路电源开关
• MSP430G2231为主控芯片 • 四路继电器相互隔离 • 四个按键控制继电器开闭 • 继电器开闭情况由LED显示
风速测试仪
风速测试仪
• MSP430G2211为主控芯片 • 驱动一个电源风扇 • 调理转速信号为PWM波 • 以脉冲计数方式测量风扇转速 • 风扇转速显示在LCD上
MSP430单片机简介
王晓宁 2014.05
在讲单片机之前,我们先看一下数字电路中的例子
Multisim例子\双向移位寄存器74LS194_With_Clock循环不停.ms11 Multisim例子\自动售饮料机的逻辑电路(例6.4.3)With Pulse Clock.ms11
上面两个例子的共同ቤተ መጻሕፍቲ ባይዱ点是:
当编写程序, 涉及I/O口的 操作时,我们 需要跟这些寄 存器打交道。
I/O口寄存器的取值及其意义
如前所述,在G2553单片机中,与I/O口相关的寄存器有P1IN,P1OUT, P1DIR,P1IFG,P1IES,P1IE,P1SEL,P1SEL2,P1REN。这些寄存 器的存储结构相同,都是8位的寄存器。
• MSP430G2231位主控芯片 • 定时计数法测计算车轮转速 • LCD显示当前速度、里程 • 手动复位里程计数 • 系统掉电数据不丢失
多路数据采集器
多路数据采集器
• MSP430G2231位主控芯片 • 采集八路数据,四路电压、四路电流 • 自动零点校准功能 • LCD同时八路数据显示
温度报警器
非法入侵报警器
msp430第1讲
(5)开发环境良好
OPT型和ROM型:在程序定型后直接烧写或掩膜芯片; FLASH型: 主流器件。引进Flash 型程序存储器和 JTAG 技 术,不仅可以实现在线编程和仿真,而且使开 发 工具变得简单方便。
三、 MSP430系列单片机主要结构
时钟 系统 MCLK ACLK SMCLK Flash/ ROM RAM 片内外设 片内外设 片内外设
(3)模拟技术及丰富的片内资源。
MSP430作为“混合信号处理器”的典型代表,由于针对实际应 用需求,集成了丰富的的模拟、数字模块,大大简化了设计人员工作。 MSP430系列单片机所集成的片内外设:AD/DA、看门狗、模拟 比较器、温度传感、定时器、串行通信模块、硬件乘法器、液晶驱动器、 直接寻址模块、USB模块等,向用户提供丰富的IO口资源,配置灵活。
(2)强大的处理能力
精简指令: MSP430系列单片机是16位精简指令集(RISC)单片机,具有丰富的寻 址方式,简洁的27条内核指令以及大量的模拟指令,高效的查表处理指令,且大 量的寄存器以及片内数据存储器都可参加多种运算。 MSP430运算速度快: (1) MSP430 系列单片机能在25MHz晶体的驱动下,实现40ns的指令周 期; (2)集成了硬件乘法器(16位或32位,该结构一般存在于DSP设计中)、 DAM等模块,大大增强了数据处理和运算能力,可在控制基础上实现某些数字信 号处理算法(如FFT、DTMF等)。
DW RGW DGV PW PM PN PZ
封装类型 SOIC20 1.27mm QFN24 TVSOP20 TSSOP20 0.5mm QFP64 0.5mm QFP80 0.5mm QFP100 0.5mm
图2
MSP430系列单片机命名规则
msp430第1章低功耗简介
2200MIPS/W,同时内部集成了看门狗、8×8 bit硬件乘法
器、16个独立可编程双向I/O口、6个大电流输出端口(可达 到20 mA)、SPI接口(软件可编程串口)、16个内部寄存器、4
5. MICROCHIP单片机
其8位和16位PIC单片机系列具有高性能、低成本和封 装体积小等特点。8位PIC单片机采用RISC内核,其架构使 用户无需改变代码或只需改变少量代码,即可轻松地在6引 脚至100引脚的各种封装形式的单片机系列之间移植。产品 的高级特征包括:精密的定时外设,集成模数转换器
进一步降低,超低功耗单片机,如: TI公司的MSP430系列16位单片机 EM公司的低功耗8位FLASH单片机 EM6812等。
超低功耗单片机是在低功耗单片 机的基础上,面向超低功耗应用 而设计的。
第1章 超低功耗单片机
超低功耗单片机耗电非常小,工作电流 比低功耗单片机有了进一步的下降,从毫安 级降到了微安级;并能在低电压下工作;采 用多种节能工作模式,可以在较低频率下工 作。比如EM公司的EM6812系列单片机可以在2~
得系统各功能模块的电源相对独立地供电,在不
工作时可以分别断电,以节省功耗。
第1章 超低功耗单片机
1.2.4 系统超低功耗的运行管理
系统超低功耗的运行管理指的是利用软件进行 管理。消除程序的无谓循环等待。合理利用低功耗
模式,对时钟的控制要做到忙时多用、闲时少用、
不用关闭的原则。对于外围电路,可通过SHDN(关 断)控制其工作时间。
5V电压下工作,工作频率最低可以为32 kHz,工
作电流为0.16~120 μA;而TI公司的
msp430基础知识
5:完善的中断服务功能。
6:4种计数功能的选择
7:8种输出计数功能的选择。
8:支持多种时序控制
9:DMA使能
TAR 16位计数器
1:修改Timer _A:当计数时钟不是MLCK时,写入应该计数器在计数器停止计数时,因为它与CPU不同步,可能引起时间的竞争。
2:增计数模式
捕获/比较寄存器CCR0用作Timer_A增计数模式的周期寄存器。因为CCR0为16位寄存器,所以该模式适用于定时周期小于65536的连续计数情况。计数器TAR可以增计数到CCR0的值,当计数值与CCR0的值相等(或定时器值大于CCR0的值)时,定时器复位并从0开始重新计数。
LFXT1CLK:低频时钟源
XT2CLK:高频时钟源
DCOCLK:数字控制RC振荡器
时钟发生器的原理说明
问题的提出:
1: 高频,以便对系统硬件请求和事件作出快速的响应。
2:低频 以便将电流消耗降至最小
{
;
}
基本定时器
MSP430具有基本定时器(Basic Timer1),Basic Timer1经常用在低功耗应用中,它的工作目的就是支持软件和外围模块工作在低频率、低功耗条件下。Basic Timer1通过对SMCLK 和ACLK进行分频,向其他外围模块提供低频率控制信号。Basic Timer1非常适合于周期性地产生中断
。(F14系列没有该定时器)
Timer_A 的特性
1:输入时钟可以有多种选择,可以是慢始终、快时钟以及外部时钟。
2:没有自动重装时间常数功能,但产生的定时脉冲或PWM(脉宽调制)信号没有软件带来的误差。
3:不仅能捕获外部事件发生的时间还可以锁定其发生时的高低电平。
MSP430单片机介绍
理机用于控制系统,应用领域相当广泛。例如:用于各种机
床控制、电机控制、工ቤተ መጻሕፍቲ ባይዱ机器人、各种生产线、各种过程控
制、各种检测系统等。在军事工业中:导弹控制、鱼类制导
控制、智能武器装置、航天导航系统等。在汽车工业中:点
火控制、变速器控制、防滑刹车、排气控制等。
能式控制设备以及各种智能仪器仪表。
面向控制,能针对性地解决从简单到复杂的各类控制任务,
因而能获得最佳性能价格比。
抗干扰能力强,适应温度范围宽,在各种恶劣环境下都能可
靠地工作,这是其他机型无法比拟的。
可以很方便地实现多机和分布式控制。使整个系统的效率和
可靠性大为提高。
4
单片机的应用
❖
❖
工业控制:单片机的结构特点决定了它特别适用于各种控制
板,即学习了MSP430单片机,又练习了PCB设计。
缺点:成本较高,风险较大,喜欢挑战的同学可以
试一下。
❖
10
11
MSP430系列单片机命名规则
12
MSP430单片机结构
13
❖
❖
❖
CPU:MSP430系列单片机的CPU和通用微处理器基本
相同,只是在设计上采用了面向控制的结构和指令系统。
MSP430的内核CPU结构是按照精简指令集和高透明的宗旨
块芯片上的计算机,即所谓的单片微型计算机,简称单片机
(Single Chip Microcomputer)。单片机在设计上主要突出
了控制功能,调整了接口配置,在单一芯片上制成了结构完
整的计算机,因此,单片机也称为微控制器(MCU)。单片
机同时也是一种典型的SOC芯片。
MSP430系列寄存器详细分类及介绍
时钟模块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 进行频率调整。
BC SCT L1基本时钟系统控制寄存器XT2OFF 控制XT2 振荡器的开启与关闭。
TX2OFF=0,XT2 振荡器开启。
TX2OFF=1,TX2 振荡器关闭(默认为TX2 关闭)XTS 控制LFXT1 工作模式,选择需结合实际晶体振荡器连接情况。
XTS=0,LFXT1 工作在低频模式(默认)。
XTS=1,LFXT1 工作在高频模式(必须连接有高频相应的高频时钟源)。
DIV A.0 DIV A.1 控制ACLK 分频。
0 不分频(默认)1 2 分频2 4 分频3 8 分频XT5V 此位设置为0。
Resl1.0,Resl1.1,Resl1.2 三位控制某个内部电阻以决定标称频率。
Resl=0,选择最低的标称频率。
…….. Resl=7,选择最高的标称频率。
SELM.1 S EL M.0选择MCLK 时钟源0 时钟源为DCOCLK(默认)1 时钟源为DCOCLK2 时钟源为LFXT1CLK(对于MSP430F11/12X),时钟源为XT2CL K(对于MSP430F13/14/15/16X);3 时钟源为LFTXTICLK。
D I V M.1D IV M.0选择MCLK 分频0 1 分频(默认)1 2 分频2 4 分频3 8 分频SELS 选择SMCLK 时钟源0 时钟源为DCOCLK(默认)1 时钟源为LFXT1CLK(对于MSP430F11/12X),时钟源为XT2CL K(对于MSP430F13/14/15/16X)。
MSP430简介
80 PZ
*4.15
MSP430F5419A 128 16 83
4 16ch ADC12 A 25 MIPS 100 PZ, 113 QZW *4.55
MSP430F5435A 192 16 64 5, 3 7 4
4
2
24 4
—
4 16ch ADC12 A 25 MIPS
集成外设 • 10/12 位 SAR ADC • 16 位 Δ-Σ ADC • 12 位 DAC • 比较器 • LCD 驱动器 • 电源电压监控器 (SVS) • 运算放大器 • 16 位与 8 位定时器 • LDO
• 看门狗定时器 • UART/LIN • I2C • SPI • IrDA • USB • 硬件乘法器 • DMA 控制器 • 温度传感器
80 PN
*4.85
MSP430F5436A 192 16 83 5, 3 7 4
4
4
44 4
—
4 16ch ADC12 A 25 MIPS 100 PZ, 113 QZW *5.35
MSP430F5437A 256 16 64 5, 3 7 4
4
2
24 4
—
4 16ch ADC12 A 25 MIPS
4
2
24 4
—
4 16ch ADC12 A 18 MIPS
80 PN
4.40
MSP430F5438 256 16 83 5, 3 7 4
4
4
44 4
—
4 16ch ADC12 A 18 MIPS
100 PZ
4.85
MSP430F5418A 128 16 64 5, 3 7 4
4
2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
msp430简介MSP430是德州公司新开发的一类具有16位总线的带FLASH 的单片机,由于其性价比和集成度高,受到广大技术开发人员的青睐.它采用16位的总线,外设和内存统一编址,寻址范围可达64K,还可以外扩展存储器.具有统一的中断管理,具有丰富的片上外围模块,片内有精密硬件乘法器、两个16位定时器、一个14路的12位的模数转换器、一个看门狗、6路P口、两路USART通信端口、一个比较器、一个DCO内部振荡器和两个外部时钟,支持8M 的时钟.由于为FLASH型,则可以在线对单片机进行调试和下载,且JTAG口直接和FET(FLASH EMULATION TOOL)的相连,不须另外的仿真工具,方便实用,而且,可以在超低功耗模式下工作对环境和人体的辐射小,测量结果为100mw左右的功耗(电流为14mA左右),可靠性能好,加强电干扰运行不受影响,适应工业级的运行环境,适合与做手柄之类的自动控制的设备.我们相信MSP430单片机将会在工程技术应用中得以广泛应用,而且,它是通向DSP系列的桥梁,随着自动控制的高速化和低功耗化, MSP430系列将会得到越来越多人的喜爱.一、IO口(一)、P口端口寄存器:1、PxDIR 输入/输出方向寄存器(0:输入模式 1:输出模式)2、PxIN 输入寄存器输入寄存器是只读寄存器,用户不能对其写入,只能通过读取该寄存器的内容知道I/O口的输入信号。
3、PxOUT 输出寄存器寄存器内的内容不会受引脚方向改变的影响。
4、PxIFG 中断标志寄存器(0:没有中断请求 1:有中断请求)该寄存器有8个标志位,对应相应的引脚是否有待处理的中断请求;这8个中断标志共用一个中断向量,中断标志不会自动复位,必须软件复位;外部中断事件的时间必须>=1.5倍的MCLK的时间,以保证中断请求被接受;5、PxIES 中断触发沿选择寄存器(0:上升沿中断 1:下降沿中断)6、PxSEL 功能选择寄存器(0:选择引脚为I/O端口 1:选择引脚为外围模块功能)7、PxREN 上拉/下拉电阻使能寄存器(0:禁止 1:使能)(二)、常用特殊P口:1、P1和P2口可作为外部中断口。
2、P6可作为A/D输入口。
3、P1.2和P2.0可作为PWM波输出口。
4、P1.1:MCLK P1.5:ACLK5、串口通信时:P2.4、 P4.0为发送TXD,P2.5 、P4.1为接收RXD。
(三)、基本操作:1、所有P口都可作为通用IO口使用2、所有P口都可进行字节操作和位操作按字节操作:例: P1DIR=0xff; //将P1口作为输出口PIOUT=0x20; // P1口输出0x20P1DIR=0x00; //将P1口作为输入口data=P1IN //读取P1口外部输入值按位操作:例: P1DIR=BIT0; //将P1.0作为输出口P1OUT|=BIT0; //P1.0输出1P1OUT&=~BIT0; //P1.0输出0P1DIR&=~BIT0 //将P1.0口作为输入data=P1IN&BIT0 //读取P1.0口外部输入值二、时钟(一)、三个时钟源:1、LFXT1CLK:低频时钟(32768HZ)2、XT2CLK:高频时钟(8MHZ)3、DCOCLK:片内数控振荡器最高46MHZ,但不稳定(不能作为定时用)(二)、时钟模块结构图:(三)、时钟模块可提供的四种时钟信号:1、ACLK:辅助时钟,来自LFXT1CLK低频时钟,可有软件选作各外围模块的时钟信号,一般用于低速外设。
2、ACLK/n:ACLK经过1、2、4、8分频后由P1.5输出,仅供外部电路使用。
3、MCLK:系统主时钟,可有软件选择来自LFXT1CLK、XT2CLK或DCOCLK的时钟,然后经1、2、4、8分频得到。
可由P1.1输出(主要用于cpu)4、SMCLK:子系统时钟,可有软件选择来自XT2CLK或DCOCLK的时钟。
(主要用于高速外设)(四)、MCLK应用举例:1、在默认情况下,MCLK来自于DCOCLK其频率为1.048576MHZ其计算方法:MCLK=(31+1)*327682、如何选择ACLK作为MCLK:void clk_initial(){do{IFG1&=~OFIFG; //清除振荡器的失效标志__ delay_cycles(200);}while((IFG1&OFIFG)!=0); //如果振荡器的失效标志存在FLL_CTL1=SELM1+SELM0; //选择ACLK作为MCLK}3、如何选择 XT2CLK作为MCLK:void clk_initial(){do{IFG1&=~OFIFG; //清除振荡器的失效标志__delay_cycles(200);}while((IFG1&OFIFG)!=0); //如果振荡器的失效标志存在FLL_CTL1=SELM1; //选择XT2CLK作为MCLK}4、如何选择 DCOCLK作为MCLK:计算(121+1) *2*32768=7.995MHZvoid CLK_initial(){SCFI0|=FN_4; //选择DCO频率调整范围为2.8~26.6MHZSCFQCTL=249; //倍频倍数,最高位为DCO+调制器的控制位FLL_CTL0=DCOPLUS+OSCCAP_1; //选择DCO作为MCLK前分频}三、中断(一)、中断源:1、外部中断:P1、P22、定时器中断。
3、看门狗定时器中断。
4、串口中断。
5、A/D 转换中断。
6、比较器中断。
(二)、中断的一般设置:1、打开、关闭局部中断:打开局部中断一般是给想关的特殊功能寄存器相关位置1以P1口外部中断为例:打开局部中断:P1IE|=BIT0;//打开P1.0外部中断关闭局部中断一般是给想关的特殊功能寄存器相关位置0同样以P1口外部中断为例:关闭局部中断:P1IE&=~BIT0;//关闭P1.0外部中断2、打开、关闭全局中断:_EINT();//打开总中断,相当于51的EA=1;_DINT();//关闭总中断,相当于51的EA=0;3、各中断向量Interrupt Vectors:#define BASICTIMER_VECTOR (0 * 2u) /* 0xFFE0 Basic Timer */#define PORT2_VECTOR (1 * 2u) /* 0xFFE2 Port 2 */#define USART1TX_VECTOR (2 * 2u) /* 0xFFE4 USART 1 Transmit */#define USART1RX_VECTOR (3 * 2u) /* 0xFFE6 USART 1 Receive */#define PORT1_VECTOR (4 * 2u) /* 0xFFE8 Port 1 */#define TIMERA1_VECTOR (5 * 2u) /* 0xFFEA Timer A CC1-2, TA */#define TIMERA0_VECTOR (6 * 2u) /* 0xFFEC Timer A CC0 */#define ADC12_VECTOR (7 * 2u) /* 0xFFEE ADC */#define USART0TX_VECTOR (8 * 2u) /* 0xFFF0 USART 0 Transmit */#define USART0RX_VECTOR (9 * 2u) /* 0xFFF2 USART 0 Receive */#define WDT_VECTOR (10 * 2u) /* 0xFFF4 Watchdog Timer */#define COMPARATORA_VECTOR (11 * 2u) /* 0xFFF6 Comparator A */#define TIMERB1_VECTOR (12 * 2u) /* 0xFFF8 Timer B CC1-6, TB */#define TIMERB0_VECTOR (13 * 2u) /* 0xFFFA Timer B CC0 */#define NMI_VECTOR (14 * 2u) /* 0xFFFC Non-maskable */#define RESET_VECTOR (15 * 2u) /* 0xFFFE Reset [Highest Priority] */4、中断优先级:优先级顺序从高到低为:PORT2_VECTOR (1 * 2u) /* 0xFFE2 Port 2 */PORT1_VECTOR (4 * 2u) /* 0xFFE8 Port 1 */TIMERA1_VECTOR (5 * 2u) /* 0xFFEA Timer A CC1-2, TA */TIMERA0_VECTOR (6 * 2u) /* 0xFFEC Timer A CC0 */ADC_VECTOR (7 * 2u) /* 0xFFEE ADC */USART0TX_VECTOR (8 * 2u) /* 0xFFF0 USART 0 Transmit */USART0RX_VECTOR (9 * 2u) /* 0xFFF2 USART 0 Receive */WDT_VECTOR (10 * 2u) /* 0xFFF4 Watchdog Timer */COMPARATORA_VECTOR (11 * 2u) /* 0xFFF6 Comparator A */TIMERB1_VECTOR (12 * 2u) /* 0xFFF8 Timer B CC1-2, TB */TIMERB0_VECTOR (13 * 2u) /* 0xFFFA Timer B CC0 */NMI_VECTOR (14 * 2u) /* 0xFFFC Non-maska××e */RESET_VECTOR (15 * 2u) /* 0xFFFE Reset [Highest Priority] */5、中断的嵌套:当同时有多个中断来的时候才有优先级的考虑(优先级顺序可查看向量表)实现中断嵌套需要注意以下几点:1)430默认的是关闭中断嵌套的,一定要中断嵌套的话,就必须在中断服务程序中打开总中断msp430的指令中,_DINT()和_EINT()分别指关和开总中断。
2)当进入中断服务程序时,只要不在中断服务程序中再次开中断,则总中断是关闭的,此时来中断不管是比当前中断的优先级高还是低都不执行;3)若在中断服务程序A中开了总中断,则可以响应后来的中断B(不管B的优先级比A高还是低),B执行完再继续执行A。