历史上的今天

今天是:2024年10月30日(星期三)

正在发生

2019年10月30日 | msp430学习笔记之uart

发布者:古通闲人 来源: eefocus关键字:msp430  uart 手机看文章 扫描二维码
随时随地手机看文章

1 相关知识

MSP430系列,usart模块的波特率值设定是通过以下三个参数决定的:UxBR0,UxBR1,UxMCTL

波特率=BRCLK/N 

BRCLK:时钟源,可以通过寄存器设定何为时钟源; 


N:波特率产生的分频因子。N=UxBR1+UxBR0+UxMCTL,其中UxBR1+UxBR0为整数部分,UxMCTL为设定小数部分 。


举个例子:波特率=9600,时钟源=32.768kHz

N=32768/9600=3.41

很明显:UxBR1+UxBR0=13,即UxBR1=0,UxBR0=13。


首先把小数部分0.41×8=3.28,取整后为3。这个5的意思就是在UxMCTL中的8位里要有3个1,剩下来的就是怎么分配这3个1的位置了。注意一点 就是这3个1要相对分散点。


因此:UBR00 = 0x03;UBR10 = 0x00;UMCTL0 = 0x4A; 


2 代码实现

     

//本平台 msp430f149

#include

 

void usart0_config(void){

P3SEL |= 0x30;                            // P3.4,5 = USART0 TXD/RXD

ME1 |= URXE0 + UTXE0;                     // Enable USART0 T/RXD

UCTL0 |= CHAR;                            // 8-bit character

UTCTL0 |= SSEL0;                          // UCLK = ACLK

UBR00 = 0x03;                             // 32k/9600 - 3.41

UBR10 = 0x00;                             //

UMCTL0 = 0x4A;                            // Modulation

UCTL0 &= ~SWRST;                          // Initialize USART state machine

IE1 |= URXIE0;                            // 使能USART0的接收中断

_EINT();   //开总中断,整个系统中断使能

}

 


//字符发送函数

void send_char(char sendchar){

while (!(IFG1 & UTXIFG0));    //等待发送寄存器为空         

TXBUF0 = sendchar;

}

 

//字符串发送函数

void send_string(char *ptr){

while(*ptr != ''){

send_char(*ptr++);                  // 发送数据

}

send_char('n'); //发送换行指令     

}

 

int main(){

WDTCTL = WDTPW + WDTHOLD;     //默认MCLK = DCO

usart0_config();

P2DIR = 0x80;

P2OUT = 0xff;

while(1){

}

return 0;

}

 

 

//usart0 interrupt receive function

#pragma vector=UART0RX_VECTOR

 

__interrupt void usart0_rx (void)

{

if( RXBUF0 == 0x00 ){    //收到0时,led灯亮,并发送 "led is on"

P2OUT = 0x7f; 

send_string("led is on");

}

if( RXBUF0 == 0x01 ){ //收到1时,led灯亮,并发送 "led is off"

P2OUT = 0xff;

send_string("led is off");

}

}


3 实验结果

每次发送0调试助手都可以收到 "led is on"并且led灯亮,发送1时led灯灭,同时调试助手显示"led is off",注意:16进制发送数据

关键字:msp430  uart 引用地址:msp430学习笔记之uart

上一篇:MSP430杂谈--AD7745硬件IIC驱动与模拟IIC驱动
下一篇:MSP430之IAR map文件解析

推荐阅读

集微网消息,研调机构群智咨询最新全球电视代工厂报告显示,鸿海旗下富士康9月出货160万台,排名第一,同属鸿海集团面板厂群创光电投入电视代工,9月出货暴增近30万台。京东方出货创新高,排名第三。从主要TV代工厂商出货状况来看,富士康出货量达到160万台,出货排名第一,年增0.9%。主要客户夏普和索尼的出货均有明显增长。报告显示,2018年9月全球13大...
新闻亮点: 恩智浦与大众即将在欧洲道路上部署 V2X 技术  V2X 技术将提高行车安全性——现阶段它可以保护汽车驾驶员,将来也可以保护骑行者与行人  Wi-Fi-p 是现有技术中唯一能够立即大规模量产的安全可靠的 V2X 技术 德国汉堡——2019 年 10 月 30 日——全球最大的汽车半导体供应商恩智浦半导体 NXP Semiconductors N.V.(...
去年2019年的双十一天猫交易总额2684亿元,京东累计成交额2044亿元。从快递行业来看,最主要的现象就是快递量的增长。据国家邮政局统计,2017年“双十一”期间就送了这一年快递的4%。上半年,全国快递累计已完成173.2亿件。在《全国社会化电商物流从业人员研究报告》中指出,到2020年中国电商物流包裹数量有望达到1,000亿个,日处理量超过3亿个。那么,...
据酷安网友 @一个小串串 近期的爆料图片显示,华为 P50 Pro 是存在 5G 版本的,但只是华为内部的工程机测试版(IDEALS Logo,非零售版),搭载了完整的射频芯片,预装鸿蒙 HarmonyOS 系统,采用麒麟 9000 芯片,并猜测,摄像头也有可能是 IMX700Y 传感器。  IT之家获悉,华为 P50 系列于 7 月 29 日发布,搭载 HarmonyOS 2 ...

史海拾趣

问答坊 | AI 解惑

msgQReceive 接收不到消息?

请问:msgQReceive 接收不到消息? 有可能是哪些原因? -------------------------------- …

查看全部问答∨

关于驱动程序DriverEntry执行问题

最近看了点驱动程序,有了点疑问:   DriverEntry到底什么时候执行?到处都说它是入口点,那我只安装加载驱动而不启动驱动,那它会不会执行?会不会有什么结果?就像DLL的DllMain函数一样,在其中执行很多功能函数?    自己 ...…

查看全部问答∨

EVC 在编译运行时就要卡住

这个问题卡了我好久了  真没办法解决 先装wince 再装了EVC 和 SDK,但是在打开一个工程文件 或者 自己创建一个新文件编译时,EVC就卡在那里不动了。 任务管理器里面显示的EVC是“未响应”。 如果有前辈以前也遇到过这种情况,还请为在 ...…

查看全部问答∨

问一个arm中断的问题

我的环境:at91rm9200+28F128+dataflash 我运行仿真器时,程序执行起点是__ENTRY,地址是0x20000000,(1)请问这个地址是可变的吗? 1ffffff4        [0xffffffff]   dci      0xffffffff ; ...…

查看全部问答∨

在FPGA中,如果进行时序约束

在FPGA中,如果进行时序约束…

查看全部问答∨

怎么在新话题里面插图片呀?麻烦高手指点一下,谢谢

我想把我的一些原理图弄到新话题里面,请教高手一些问题,但不知道怎么把图片弄进来?  …

查看全部问答∨

stm32中延时程序

                                 现在处理器越用性能越强,突然想起一个问题,不知道大家通常在STM32中是怎样写比较准确点的延时程序,如延时 ...…

查看全部问答∨

献给新手:解析STM32的库函数

replyreload += \',\' + 1099317; 意法半导体在推出STM32微控制器之初,也同时提供了一套完整细致的固件开发包,里面包含了在STM32开发过程中所涉及到的所有底层操作。通过在程序开发中引入这样的固件开发包,可以使开发人员从复杂冗余的底层寄 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved