预备知识:本人用的msp430fr6989(msp430系列大同小异),datasheet中有句非常关键的一段话:
30.3.15.1 UART Transmit Interrupt Operation
The UCTXIFG interrupt flag is set by the transmitter to indicate that UCAxTXBUF is ready to accept
another character. An interrupt request is generated if UCTXIE and GIE are also set. UCTXIFG is
automatically reset if a character is written to UCAxTXBUF.
翻译下来就是说:UCTXIFG这个flag(flag置0即产生中断)是为了表示前一个char发送完成后,可以加载下一个char入UCAxTXBUF了。UCTXIE and GIE设置后也可以触发中断请求。UCAxTXBUF写入一个新数据后,UCTXIFG的flag自动重置。
所以串口中断程序大致思路:
1.举例定义char a[100],我们软件里赋值UCTXIE为1(GIE可以不管),进入中断函数
2.进入中断函数后,a[0]送到UCAxTXBUF里面,中断函数结束,UCAxTXBUF发送a[0]完成后,UCTXIFG中断标志触发,又进入中断函数,发送a[1],中断函数结束,UCAxTXBUF发送a[1]完成后,UCTXIFG中断标志触发..........发完a[99]
3.发完a[99]后,关串口中断,over。
关键字:msp430 串口发送 中断操作
引用地址:
msp430串口发送中断操作之简单三步
推荐阅读最新更新时间:2024-10-31 23:58
MSP430液晶显示接口
1。段式液晶驱动、字符点阵式液晶、全点阵图形液晶显示器 2。字符点阵式液晶显示器由:控制器、驱动器、字符发生器ROM、字符发生器RAM、液晶屏。 3。字符由5*7点阵或5*10点阵组成。 4。控制电路(指令寄存器IR、数据寄存器DR、忙标志BF、地址计数器AC、显示数据寄存器DD RAM、字符发生器 CG RAM、时序发生电路) 5。常用指令: 清除显示:0000 0000 01 回原点: 0000 0000 0* 设置输入模式:0000 0001 I/D S 显示控制:0000 001D C B 光标或显示位置:0000 01 S/C R/L * * 功能设置:0000 1D/L N F
[单片机]
MSP430熔丝及加密总结
MSP430是使用熔丝或者电子熔丝去做内部代码的保护,如果熔丝烧断,那么将不能使用JTAG或者BSL去非法访问内部代码。MSP430F1/F2/F4系列是采用物理熔丝的方式,使用编程器在TEST引脚或者TDI引脚上加6.5V±0.5V的电压,采取这种方式,JTAG接口被禁止而且是不可恢复的,只能通过BSL去访问。MSP430F5/F6/FR2/FR4/FR5/FR系列都是采用e-Fuse电子熔丝的方式去做加密,一般是在Flash/FRAM中的2个字的位置(签名)内写入一定的内容去实现加锁或者加密码。器件只能通过密码保护的BSL去访问。通过BSL去访问器件,去清除JTAG签名区,那么是可以重新恢复并且访问MCU的。 F5x/F6
[单片机]
MSP430F149控制ADF4360-7程序
单片机源程序如下: /*********************************************************************************************** 文件:ADF4370.H 作者:沨 用途:集成锁相环ADF4360-7控制程序 MCU: MSP430F149 晶振:8MHz 编译器:IAR Ror MSP430 5.10 硬 件:2011_10_06 ***********************************************************************************************/ #define uc
[单片机]
C51串口中断---接收和发送
C51单片机(STC11L32/48/60XE)的串口中断处理函数,如果在使能串口中断后,有接收或者发送数据时,就会设置中断标志位,进而处理中断函数。 接收数据,设置RI=1,处理完中断函数后,再设置RI=0。同理,发送数据,设置TI=1,处理完中断函数后,再设置TI=0。
[单片机]
MSP430 & 4x4 矩阵键盘测试
买的矩阵键盘几块钱,很便宜,厂家给的原理图见下 虽然但是,图上的S1~S16和矩阵键盘上印刷的好像不是很一样,不过并不是个问题。 行和列各有四个引脚,自我感觉把行/列的引脚在板子上的接口设置在同一组IO下比较方便。 这里行用的是P2.0-P2.3,列用的是P1.4-P1.7 网上很多关于其程序编写的介绍,总之就是要找到按键所在的坐标(x,y)。。至于怎么定位所在行和所在列就各有方法了。 测试的时候就是用的普通的行列扫描法。 先扫描列:行引脚输出高电平,列引脚当没有任何按键按下时应该为低,当该列有按键按下时就应该为高。 同理,扫描行反过来设置电平就好。 当然为了实现引脚悬空时稳定电平,应该设置上
[单片机]
数模转换器AD420及其与MSP430的接口技术
1 概述 AD420是ADI公司生产的高精度、低功耗全数字电流环输出转换器。AD420的输出信号可以是电流信号,也可以是电压信号。其中电流信号的输出范围为4mA~20mA,0mA~20mA或0mA~24mA,具体可通过引脚RANGE SELECTl,RANGE SELECT2进行配置。当需要输出电压信号时,它也能从一个隔离引脚提供电压输出,这时需外接一个缓冲放大器,可输出0V~5V,0V~10V,±5V或±10V电压。 AD420具有灵活的串行数字接口(最大速率可达3.3 Mb/s),使用方便、性价比高、抑制干扰能力强,非常适合用于高精度远程控制系统。AD420与单片机的接口方式有2种:3线制和异步制。单片机系统通
[单片机]
MSP430 捕获模式,定时器A连续计数模式
/*捕获模式,定时器A连续计数模式。有软件循环产生方波信号,信号同时接入 P1.1和P1.2 ,由CCR1由CCR1获取周期,CCR0确定信号占空比*/ #include io430.h unsigned int jt,kt,lastCCR0,lastCCR1; int main( void ) { unsigned int i; // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; TACTL=TASSEL_2+ID_3+MC_2+TACLR;//SMCLK,8分频,连续模式 /*#define CM_0
[单片机]
基于VxWorks的油井数据采集远程终端的设计
0 引 言
目前,采油厂多以抽油机采油生产为主要任务,抽油机的分布点多面广,工作在条件恶劣的环境中,容易损坏和遭外力破坏,需要经常巡测,人员工作强度大。目前油井工作状态参数监控由于缺乏远程手段,对油井的生产状况均处于事后处理状态,油井出现异常或被盗破坏时不能及时处理,造成大量不明损失。基于CD-MA通迅信道的远程终端(Remote Terminal Unit,RTU)充分利用现有的计算机网络,通过对现场的监测和数据采集、传输,可以满足油井远程监控的需求。该远程终端可以对油井运行时的负荷、位移、油管回压、温度、冲次、工作电流、电压等参数进行实时全自动在线抄收;当现场有异常情况发生时,监控中心能自动发出相关报警信息,调度
[嵌入式]