1.interrupt 用于中断函数。
定义如下:
语法: interrupt void 函数名()
或者
interrupt[中断向量]void 函数名()
参数:中断函数没有参数。中断函数需要指定中断向量。
返回:中断函数一般是void,没有返回。
说明:interrupt关键字声明了在处理器发生中断时调用;函数的参数必须为空
2.monitor 使函数进入原型(atomic)操作状态。
定义如下:
语法:monitor 函数类型 函数名(参数表)
参数:该函数可以有参数,也可以没有参数。
返回:函数可以有返回,也可以没有返回。
说明:monitor关键字使得在函数执行期间禁止中断,使函数执行不可中断;在其它所有方面,有monitor声明的函数则与普通函数相同。
3.no_init
语法:no_init 变量声明
说明:在默认情况下,MSP430的C语言编译器将变量存放在主RAM中,并在启动时对其进行初始化。no_init类型修正符使编译器把变量放在非易失RAM区中(如EEPROM、FLASH等),在启动时也不对它们进行初始化。在no_init变量的声明中,不能含有初始化。如果用了非易失RAM,连接时要安排在非易失RAM区,地址范围为0x0000~0xFFFF。实际可用范围是0x200~0xFFDF.
4.sfrb 用于声明单字节I/O数据类型对象。
语法:sfrb 标识符=常量表达式
说明:sfrb表示一个I/O寄存器,具有以下特点:等价于无符号字符,只能直接寻址,它驻留地址范围0x00~0xFF之内,例如:sfrb PxOUT =0x0021; 定义了Px端口的输出寄存器
5.sfrw 用于声明双字节I/O数据类型对象。
语法:sfrw 标识符=常量表达式
说明:sfrw表示一个I/O寄存器,具有以下特点: 等价于无符号字符,它只能直接寻址,它驻留地址范围0x100~0x1FF之内,例如:sfrw WDTCTL =0x0021; //定义了看门狗的寄存器。
关键字:MSP430 C语言 关键字扩展
引用地址:
MSP430 C语言的关键字扩展
推荐阅读最新更新时间:2024-11-13 14:08
MSP430G2553测试程序(串口程序,定时器模式)
// // // MSP430G2xx3 // ----------------- // /|| XIN|- // | | | // --|RST XOUT|- // | | // | CCI0B/TXD/P1.1|-------- // | | 9600 8N1 // | CCI0A/RXD/P1.2| -------- // Built with IAR Embedded Workbench Version: 5.40 //串口调试助手,下载地址:http://www.sudt.com/download/AccessPort137.zip //***************************************
[单片机]
Keil C51对C语言的关键词扩展之十七: sbit
sbit用来定义一个特殊功能寄存器的某一位。 sbit name = sfr-name ^ bit-position; sbit name = sfr-address ^ bit-position; sbit name = sbit-address; name 特殊功能寄存器某一位的名称 sfr-name 已定义的特殊功能寄存器名称 bit-position 特殊功能寄存器比特位置 sfr-address 特殊功能寄存器的地址 sbit-address 特殊功能寄存器的比特地址 sbit提供了访问可位寻址特殊功能寄存器以及其他可位寻址对象的方法。 sbit EA = 0
[单片机]
基于MSP430智能小车的设计
摘要:介绍一种基于MSP430F2274单片机为核心的智能小车。小车采用超声波测距技术实现自动避障,同时通过语音模块来播报出小车与障碍物的距离。为了使测距不受温度影响,用温度传感器实时检测小车周围环境的温度并修正距离计算公式的参数,采用光电编码器来检测小车的速度,运用PID控制算法和PWM来控制小车的精确稳定的运行,从而达到预期的设计目标。 智能小车涉及到高级计算机控制、电子机械、自动化等诸多学科,随着科技的不断进步,智能电子产品发展步骤不断加快,各种应用层次的机器人等大量出现,目前应用在智能小车或机器人的微控制器主要是8/16单片机或ARM和数字信号处理器DSP等。本设计采用TI公司生产的功耗低运行速度快且价格便宜的MSP4
[单片机]
MSP430f2619学习--PWM
思路: 利用定时器B的比较功能输出PWM波形; 一、定时器B 定时器B的特点: 1)异步16位定时/计数器; 2)4种工作模式; 3)4个可选长度 4)3或7个可配置的捕获/比较寄存器; 定时器的4种工作方式分别为,停止计数模式,增计数模式,连续计数模式和增减计数模式; 要输出PWM波形,需要配置定时器B的捕获/比较部件工作在比较模式,寄存器TBCCTLx的CAP位配置为0即可; TBCCTLx寄存器定义: 定时器的每一个捕获/比较部件都拥有一组输出单元,这个输出单元是用来产生输出信号的,例如PWM波等,输出信号的引脚通常在数据手册中都会表明 每个输出单元都有8种模式: 1)电平输出,由TBCCTLx寄存器
[单片机]
C语言一百例第十九例
代码: /* C语言第19例 题目:一个数如果恰好等于它的因子之和,这个数就称为 完数 。例如6=1+2+3.编程找出1000以内的所有完数。 程序分析:请参照:C 练习实例14。 */ #include stdio.h #define N 1000 int main() { int i,j,k,n,sum; int a ; for(i=2;i =N;i++) { sum=a =1; k=0; for(j=2;j =(i/2);j++) { if(i%j==0) { sum+=j; a =j; }
[单片机]
MSP430学习笔记-时钟
LF mode (XTS = 0) HF mode (XTS = 1) 控制位OSCOFF,XT2OFF分别用于控制是否禁止使用LFXT1和XT2晶振 OSCOFF,XT2OFF=1表示禁止 SMCLK 和 MCLK 时钟信号时,可以用控制位 SCG0 禁止直流发生器。 在 PUC 信号之后,DCOCLK 被自动选作 MCLK 时钟信号,根据需要,MCLK 的时钟源可以另外设置为 LFXT1 或者 XT2。设置顺序如下: (1)让 OSCOFF=1 (2)让 OFIFG=0 (3)延时等待至少 50us (4)再次检查 OFIFG,如果 OFIFG=1,重复(3)、(4)步骤,直到 OFIFG=0 为止。
[单片机]
MSP430单片机的时钟周期和机器周期与指令周期之间的关系
时钟简介: 时钟周期也称为振荡周期:定义为时钟脉冲的倒数(时钟周期就是直接供内部CPU使用的晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us),是计算机中的最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。时钟脉冲是计算机的基本工作脉冲,控制着计算机的工作节奏。时钟频率越高,工作速度就越快。机器周期:在计算机中,常把一条指令的执行过程划分为若干个阶段,每一个阶段完成一项工作。每一项工作称为一个基本操作,完成一个基本操作所需要的时间称为机器周期。8051系列单片机的一个机器周期由6个S周期(状态周期)组成。一个S周期=2个时钟周期,所以8051单片机的一个机器周期=6个状态周期=12个时钟周期。指令
[单片机]
AVR单片机学习(四)C语言的流水灯验证
AVR 的IO口简介与寄存器的概念 一、何谓 寄存器 寄存器就是RAM中的一些特殊单元,映射片上外设的特殊功能 二、何谓 IO口 可以将 0 与1转换为电压信号的端口 单片机中最常用的TTL电平:0V代表 0 ,+5V 代表 1 Mega16有4个IO口,PA,PB,PC,PD 三、IO口的性能指标 灌电流能力:能够流入IO口的最大电流 拉电流能力:能够从IO口流出的最大电流 上拉电阻与下拉电阻 最大输入电压 IO口的两种状态 如上图(有个选择开关实际电路中不存在的为了好理解才给出的)输出就是 要么给个5V 要么给个地 0V 就是输出0 和 1
[单片机]