文档库 最新最全的文档下载
当前位置:文档库 › msp430按键控制

msp430按键控制

msp430按键控制
msp430按键控制

第三讲按键控制

一、概述

LAUNCH PAD的实验板上共有两个按键,一个按键接至RESET脚,固定作为复位按键来使用(S1)。按键S2连接在引脚P1.3,可供我们自由使用。这里我们实现通过此按键控制LED的闪烁。应当注意,连接按键的引脚松开时为高电平,按下为低电平。

按键一般可以通过扫描和中断来实现。扫描是指程

序通过循环不停地读取IO口的输入值,并以此判断按

键是否按下。中断实现可以免除扫描的麻烦,在按键按

下时,中断当前的程序,执行中断处理函数,效率较高。

二、中断简介

中断对于初学者来说,是最不容易理解的。但它的

道理实际上很简单,中断条件满足时,暂停正在运行的

程序,开始处理中断服务函数,中断服务函数结束后返

回,继续从之前停下的地方运行。就好像是你原来在网

上聊天,突然电话响了,接完电话继续上网一样。这里,

上网就像是初始运行的程序,电话响了是中断触发条件,

接电话是中断服务程序。只是设置好中断处理函数以后,

每次中断运行的程序都是相同的。

每种CPU之中,都会有许多不同种类的中断。对

于单片机来说,最常用的中断有外部中断、定时器中断

等。而这些中断中,又有不同的优先级,有时还可以实

现中断嵌套。

中断优先级是指系统中多个中断源可能同时提出中断请求,需要按中断的轻重缓急给每个中断源指定一个优先级别。

从头文件中,我们可以看到msp430g2553的中断优先级。如图,最下面的复位中断具有最高优先级。

中断嵌套是指系统为某个中断请求服务时,可能再次接收到其他中断请求信号,这时系统有可能会再次中断,转去处理新的、优先级更高的中断请求。对于msp430,一般情况下

不允许任何中断嵌套,但是,若在中断中打开总中断,则不论优先级高低都会进行中断嵌套。

我们使用在按键这里的中断,被称为外部中断,意思是触发条件是来自外部的。在程序中,要配置好中断,要考虑到很多方面。首先,要确定是哪种中断,如外部中断就要配置IO 口的寄存器;其次,编写中断处理函数;最后,也是最重要的部分,打开总中断。

三、扫描实现按键

我们现在需要实现以下功能:使LED闪烁,但是当按键按下时,LED停止闪烁,松开按键,LED继续闪烁。

首先实现LED闪烁,接下来,加入对按键的判断语句。这里要注意,由于按键属于IO口的输入功能,因此对应的DIR寄存器位应该是0,launch pad板子上的按键在P1.3,即第三位必须为0。

右图为加入的按键判断语句:

我们通过!(P1IN&BIT3)来判断第三位是否为低,若为低,则停止主循环。

其中P1IN的8位数据,我们只关心按键所连的BIT3,将他们位与之后,若P1IN的第三位为低,则值为0,加上!,while中值为1,则在此while中循环,即停止主循环。

运行程序,即可达到所需的效果。

四、中断实现按键

我们实现以下功能:LED闪烁,按键按下后,LED停止闪烁,松开按键,LED仍然不闪烁,这时可以按RESET按键使程序复位,LED闪烁。

我们实现按键所需要的中断是外部中断,其触发源可以是P1和P2的任意引脚。

配置方法如图:

第一步,将P1DIR中的按键引脚设置为输入

第二步,设置BIT3位为下降沿中断

第三步,打开P1 BIT3的中断

第四步,确认清空中断标志(外部中断进入之后,不会自动清除中断标志,要手动清除,不然会持续进入中断函数)

最后,打开总中断。

我们知道,中断时,程序会进入中断处理函数,因此,配置中断处理函数也很重要。对于msp430,它有特定的格式,如下图:

这里,中断函数的名字是可以修改的,上面蓝色的字是固定格式。结束时,要清除标志位(注意,不是所有种类的中断最后都需要)。加入while(1)是因为,我们想要在按下键之后使程序停在这里,不再继续使LED闪烁。

至此,按键部分就介绍完了,大家可以思考一下,扫描和中断方式各在什么情况下使用更有效。

msp430g2553的矩阵按键程序

IAR环境下的程序! 矩阵按键在单片机设计中经常见到,下面给大家几个程序!如果有需求可以看看!矩阵按键,扫描 下面程序是淘来的! #include /***************全局变量***************/ unsigned char Key_V al; //存放键值 void CtrlKey(unsigned char sw); //控制键盘开关//sw=0关sw=1开 /******************************************* 函数名称:Init_Keypad 功能:初始化扫描键盘的IO端口 参数:无 返回值:无 ********************************************/ void Init_Keypad(void) { P1DIR = 0x0f; //P1.0~P1.3设置为输出状态,P1.4~P1.7输入状态(上拉H) P1OUT=0; P1IES =0xf0; //P1.4~P1.7允许中断 P1IE =0xf0; //P1.4~P1.7下降沿触发中断 P1IFG=0; //中断标志清0 Key_V al = 0; } /******************************************* 函数名称:Check_Key 功能:扫描键盘的IO端口,获得键值 参数:无 返回值:无 ********************************************/ //p14\5\6\7 接上拉电阻 /*************************************** key_V al 对应键值 列:[p14] [p15] [p16] [p17] ↓↓↓↓ 行: [p13]→ 1 2 3 4 [p12]→ 5 6 7 8 [p11]→9 10 11 12 [p10]→13 14 15 16 ***************************************/ void Check_Key(void) { unsigned char row ,col,tmp1,tmp2;

MSP430单片机题目答案整理(大部分)

第一章 1. MCU(微控制器单元)与MPU(微处理器单元)的区别 MCU集成了片上外围器件,而MPU不带外围器件,是高度集成的通用结构的处理器。是去除了集成外设的MCU。 2. MSC430单片机的不同系列的差别 MSP430系列单片机具有超低功耗、处理能力强大、片内外设丰富、系统工作稳定、开发环境便捷等显着优势,和其他类型单片机相比具有更好的使用效果、更广泛的应用前景。 3. MSC430单片机主要特点 1.超低功耗 2. 强大的处理能力 3. 高性能模拟技术及丰富的片上外围模块 4. 系统工作稳定 5. 方便高效的开发环境 4. MSC430单片机选型依据 选择最容易实现设计目标且性能价格比高的机型。 在研制任务重,时间紧的情况下,首先选择熟悉的机型。 欲选的机型在市场上要有稳定充足的货源。 第二章 1. 从计算机存储器体系结构上看,MSP430单片机属于什么结构 冯·诺依曼结构,是一种程序存储器和数据存储器合并在一起的存储器体系结构。 2. RISC与CISC体系结构的主要特征是什么MSP430单片机属于哪种结构 CISC----是复杂指令系统计算机Complex Instruction Set Computer的缩写,MCS-51单片机属于CISC。具有8位数据总线、7种寻址模式,111条指令。 RISC----是精简指令系统计算机Reduced Instruction Set Computer的缩写,MSP430单片机属于RISC。具有16位数据总线、7种寻址模式,27条指令。 3. 对MSP430单片机的内存访问时,可以有哪几种方式读写字数据有什么具体要求 字,字节,常字。字访问地址必须是偶数地址单元。 4. MSP430单片机的中断向量表位于什么位置其中存放的是什么内容 中断向量表:存放中断向量的存储空间。430单片机中断向量表地址空间:32字节,映射到存储器空间的最高端区域 5. MSP430单片机的指令系统物理指令和仿真指令各有多少条。 27种物理指令-内核指令和24种仿真指令 6. MSP430单片机的指令系统有哪些寻址方式各举一例说明。 有7种寻址方式:寄存器寻址,变址寻址,符号寻址,绝对寻址, 间接寻址,间接增量寻址,立即数寻址 7. MSP430单片机的CPU中有多少个寄存器其中专用寄存器有哪几个 4个专用寄存器(R0、R1、R2、R3)和12个通用寄存器(R4~R15) R0:程序计数器(PC) R1:堆栈指针(SP)—总是指向当前栈顶 R2:状态寄存器(SR)只用到16位中的低9位 R2/R3:常数发生器(CG1/CG2) 8. 按要求写出指令或指令序列。 9. 写出给定指令或指令序列的执行结果。 10.汇编语言程序的分析与理解。

基于MSP430G2553的按键测试程序

基于msp430G2系列的按键测试程序本程序有扫描和中断两种方式,代码均附后。 4、4×1独立按键实验 (1)4×1键盘1:扫描数码管显示 (2)4×1键盘2:中断数码管显示 (3)4×1键盘3:控制LED (4)4×1键盘4:控制蜂鸣器 5、4×4矩阵键盘实验 (1)4×4键盘1:行列扫描数码管显示 (2)4×4键盘2:行列扫描1602液晶显示 3)4×4键盘3:控制LED蜂鸣器 #include #define BUTTON BIT3 #define LED_RED BIT0 #define LED_GREEN BIT6 #define LED_DIR P1DIR #define BUTTON_DIR P1DIR #define BUTTON_OUT P1OUT #define LED_OUT P1OUT #define BUTTON_REN P1REN #define BUTTON_ON (P1IN&BIT3) #define BUTTON_OFF !(P1IN&BIT3) #define LED_RED_ON() P1OUT|=BIT0 #define LED_RED_OFF() P1OUT&=~BIT0 #define LED_GREEN_ON() P1OUT|=BIT6 #define LED_GREEN_OFF() P1OUT&=~BIT6 volatile unsigned char i=0,flag=0; void main(void) { WDTCTL = WDTPW + WDTHOLD; BUTTON_DIR &= ~BUTTON; LED_DIR |= LED_RED+LED_GREEN; BUTTON_REN |= BUTTON; BUTTON_OUT = BUTTON; while(1) { /*通过按键改变选择标志位*/

基于MSP430实现的步进电机控制

作品概述 第一节基本情况 MSP430G2系列Launchpad是TI推出的一款低成本的开发平台。它适用于适用于TI 最新MSP430G2xx 系列产品,其基于USB 的集成型仿真器可提供为全系列MSP430G2xx 器件开发应用所必需的所有软、硬件。本作品选择MSP430G2231为Launchpad核心板的单片机,采用Launchpad核心板加底板的形式,实现了对步进电机的四相四拍和四相八拍控制,并实现了转动方向和转动速度的控制,并且用数码管显示转动方向和转动速度的百分比。 第二节软硬件总体设计方案 本作品选择MSP430G2231为Launchpad核心板的单片机,采用Launchpad 核心板加底板的形式,对步进电机进行控制。滑变,即滑动变阻器,用来控制电机的转速,本系统共有两个拨动按键,一个拨动按键用来选择步进电机的模式,如四相八拍或四相四拍,另一个拨动按键用来控制转动方向。数码管可用来显示模式和方向,以及转速的百分比。系统总体设计框图如下 图1.2.1 系统总体设计框图 在硬件设计时,只需设计外围电路,留出与Launchpad核心板的接口即可,既节约了设计时间,又节省了成本,而且无需额外购买仿真器,从而使设计成本

到达最低。 在软件设计方面,可充分利用G2系列单片机的各个功能模块,如时钟系统、TA定时器、ADC10模数转换器,看门狗,以及IO口中断等资源,设计出高效率、低功耗、结构紧凑而又功能强大的产品。

第一章作品硬件系统设计 第一节MSP430G2系列Launchpad开发板组成及硬件资源情况介绍MSP430G2系列Launchpad是TI推出的一款低成本的开发平台。它适用于适用于TI 最新MSP430G2xx 系列产品,其基于USB 的集成型仿真器可提供为全系列MSP430G2xx 器件开发应用所必需的所有软、硬件。LaunchPad 具有集成的DIP 目标插座,可支持多达20 个引脚,从而使MSP430 Value Line 器件能够简便地插入LaunchPad 电路板中。此外,其还可提供板上Flash 仿真工具,以直接连接至PC 轻松进行编程、调试和评估。LaunchPad 试验板还能够对eZ430-RF2500T 目标板、eZ430-Chronos 手表模块eZ430-F2012T/F2013T 目标板进行编程。此外,它还提供了从MSP430G2xx 器件到主机PC 或相连目标板的9600 波特UART 串行连接。其实物图如图2.1所示。 图2.1.1 MSP430G2系列Launchpad开发板实物图 MSP430G2系列Launchpad开发板硬件资源: ? USB 调试与编程接口无需驱动即可安装使用,且具备高达9600 波特的

如何学习并使用MSP430单片机(入门)

如何学习MSP430单片机 如何学习MSP430单片机 。 下面以MSP430系列单片机为例,解释一下学习单片机的过程。 (1)获取资料 购买有关书籍,并到杭州利尔达公司网站和TI网站获取资料,例如,在网上可以找到FET使用指导、MSP430 F1xx系列、F4xx系列的使用说明和具体单片机芯片的数据说明,可以找到仿真器FET的电路图、实验板电路图、芯片封装知识等大量的实际应用参考电路,当然有些资料是英文的,看懂英文资料是个挑战,学会4、6级英语就是为看资料的。英语难学,但是看资料容易,只要下决心,看完一本资料,就可以看懂所有的相关资料。 (2)购买仿真器FET和实验电路板 如果经济条件不错,可以直接购买。 (3)自制仿真器FET和实验电路板 自制仿真器FET,首先要到网上找到FET电路图,然后就可以使用画电路板软件画电路图和电路板图,这又是个挑战。FET电路非常简单,但要把它制作出来还是需要下一番工夫的,找一本有关书,然后练习画原理图,画完原理图后,就学习认识元件封装,再购买元件,这时就可以画电路板图了,一旦画好,将形成的PCB文件交给电路板制作公司,10天后,就可以得到电路板,焊上元件和电缆,等实验电路板做好后,就可以与实验电路板一起调试了。 自制实验电路板,需要单片机芯片内部工作原理的知识、封装知识,清楚的知道每一个引脚的功能,还需要数码管、按钮、排电阻、三端稳压器、二极管、散热器、电解电容、普通电容、电阻、钮子开关等元件的知识,对于初学者,可以做一个只有3个数码管、8个按钮、8个发光二极管的简单实验板,这样的实验板,虽然简单,但足可以帮助初学者入门单片机。自制实验电路板与自制FET 一样,首先画电路图,然后买元件,再画电路板。由于MSP430系列芯片是扁平封装,焊接起来有一定难度,这好象是个挑战,但实际上很简单,方法如下:

msp430控制步进电机实验报告

计算机硬件应用课程设计

一、实验内容及要求 题目:步进电机控制设计 使用单片机为核心,设计一个步进电机控制器。 基本要求:使用单片机为控制核心,编写程序并设计硬件结构,实现对步进电机 的控制。步进电机按固定方向连续转动。对电机的运行方向进行控制,如:要求按下A 键时,能够控制步进电机正转;按下B键时,能够控制步进电机反转。 提高要求(选作):用LED数码管显示步进电机的转动状态;增加启动、停止控制按键。 二、小组成员 三、实验软硬件环境简介 硬件环境:MSP430G2553单片机一块,五线四相步进电机一个,驱动芯片ULN2003一块,开关三个,下载线一根。 软件设计:仿真软件PROTEUS 8.0 Professional;代码编写软件IAR;WINDOWS操作系统。 四、设计方案分析 步进电机是一种能够将电脉冲信号转换成角位移或线位移的机电设备,它实际上是一种单相或多相同步的步进电机。单相步进电机由单路电脉冲驱动,输出功率一般很小,故需要加一个驱动电路。当向脉冲分配器输入一个脉冲时,电动机各相的通电状态就会发生改变,转子会转过一定的角度(称为步距角)。正常情况下,步进电机转过的总角度和输入法的脉冲数成正比;连续输入一定频率的脉冲时,电动机的转速与输入脉冲的频率保持严格的对应关系,不受电压波动和负载变化的影响。 步进电机的不同驱动方式,都是在工作时,脉冲信号按一定顺序轮流加到三相绕组上,从而实现不同的工作状态。步进电机有三线式、五线式、六线式三种,但其控制方式均相同,都必须以脉冲电流来驱动。若每转一圈以20个励磁信号来计算,则每个励磁信号前进18°,其旋转角度与脉冲数成正比,正反转可以由脉冲顺序来控制。 步进电机的励磁方式可分为全部励磁及半步励磁,其中全部励磁又有1相励磁及2相励磁之分,而半步励磁又称为1-2相励磁。 1相励磁法:在每一瞬间只有一个线圈导通。消耗电力小,精确度良好,但转矩小,振动较大,每一励磁信号可走18°。若以1相励磁法控制步进电机正转,其励磁顺序表如下。若以励磁信号反响传送,则步进电机反转。本实验中采用这个方法。

msp430 按键控制LED 最基本程序

按键篇 经过一短时间的学习,下面,亲自动手编写一下程序吧。 程序的目的是:按下按键,控制LED的亮和灭。短按键,则小灯亮1秒,然后灭;长按键,小灯常亮。 首先,完成键盘的扫描程序。 第一点:如果是扫描,就要用到定时器。我想设计定时器每隔10ms扫描一次按键。 定时器,我选用定时器A。它的定时中断函数如下: 函数名称:TimerA_ISR 功能:定时器A的中断服务函数 参数:无 返回值:无 ********************************************/ #pragma vector = TIMERA0_VECTOR __interrupt void TimerA_ISR(void) { GetKey(); } 上面这个定时中断函数的意思就是:每当定时时间到了以后,就调用GetKey()函数一次。GetKey()函数就是扫描键盘按键的函数了。在GetKey()函数中,会根据按键类型(长按/短按)返回不同的数值。根据返回的数值,做小灯亮法的操作。那么,返回的这个值,我们需要保存在一个变量中,在这里定义一个变量ucharFlagLcd ; 来保存返回值。这个变量在全局变量中定义,以保证它的作用域。 那么定时函数就变为 #pragma vector = TIMERA0_VECTOR __interrupt void TimerA_ISR(void) { FlagLcd =GetKey(); } 定时器中断的时间间隔,我在主函数中定义。 这样写: CCTL0 = CCIE; //使能CCR0中断 CCR0 = 40; //设定周期0.01S TACTL = TASSEL_1 + ID_3 + MC_1; //定时器A的时钟源选择ACLK,增计数模式 这样,定时器这块就算完工了。那么,下面进行按键扫描程序。

MSP430初学者教程(最详细)

如何学习 学习就是迎接挑战、解决困难的过程,没有挑战,就没有人生的乐趣。 下面以系列为例,解释一下学习的过程。 (1)获取资料 购买有关书籍,并到杭州利尔达公司网站和TI网站获取资料,例如,在网上可以找到FET 使用指导、F1xx系列、F4xx系列的使用说明和具体芯片的数据说明,可以找到FET的、实验板、知识等大量的实际应用参考电路,当然有些资料是英文的,看懂英文资料是个挑战,学会4、6级英语就是为看资料的。英语难学,但是看资料容易,只要下决心,看完一本资料,就可以看懂所有的相关资料。 (2)购买FET和实验电路板 如果经济条件不错,可以直接购买。 (3)自制FET和实验电路板 自制仿真器FET,首先要到网上找到FET,然后就可以使用画电路板软件画电路图和电路板图,这又是个挑战。FET电常简单,但要把它制作出来还是需要下一番工夫的,找一本有关书,然后练习画,画完后,就学习认识,再购买元件,这时就可以画电路板图了,一旦画好,将形成的PCB文件交给公司,10天后,就可以得到电路板,焊上元件和电缆,等实验电路板做好后,就可以与实验电路板一起调试了。 自制实验电路板,需要单片机芯片内部工作原理的知识、封装知识,清楚的知道每一个的功能,还需要、按钮、、三端、、散热器、、普通电容、电阻、等元件的知识,对于初学者,可以做一个只有3个、8个按钮、8个的简单实验板,这样的实验板,虽然简单,但足可以帮助初学者入门单片机。自制实验电路板与自制FET一样,首先画电路图,然后买元件,再画电路板。由于系列芯片是扁平封装,焊接起来有一定难度,这好象是个挑战,但实际上很简单,方法如下:首先在焊盘上涂上,在未干的情况下,将芯片放在焊盘上,注意芯片第一的位置,并使与焊盘对齐,将擦干净的(不能有任何)接触引脚,引脚只要一热,焊盘上的就自动将引脚焊住了,千万注意上不能有,焊接时最好配备一个。焊接电路板时,每一个元件都要核对参数,可以用万用表测量的元件一定要测量。 (4)从网上获得IA 到利尔达公司或的网站下载IA,并安装到计算机上。 (5)调试FET和实验板

MSP430单片机深入学习笔记

复位 1.POR信号只在两种情况下产生: 微处理器上电。 RST/NMI管脚被设置为复位功能,在此管脚上产生低电平时系统复位。 2.PUC信号产生的条件为: POR信号产生。 看门狗有效时,看门狗定时器溢出。 写看门狗定时器安全健值出现错误。 写FLASH存储器安全键值出现错误。 3.POR信号的出现会导致系统复位,并产生PUC信号。而PUC信号不会引起POR信号的产生。系统复位后(POR之后)的状态为: RST/MIN管脚功能被设置为复位功能。 所有I/O管脚被设置为输入。 外围模块被初始化,其寄存器值为相关手册上注明的默认值。 状态寄存器(SR)复位。 看门狗激活,进入工作模式。 程序计数器(PC)载入0xFFFE(0xFFFE为复位中断向量)处的地址,微处理器从此地址开始执行程序。 4.典型的复位电路有以下3种: (1)由于MSP430具有上电复位功能, 因此,上电后只要保持RST/NMI(设置 为复位功能)为高电平即可。通 常的做法为,在RST/NMI管脚接100k? 的上拉电阻,如图1-5(a)所示。 (2)除了在RST/NMI管脚接100k?的 上拉电阻外,还可以再接0.1μF的电 容,电容的另一端接地,可以使复位 更加可靠。如图1-5(b)所示。 (3)由于MSP430具有极低的功耗,如 果系统断电后立即上电,则系统中电 容所存储的电荷来不及释放,此时系 统电压不会下降到最低复位电压以下, 因而MSP430不会产生上电复位,同时 RST/NMI管脚上也没有足够低的电平 使MSP430复位。这样,系统断电后立 即上电,MSP430并没有被复位。为了 解决这个问题,可增加一个二极管, 这样断电后储存在复位电容中的电荷 就可以通过二极管释放,从而加速电 容的放电。二极管的型号可取1N4008。 如图1-5(c)所示。

MSP430实现的多路电源开关控制器

基于MSP430G2211实现的多路电源开关 控制器 第一章作品概述 (2) 第一节基本情况 (2) 第二节软硬件总体设计方案 (2) 第二章作品硬件系统设计 (4) 第一节MSP430G2系列Launchpad开发板组成及硬件资源情况介绍 (4) 第二节关键器件选型以及性能指标参数 (4) 第三节单元电路介绍 (5) 第五节PCB板设计要求和注意事项 (9) 第六节安装调试注意事项 (12) 第三章作品软件系统设计 (14) 第一节程序流程图介绍 (14) 第二节CCS设计与调试方法介绍 (19) 第四章总结与思考 (23)

第一章作品概述 第一节基本情况 本作品使用MSP430G2211单片机实现了通过按键对四路功率继电器进行选择控制,达到对四路交流电源加电/断电的控制要求,由于是对220V市电进行控制,所以作品中尽可能的考虑了使用安全问题,使用了隔离电路以及在每一路上都有功率限制。 第二节软硬件总体设计方案 系统总体设计框图如下 图1.1 系统总体设计框图

为了实现安全的控制220V的交流电,本作品使用隔离控制大功率继电器的方式实现。220V交流电引入系统后,经过继电器和保险管后再经过四路插座输出。在控制继电器的方式上,为了安全起见,控制信号通过光耦隔离之后控制继电器。本作品可以实现4路220W 的功率输出控制。 各个模块之间的具体工作关系如下,用户通过键盘像MSP430处理器发送命令,MSP430G2211处理器在检测到案件后,会对相应的继电器控制I/O置位,注意此时的控制信号是隔离之前的信号;此信号经过隔离模块之后交给控制模块,用来控制相应的继电器动作,从而使得不同的通道导通。

MSP430单片机原理解读

第 2 章MSP430 单片机原理与 C 语言基础MSP430系列超低功耗单片机有200多种型号,TI公司用3~ 4位数字表示其型号。其中第一位数字表示大系列,如MSP430F1xx系列、MSP430F2xx系列、MSP430F4xx系列、MSP430F5xx系列等。在每个大系列中,又分若干子系列,单片机型号中的第二位数字表示子系列号,一般子系列越大,所包含的功能模块越多。最后1~2 位数字表示存储容量,数字越大表示RAM 和ROM 容量越大。430 家族中还有针对热门应用而设计的一系列专用单片机。如SP430FW4xx 系列水表专用单片机、MSP430FG4xx 系列医疗仪器专用单片机、MSP430FE4xx 系列电能计量专用单片机等。这些专用单片机都是在同型号的通用单片机上增加专用模块而构成的。最新的MSP430型号列表可以通过TI公司网站下载。 在开发单片机应用系统时,第一步就是单片机的选型,选择合适的单片机型号往往就能事半功倍。单片机选型基本方法是选择功能模块最接近项目需求的系列,然后根据程序复杂程度估算存储器和RAM 空间,并留有适当的余量,最终决定选用的单片机型号。 本章节以MSP430F249单片机为学习目标,介绍单片机的基本结构和工作原理,读者可以举一反三、触类旁通,而不必每种型号都去学习却无法深入掌握。 2.1 MSP430F249单片机基本结构与原理 2.1.1MSP430F249的主要结构特点 供电电压范围1.8V~3.6V 。 超低功耗:活动状态270uA(1MHz,2.2V);待机模式0.3uA;关机模式0.1uA。 16位RISC精简指令集处理器。 时钟系统:多种时钟源,可灵活使用。时钟频率达到16MHz ;具有内部振荡器;可外接32kHz 低频晶振;外接时钟输入。 12位A/D转换器,内部参考电压,采用保持电路。 16位定时器A,3个捕获/比较寄存器。 16 位定时器B,7 个捕获/比较寄存器。 4个通用串口:USCI_A0 和USCI_A1、USCI_B0 和USCI_B1(I2C、SPI)。 60kB+256B的flash程序存储器,2kB的RAM数据存储器。 64引脚QFP封装。 MSP430F249单片机的芯片封装形式如图2.1所示,各引脚的功能描述如表2-1 所列。 2.1.2 MSP430F249单片机的基本结构 MSP430F24x系列单片机功能结构示意图如图2.2所示。 (1)CPU简介 MSP430单片机的CPU为16位RISC精简指令集的处理器,只有27条正交汇编指令和7 种寻址方式。RISC 处理器基本上是为高级语言所设计的,编译程序对正交指令系统很容易做到最优化,利于产生高效紧凑的代码。MSP430CPU 中集成了16个16位通用寄存器 R0~R15,其中R0~R3分别复用为程序指针PC、堆栈指针SP、状态寄存器SR和常数发生器CG1/CG2。这些寄存器之间的操作只需要一个CPU 周期。

MSP430F5529实验指导书(V1.0)

MSP430F5529 实验指导书 (V1.0) 2014年10月27日 东北林业大学机电工程学院“3+1”实验室

实验一基础GPIO实验 实验二键盘与液晶显示实验实验三时钟系统配置实验实验四看门狗与定时器实验实验五AD/DA实验 实验六比较器实验 实验七Flash实验 实验八串行通信实验

实验一基础GPIO实验 【实验目的】 1、熟悉CCS的基本使用方法; 2、掌握MSP430系列单片机程序开发的基本步骤; 3、掌握MSP430 IO口的基本功能。 【实验仪器】 1、SEED-EXP430F5529v1.0开发板一套; 2、PC机操作系统Windows XP或Windows 7,CCSv5.1集成开发环境。 【实验原理】 CCS(Code Composer Studio)是TI 公司研发的一款具有环境配置、源文件编辑、程序调试、跟踪和分析等功能的集成开发环境,能够帮助用户在一个软件环境下完成编辑、编译、链接、调试和数据分析等工作。CCSv5.1 为CCS 软件的最新版本,功能更强大、性能更稳定、可用性更高,是MSP430 软件开发的理想工具。 SEED-EXP430F5529v1.0开发板上的有8个可操作的LED灯,与MCU的IO口对应关系如图1-1所示: 图1-1 LED与MCU的IO对应关系电路

我们可以通过控制单片机IO口的输出电平状态来控制各个LED灯的亮灭。 开发板上还有2个可操作的按键S1,S2。如图1-2所示。 图1-2 按键电路 我们可以通过读取与按键相连的IO口的输入电平状态来执行相应的操作。此外,S1,S2还可以作为外部中断源,触发中断。 【实验内容】 1、用调用头文件的方法,使能MSP430F5529开发板上的8个LED灯依次按顺序循环点亮; 2、用按键S1控制开发板上LED1的亮灭状态(查询法); 3、用按键S2控制开发板上跑马灯的循环速度(中断方式)。 【实验步骤】 内容1:使能开发板上的8个LED灯依次按顺序循环点亮 1、打开CCSv5并确定工作区间,然后选择File-->New-->CCS Project 弹出图1-3对话框。

msp430按键控制

第三讲按键控制 一、概述 LAUNCH PAD的实验板上共有两个按键,一个按键接至RESET脚,固定作为复位按键来使用(S1)。按键S2连接在引脚P1.3,可供我们自由使用。这里我们实现通过此按键控制LED的闪烁。应当注意,连接按键的引脚松开时为高电平,按下为低电平。 按键一般可以通过扫描和中断来实现。扫描是指程 序通过循环不停地读取IO口的输入值,并以此判断按 键是否按下。中断实现可以免除扫描的麻烦,在按键按 下时,中断当前的程序,执行中断处理函数,效率较高。 二、中断简介 中断对于初学者来说,是最不容易理解的。但它的 道理实际上很简单,中断条件满足时,暂停正在运行的 程序,开始处理中断服务函数,中断服务函数结束后返 回,继续从之前停下的地方运行。就好像是你原来在网 上聊天,突然电话响了,接完电话继续上网一样。这里, 上网就像是初始运行的程序,电话响了是中断触发条件, 接电话是中断服务程序。只是设置好中断处理函数以后, 每次中断运行的程序都是相同的。 每种CPU之中,都会有许多不同种类的中断。对 于单片机来说,最常用的中断有外部中断、定时器中断 等。而这些中断中,又有不同的优先级,有时还可以实 现中断嵌套。 中断优先级是指系统中多个中断源可能同时提出中断请求,需要按中断的轻重缓急给每个中断源指定一个优先级别。 从头文件中,我们可以看到msp430g2553的中断优先级。如图,最下面的复位中断具有最高优先级。 中断嵌套是指系统为某个中断请求服务时,可能再次接收到其他中断请求信号,这时系统有可能会再次中断,转去处理新的、优先级更高的中断请求。对于msp430,一般情况下

MSP430单片机入门基础例程1

MSP430单片机入门基础例程1 作者:DC 微控技术论坛原创 MSP430单片机入门基础例程 若想了解MSP430单片机常用模块应用原理,请下载<> 由于IO应用原理比较简单,所以我主要以MC430F14开发板的实例来讲解。新手用户可以 参与其应用思路。 计划推出几个有价值的参考例程: [1]直接IO按键检测处理程序(非低功耗方式) [2]IO口中断演示程序 [3]利用IO中断方式实现按键检测程序(低功耗方式) 实验制作如下图,新手用户轻松地在MC430F14开发板上实现。 例程[1]:

//MSP430F14-直接IO口按键检处理程序 /******************************************************************* ******/ //以下是结合MC430F14开发板来实现的按键检处理程序实验. //分别使用了采个三个按键接到MSP430的通用IO口,按任意一个按键可以使板上的LED反转. //例程中,按键采用不断查询方式,以得到键值.并没有使用到低功耗.此程序结构比较适合 //用在非手持设备或非电池供电的设计中.此程序结构比较通用,级用户可参与或套用修改. //应用目标板:https://www.wendangku.net/doc/8512956961.html, MC430F14开发板/******************************************************************* ******/ #include //初级用户要习惯采用宏定义,以方便的编写和修改 #define keyio 0xf8 //定义按键IO口,Px0-Px2 IO口. #define key_1 0xfe //定义返回键值1 #define key_2 0xfd //定义返回键值2 #define key_3 0xfb //定义返回键值3 //声明子程序

msp430的矩阵键盘程序

msp430g2553的矩阵按键程序 IAR环境下的程序! 矩阵按键在单片机设计中经常见到,下面给大家几个程序!如果有需求可以看看!矩阵按键,扫描 下面程序是淘来的! #include /***************全局变量***************/ unsigned char Key_Val; //存放键值 void CtrlKey(unsigned char sw); //控制键盘开关//sw=0关sw=1开 /******************************************* 函数名称:Init_Keypad 功能:初始化扫描键盘的IO端口 参数:无 返回值:无 ********************************************/ void Init_Keypad(void) { P1DIR = 0x0f; //P1.0~P1.3设置为输出状态,P1.4~P1.7输入状态(上拉H) P1OUT=0; P1IES =0xf0; //P1.4~P1.7允许中断 P1IE =0xf0; //P1.4~P1.7下降沿触发中断 P1IFG=0; //中断标志清0 Key_Val = 0; } /******************************************* 函数名称:Check_Key 功能:扫描键盘的IO端口,获得键值 参数:无 返回值:无 ********************************************/ //p14\5\6\7 接上拉电阻 /*************************************** key_Val 对应键值 列:[p14] [p15] [p16] [p17] ↓↓↓↓ 行: [p13]→ 1 2 3 4 [p12]→ 5 6 7 8 [p11]→ 9 10 11 12 [p10]→ 13 14 15 16 ***************************************/ void Check_Key(void) {

(完整版)MSP430单片机课程设计

文华学院学生课程考查报告 考查课程:MSP430单片机应用设计 设计题目:基于MSP430单片机的温度测量仪设计 专业班级:** 学号:**** 姓名: ** 指导教师:** 实验日期:2016年5月8日

基于MSP430单片机的温度测量仪设计 文华学院 摘要 MSP430单片机是德州公司最新开发的具有16位总线带FLASH的单片机,由于它的性价比和集成度高,受到广大技术开发人员的青睐。它的可靠性能比较好,加强电干扰运行不受影响,适应工业级的运行环境,在各种行业中都占有重要的位置,越来越多的领域应用到以单片机为控制核心,用液晶显示作为显示终端的数字化控制设备,通过单片机对被控制对象进行智能控制。 MSP430单片机将会在工程技术应用中得到广泛的应用。而且,它是通向DSP 系列的桥梁,随着自动控制的低功耗化和高速化,MSP430系列单片机将会得到越来越多人的喜爱。 通过这次毕业设计,我对MSP430单片机有了完整的了解,并且着重了解了MSP430F149芯片的原理图以及它的工作原理,对内部的硬件资源和自身的汇编语法进行了实验,把它和DS18B20温度传感器联系在一起实现了温度的测量以及报警。 关键词:MSP430;超低功耗;单片机;DS18B20 Abstract Texas MSP430 microcontroller is the latest development of a 16-bit bus with FLASH MCU, due to its cost-effective and highly integrated, by the majority of technology developers of all ages. Its reliability is better, enhancing electrical interference unaffected, adapt industrial-grade operating environment, in a variety of industry occupies an important position in both, applied to more and more areas to microcontroller core, with LCD as a digital control display terminal equipment, through the controlled object MCU intelligent control. MSP430 microcontroller applications engineering technology will be widely used. And, it is a bridge leading DSP family, with automatic control, low power consumption and high speed, MSP430 MCU will get more and more people's favorite.

基于MSP430G2553的简易信号发生器

基于MSP430G2553的简易信号发生器 浙江工业大学 摘要:本作品基于TI的LaunchPad设计了一款简易信号发生器,选用TI的MSP430G2553单片机。通过单片机加外围LCD12864、DAC0832及TL082放大电路,实现了可产生正弦波、锯齿波、三角波、方波的简易信号发生器,且频率可调。 关键词:MSP430G2553 DAC0832 正弦波锯齿波三角波 一、作品基本功能介绍

2 在信号产生和处理方面。通过MSP430G2553内部的TA 定时器,外加DAC0832产生四种波形,在DA 输出后,通过一个由运算放大器TL082和精密可调电位器组成的运算放大电路,以实现信号的增益控制。最后在 50负载电阻上输出电压。系统总体框图如图1.1所示。 图1.1 系统总体框图 3 人机交互方面。本作品使用三个独立按键来控制菜单选项,其功能如表1.2所表1.2 按键功能说明 二、系统硬件和软件说明 1 硬件构成 本作品使用LCD12864作为人机交互模块,由于MSP430G2553的I/O 口很少,所以通过对LCD 的进行串行数据输入,以节约I/O 口。其连接如图1.2所示。 +5V 图1.2 LCD12864硬件连接 由于是通过MSP430G2553输出数字量的信号来产生波形,因此需要用到

DA将数字量转换为模拟量。考虑到单片机的I/O口数量,选用8位的DA来进行数模转换。硬件如图1.3所示,DAC0832采用直通工作方式,节省I/O口控制引脚。 +5V P1.0-P1.3 P1.4-P1.7 +5V I OUT 图1.3 DAC0832 直通方式硬件连接 由DAC输出模拟量后,由于波形的幅值太小,因此还需要进行幅值的放大。其中R3是精密可调电位器,方便用户对信号的幅度进行调节。50Ω的电阻可以保证整个信号发生器的输出阻抗为50Ω。信号幅度调节和输出部分电路如图1.4所示。 图1.4 幅值放大的硬件电路 2 软件系统 整个系统的软件主要有主函数、定时器TA中断函数、按键中断函数三个大

MSP430初学者注意事项

元件自制实验电路板,需要单片机芯片内部工作原理的知识、封装知识,清楚的知道每一个引脚的功能,还需要数码管、按钮、排电阻、三端稳压器、二极管、散热器、电解电容、普通电容、电阻、钮子开关等元件的知识,对于初学者,可以做一个只有3个数码管、8个按钮、8个发光二极管的简单实验板,这样的实验板,虽然简单,但足可以帮助初学者入门单片机。自制实验电路板与自制FET一样,首先画电路图,然后买元件,再画电路板。由于MSP430系列芯片是扁平封装,焊接起来有一定难度,这好象是个挑战,但实际上很简单,方法如下:首先在焊盘上涂上松香水,在松香水未干的情况下,将芯片放在焊盘上,注意芯片第一引脚的位置,并使引脚与焊盘对齐,将擦干净的电烙铁(不能有任何焊锡)接触引脚,引脚只要一热,焊盘上的焊锡就自动将引脚焊住了,千万注意电烙铁上不能有焊锡,焊接时最好配备一个放大镜。焊接电路板时,每一个元件都要核对参数,可以用万用表测量的元件一定要测量。 (4)从网上获得IA R软件 到利尔达公司或TI公司的网站下载IA R软件,并安装到计算机上。 (5)调试FET和实验板 将FET的一端与PC机的并行口相连,另一端连接实验板的JTAG接口,上电后,检查FET 芯片、实验板上的单片机芯片是否发热(用手模),PC机是否工作正常后,运行IA R软件,找个C语言或汇编语言的例子,编译成功后下载到单片机中,如果能够下载,说明一切成功。否则还需要仔细研究,一般情况下,只要电路板上的电路正确,元件参数准确,没有不成功的。 (6)分步骤学习单片机 学习使用单片机就是理解单片机硬件结构,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。 第一步:数字I/O的使用 使用按钮输入信号,发光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕麻烦,所有的单片机都是这样。 第二步:定时器的使用 学会定时器的使用,就可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。数字集成电路可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。 定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。 第三步:中断 单片机的特点是一段程序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果

基于msp430上的矩阵键盘

基于MSP430 系列单片机的键盘与显示模块 的设计 申报者: 队长 : 队员: 摘要:矩阵式键盘提高效率进行按键操作管理有效方法,它可以提高系统准确性,有利于资源的节约,降低对操作者本身素质的要求。是它能准时、实时、高效地显示按键信息,以提高工作效率和资源利用率。 矩阵式键盘乃是当今使用最为广泛的键盘模式,该系统以N个端口连接控制N*N个按键,显示在LED数码管上。单片机控制依据这是键盘显示系统,该系统可以对不同的按键进行实时显示,其核心是单片机和键盘矩阵电路部分,主要对按键与显示电路的关系、矩阵式技术及设备系统的硬件、软件等各个部分进行实现。 4*4矩阵式键盘采用MSP430单片机为核心,主要由矩阵式键盘电路,显示电路等组成,软件选用C语言编程。单片机将检测到的按键信号转换成数字量,显示于LED显示器上。该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。 关键词MSP430;单片机;显示电路;矩阵键盘; Abstract: Matrix keyboard key operation management efficiency and effective method, which can improve the system accuracy, to save resources, reduce the operator itself quality requirements. Is it to be on time, real-time, efficient display key information, so as to improve the work efficiency and the utilization rate of resources. Matrix keyboard is today the most widely used keyboard mode,the system is connected to the N port control N*N keys, displayed on the LED digital tube. SCM control according to the keyboarddisplay system, the system can real-time display of the different keys, its core is the MCU and the keyboard matrix circuit part,mainly on the buttons and display each part of the circuit, therelationship matrix technology and equipment, system hardware,software and implementation. 4*4 matrix keyboard using MSP430 microcontroller as the core,mainly by the matrix keyboard circuit, display circuit, the software uses C language programming. The key to the detected signalsinto digital signals, shown on the LED display. The system is flexible, easy operation, high reliability, there will be a broader development prospects. Key words: MSP430; MCU; display circuit; matrix keyboard;

相关文档
相关文档 最新文档