MSP430开发注意事项

发布者:朱颜素韵最新更新时间:2015-10-08 来源: eefocus关键字:MSP430  开发注意事项 手机看文章 扫描二维码
随时随地手机看文章
以下是在使用MSP430中的一些总结:

1.系统时钟问题:

 系统默认使用DCO,使用外部高速晶振XT2时必须自己开启XT2,并延时50us等待XT2起振,然后手工清除IFG1中的OFIFG位

 !!!!一定要注意操作顺序:打开XT2->等待XT2稳定->切换系统时钟为XT2

 若后面两步操作反了,在通常情况下不会出现问题,但是在电压不稳MCU频繁复位的情况下,非常容易造成MCU死掉,只能掉电后重新上电才能可靠复位。

 

2.早期版本的IAR开发环境

 必须在Project->Option->C-Spy中选择对应器件的DDF文件,否则调试时无SFR窗口。

 

3.在写Flash期间,一定要关闭中断,此时CPU无法执行程序

 

4.调试的时候,不要选中”Release JTAG on Go”

 

5.在调试时,需要关闭看门狗,否则在打开看门狗的情况下,每当执行到断点,程序将会跳转到入口点从头执行。或者,暂停运行或停止到断点处时,当需要继续运行时,程序不再执行,而是需要使用“同步JTAG”才能继续运行(从头运行?)

 

6. IAR EWB标识符是区分大小写的

 

7. 结构变量内部存在对齐要求,通常按照2个字节的位置对齐,在”C/EC++ Compiler Reference Guide”的P93又如下例子:

struct {

 short s;

 char c;

 long l;

 char c2;

} s;

sizeof(s) 为10,而不是8

 

可以使用#pragma pack来改变这种对齐方式,但是会导致,这个结构只能按字节方式存取

 

8. MSP430 IAR C/EC++ Compiler支持两个运行库

 1. IAR CLIB : 主要用于8或16为处理器,不完全兼容ISO/ANSI C,也不完全支持IEEE     754浮点数,不支持Embedded C++.

 2. IAR CLIB : 支持ISO/ANSI C和Embedded C++.

 

9. cstartup的定制

(1). 在__low_level_init()中添加代码。该函数可以用来初始化I/O寄存器,并决定数据段是否在cstartup被初始化。文件430srcliblowinit.c给出了框架,copy到项目目录中使用,文件中有一定的使用说明。

(2) 若__low_level_init()中添加代码不能满足要求,则把430srclibcstartup.s43拷贝到自己的工作目录,修改所需代码;然后在将该文件添加到项目,在项目选型的XLINK的include页下选择Ignore CSTARTUP in library即可。

 

10. 使用#include “io430x14x.h”和#include “in430.h”来替代#include

可以使用定义的位变量

 

可以使用以下方式定义位变量,但是编译器最终还是转换为字节操作:

 struct

 {

 unsigned char WDTIE : 1;

 unsigned char OFIE : 1;

 unsigned char : 2;

 unsigned char NMIIE : 1;

 unsigned char ACCVIE : 1;

 unsigned char URXIE0 : 1;

 unsigned char UTXIE0 : 1;

 } IE1_bit;

 

不推荐使用bitfields,效率很低

 

11. 数组的索引值用int型效率最高,char型也好略低

数组类型:char型数组效率最高,

其他类型的数组在索引时,都采用了乘法

关键字:MSP430  开发注意事项 引用地址:MSP430开发注意事项

上一篇:MSP430中断嵌套机制
下一篇:程序匠人--MSP430学习笔记

推荐阅读最新更新时间:2024-03-16 14:34

MSP430寄存器的设置与作用
/ ************************************************* ******************* * *标准的寄存器和位定义为德州仪器 * MSP430微控制器。 * *本文件支持汇编语言和C开发 * MSP430x14x设备。 * *德州仪器,2.4版 * *牧师1.2,其他定时器B位定义。 *更名为XTOFF到XT2OFF。 *牧师1.3,去掉前导0到避免解释为八进制 *在C值 *牧师1.4,更正LPMx_EXIT引用新的内在_BIC_SR_IRQ *改变TAIV和TBIV只读 *版本1.5,请将所有的#define语句用括号 *版本1.6,定义的向量USART(除了UART) *牧
[单片机]
基于MSP430F1611单片机实现多功能电路保护装置的设计
电力系统的飞速发展对继电保护不断提出新的要求,电子技术、计算机技术与通信技术的飞速发展又为继电保护技术的发展不断注入了新的活力。随着微机保护装置的研究,在微机保护软件、算法等方面也取得了很多理论成果。从20世纪90年代开始我国继电保护技术已进入了微机保护的时代。 电力系统对微机保护的要求不断提高,除了保护的基本功能外,还应具有大容量故障信息和数据的长期存放空间,快速的数据处理功能,强大的通信能力,与其他保护、控制装置和调度联网,以共享全系统数据、信息和网络资源的能力、高级语言编程等。这就要求微机保护装置具有相当于一台PC机的功能。 计算机网络可从网上获取电力系统运行和故障的任何信息和数据,也可将它所获得的被保护元件的任何信
[单片机]
基于<font color='red'>MSP430</font>F1611单片机实现多功能电路保护装置的设计
提高MSP430G系列单片机的Flash 擦写寿命的方法
摘要 在嵌入式设计中,许多应用设计都需要使用EEPROM 存储非易失性数据,由于成本原因,某些单片机在芯片内部并没有集成EEPROM。MSP430G 系列处理器是TI 推出的低成本16 位处理器,在MSP430G 系列单片机中并不具备EEPROM。为了存储非易失性数据,MSP430G 系列处理器在芯片内部划分出了256 字节的Flash 空间作为信息Flash,可用于存储非易失性数据,但是由于Flash 与EEPROM 在擦写寿命上存在一定差距,所以在实际应用中,这种应用方式并不能够满足所有客户的需求。本应用笔记介绍了使用代码区域Flash 来模拟EEPROM,通过一定的软件处理算法,可以大大增加数据存储周期的一种方法。本文给出了
[单片机]
提高<font color='red'>MSP430</font>G系列单片机的Flash 擦写寿命的方法
基于MSP430系列微控制器串口通信时的波特率自动检测的实现
  通常微控制器通过串行接口与其它终端进行通信时,两个终端需要通讯波特率一致才能达到准确与可靠的通讯效果,串行波特率的自动检测(ABR)可以解决通信终端的波特率自动匹配问题,从而实现微控制器与PC或其它主机的串行通信。本文主要介绍 MSP 430系列微控制器实现串口通信时的波特率自动检测。   1.概述   当MCU需要同时与几个不同波特率值的系统进行通信时,ABR检测功能则显得很重要。ABR检测在检测波特率值的同时可以自动调整波特率值。在执行ARB检测算法时,当主机波特率在115200~74400之间时,MCU必须从主机接收到一个预先设置的特定字符,如 CR 字符;当主机波特率在9600~1200之间时,MCU则需从主机接收到第
[单片机]
基于<font color='red'>MSP430</font>系列微控制器串口通信时的波特率自动检测的实现
MSP430学习笔记——定时器(续)
同时定时器A还有3个捕获/比较寄存器CCRx,3个捕获/比较控制寄存器CCTLx。 在捕获比较模块中,可读可写。其中CCR0经常用作周期寄存器,其他CCRx相同。 CCTLx捕获/比较寄存器 CMx:选择捕获模式 CCISx:捕获/比较的输入选择 SCS:1,捕获输入信号与定时器时钟信号同步;0,异步捕获 SCCI:被所存的CCI输入信号和EQUx锁存,通过SCCI读出来。 CAP:0,比较模式;1,捕获模式 OUTMODx:选择输出模式 CCI:捕获/比较的输入信号。选择的输入信号通过该位来读出 CCIFGx :捕获比较中断标志。 捕获模式:寄存器CCRx捕获了定时器TAR值时置位 比较模式:定时器TAR值等于寄存器
[单片机]
<font color='red'>MSP430</font>学习笔记——定时器(续)
基于MSP430系列单片机的常用程序编写总结
前一段时间一直在用TI公司的MSP430系列的单片机,总结了点430常用的程序框架。 a.循环低功耗、中断服务程序唤醒 void main() { 关闭开门狗; 初始化时钟; 初始化端口; 初始化屏幕; 其他外围必要的初始化; 开中断; while(1) { 进入低功耗模式; 执行某函数; } } 中断函数1 { 退出低功耗; 中断服务程序; } 例如: 1 #pragma vector= ADC 12_VECTOR 2 __in te rrupt void ADC12ISR (void) //AD转换中断服务程序 3 { 4 sta TI c unsigned char index = 0; 5 LPM3_EXIT; 6
[单片机]
基于<font color='red'>MSP430</font>系列单片机的常用程序编写总结
基于uC/OS-II和MSP430单片机的RTOS的技术分析
   单片机作为嵌入式信息产品的一个重要应用方面,其使用、设计面临着全新的挑战。一方面,人们对嵌入式产品的要求越来越高,稳定可靠、功能丰富、物美价廉的信息产品将成为人们的首选。另一方面,随着微电子工艺水平的发展,单片机处理器的能力不断提高,从最初的8位单片机到16位,进而32位单片机,功能越来越强大,执行速度越来越快,集成度、精确度也越来越高,应用领域进一步拓宽。可以说,单片机芯片的性能已经能够满足现代人们对嵌入式信息产品的更高要求。为了能将二者有效地结合起来,嵌入式RTOS的软件设计方法也取代了以前的前后台(超循环)设计方法,越来越受到重视和应用。   正如分时操作系统中Linux的出现打破了Windows一统天下的局面一
[单片机]
基于uC/OS-II和<font color='red'>MSP430</font>单片机的RTOS的技术分析
基于MSP430单片机的数据采集系统
1 引 言 在科学研究及其他各种领域中,数据采集和监测已经成为日益重要的检测技术。 在许多工业测控机械、医疗仪器以及消费电子产品中,都对数据采集系统的实时性与功耗提出了更高的要求:即在满足微功耗、微型化的总体设计原则的基础上,又要能实时反映现场采集数据的变化。这就对系统的功耗、采样速度、数据存储和传输速度等提出了更高的要求。然而,随着半导体与微控制器技术的飞速发展,各种微电子器件性能不断提升,功耗却不断降低。技术的进步使得高速度、低功耗的数据采集系统得以实现。 本文设计的数据采集与显示系统采用 TI公司研制的MSP430系列超低功耗单片机作为核心控制元件,实现了数据的高速采集与显示。 系统主要特
[单片机]
基于<font color='red'>MSP430</font>单片机的数据采集系统
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved