msp430的USCI串口,妙招搞定

发布者:清新家园最新更新时间:2016-06-20 来源: eefocus关键字:msp430  USCI串口 手机看文章 扫描二维码
随时随地手机看文章
430的USCI串口(UART mode)初始化设置十分繁杂, UCA0BR0 UCA0BR1 UCA0MCTL 等还需按照波特率计算,并且有小数部分微调,在这里共享一个头文件,在操作串口时,只要一个init_uart(9600);就全搞定,注:9600还能改成4800 115200等其他波特率,十分方便。

#define clock 8000000
#define UCBRS(x) UCBRS_##x

void uart_init(long baud)
{
float x = clock / baud ;
long y = clock / baud ;
char n;
P1SEL = BIT1 + BIT2 ; // P1.1 = RXD, P1.2=TXD
P1SEL2 = BIT1 + BIT2 ; 
UCA0CTL1|=UCSSEL_2 ;

UCA0BR0 = y % 256; 
UCA0BR1 = y / 256;

n=(char)((x-y)*8);
UCA0MCTL=2*n; //UCBRS_n n为*2 
UCA0CTL1 &= ~UCSWRST; 
IE2 |= UCA0RXIE ; 
}

UCA0MCTL=2*n; 这里是移位操作,详情请看register。

当然,时钟修改了的话,也要记得把clock修改一下。

好用的话,大家支持一个吧,下面我把头文件共享,支持printf,getchar等。

关键字:msp430  USCI串口 引用地址:msp430的USCI串口,妙招搞定

上一篇:基于MSP430G2303的TV背光3D红外信号发射的方案
下一篇:ISP和IAP两种编程方式有何区别?

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

MSP430单片机的PWM操作
//******************************************************************************* // 描述:MSP430实现PWM。反映在LED灯上,可以看到LED灯的亮度不断变化 // // ACLK= n/a, MCLK= SMCLK= default DCO ~ 800k // // MSP430F13x // ------------------- // /|\| XIN|- // | | | 32kHz // --|RST XOUT|- // | | // | P1.2|-- LED // // // 硬件电路:MSP430F135核心实验板-I型 //
[单片机]
msp430f5418使用总结
公司的产品是基于MSP430F5418开发的,在程序的调试过程中遇到过一些问题,现总结如下。 1)UCS 时钟如同处理器的心脏,每一个周期就是心脏的一次脉动。以前使用其他处理器时,只需要选择合适频率的晶体,接在XT1和XT2两端,再加两个电容就可以了。而MSP430F5418的时钟系统略显复杂,容易让刚开始接触它的人一头雾水。5418的时钟设置由UCS(Unified Clock System)来管理,使用起来比较灵活,其结构如图 所示。 UCS模块有XT1CLK和XT2CLK两个外部时钟源,以及VLOCLK、REFOCLK和DCOCLK(DCOCLKDIV是DC
[单片机]
<font color='red'>msp430</font>f5418使用总结
MSP430F42X系列单片机16位ADC通用程序库
这个msp430单片机的16位ADC库文件的调用方法可先下载完整代码然后找到(例4.1.6)这一节,里面有调用方法 ADC16.c文件: /* MSP430F42X系列单片机16位ADC通用程序库 说明:该驱动程序库包含了常用的16位ADC操作与控制功能函数,如选择通道、设置信号放大倍数、设置数据格式、基准源输出开关等,以及常用采样函数,包括单通道采样、平均采样、多通道同时采样等。可以作为各种程序的底层驱动使用。 要使用该库函数,需要将本文件(ADC16.c)添加进工程,并在需要调用ADC函数的文件开头处包含 ADC16.h */ // MSP430FE425 // +------
[单片机]
MSP430方波发生器
最近在研究MSP430,有产生方波的需要,于是尝试用定时器写了两个方波发生的函数,一个可以产生几十K的方波,一个可以产生几百K的方波,感觉还比较有用,特来分享。 频率与CCR0计算式:2*CCR0/TimerAFrequency=1/F --- CCR0=TimerAFrequency/(2*F) void low_square_Generator(int frequency) //几十KHZ方波产生器 { P1DIR |= 0x02; //P1.1的第二功能 P1SEL |= 0x02; CCTL0=OUTMOD_4; //翻转模式
[单片机]
MSP430F5529LP(一)IIC与OLED的HELLOWRLD
简单理解下什么是IIC I2C(Inter-Integrated Circuit BUS) 集成电路总线,该总线由NXP(原PHILIPS)公司设计,多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。 总线信号 :   SDA :串行数据线   SCL :串行时钟 总线空闲状态 :   SDA :高电平   SCL :高电平 起始位:SCL为高电平期间 SDA出现下降沿 终止位:SCL为高电平期间 SDA出现上升沿 数据传输 :SDA的数据在SCL高电平期间被写入从机。所以SDA的数据变化要发生在SCL低电平期间。 先简单写出IIC.h头文件
[单片机]
<font color='red'>MSP430</font>F5529LP(一)IIC与OLED的HELLOWRLD
MSP430教程11:MSP430单片机低功耗结构
当系统时钟发生器基本功能建立之后,CPU内状态寄存器SR的SCG1,SCG0,CPUOFF,OSCOFF位是重要的低功耗控制位。只要任意中断被响应,上述控制位就被压入堆栈保存,中断处理之后,又可恢复先前的工作方式。在中断处理子程序执行期间,通过间接访问堆栈数据,可以操作这些控制位;这样允许程序在中断返回(RETI) 后,以另一种功耗方式继续运行。 各控制位的作用如下: SCG1: 复位,使能SMCLK;置位,禁止SMCLK。 SCG0: 复位,激活直流发生器,只有SCG0置位,并且DCOCLK没有被用作MCLK或SMCLK时,直流发生器才能被禁止。 OSCOFF:复位,激活LFXT1,只有当OSCOFF被置位并且L
[单片机]
MSP430教程16:MSP430单片机开发总结
1.#i nclude 指要在编辑器设定目录下,#i nclude 指的是在当前工程目录下。 2.要调用另一个文件中的函数,要把这个函数文件放到当前工程目录下,并且在工程中添加此文件。 3.命名中不能有-,比如:byq-ee会认为是错误的,要用下划线。 4.用IAR软件仿真时,可以加入变量,如果是查看I/O信息只需加入PXIN,PXOUT即可。 5.IAR在处理字符时,要注意,是字符处理结尾标志,他和其他编辑软件是不同的。比如我们长用字符处理回 自动在结尾处加,但IAR有些是不加的,这就要十分注意。 6.如果只用到LFX1的低速时钟,9600bit/s传输的话,接收会出现问题,原因是误差太大,可以设置到4800以下。 7.在写FLA
[单片机]
MSP430系统应用结构设计与选型
1 MSP430 简介 MSP430是TI公司推出的16位单片机系列产品,在电池供电的低功耗应用中具有独特的优势。其工作电压为1.8~3.6 V,正常工作时功耗可控制在200μA左右,低功耗模式可实现2μA甚至O.1μA的低功耗。MSP430系列单片机作为性能优异的MCU在中国已经得到了广泛的应用。MSP430具有高集成度,通常在单个芯片上集成了12位的A/D转换器、比较器、多个定时器,以及片内USART、看门狗、片内DCO等。一般单片就可满足大多数的应用需要。 MSP430单片机的程序存储器是Flash存储器,并且支持JTAG在线编程,可以方便地实现程序的下载、仿真、调试和升级。 目前整合性最好的MSP430F44X系列
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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