MSP430教程15:MSP430单片机串行通讯模块

发布者:EtherealGaze最新更新时间:2020-03-25 来源: eefocus关键字:MSP430  单片机  串行通讯模块 手机看文章 扫描二维码
随时随地手机看文章

串行异步通讯模块
在MSP430系列产品中,每一款型号都能实现串行通讯的功能,在MSP430F1X11系列中,可以用定时器A和软件编程结合实现串行通讯功能。而在其它系列产品中都带有硬件的串行通讯模块USART;另外,MSP430F14X系列产品中还带了两个串行通讯模块。而在MSP430F15X,F16X系列中USART0还可以实现IIC总线通讯。在UART模块中带有UART串行异步通讯和SPI同步通讯硬件资源。

 


图是USART模块结构图,从下图可以看出USART模块分别由波特率部分:波特率发生器,串行通讯接收/发送控制寄存器。


接收部分,发送部分,端口IO部分。
   
  串行异步通讯的特点:
    1-异步通讯模式,包括线路空闲/地址位通信协议。
    2-有两个单独的移位寄存器,输入/输出移位寄存器(如下图)。
    3-传输7位或8位数据,可采用奇偶或无校验。
    4-可编程实现波特率调整。
    5-分别发,收单独中断。
    6-有效地检测到起始位实现从低功耗唤醒。
    7-状态标志检测错误或者地址位。

   串行同步通讯(SPI)的特点:  
    1-动持3线/4线的SPI通讯。
    2-支持主机模式与从机模式。
    3-收发有单独的缓冲器,移位寄存器。
    4-收发有单独的中断。
    5-时钟极性和相位可编程。
    6-主机模式的时钟频率可编程。
    7-7位/8位字符长度。

有关USART的详细应有原理,建议初学者参考清华大学出版社的<>。

 

串行异步通讯应用例程
//******************************************* 
//MSP430F149串口行实验程序
//P3.4为发送,P3.5为接收
//晶体使32768HZ.
//程序描述:利用串口调试软件;向串口发送一个字符,MSP430单片机接收到后从低功耗中唤醒.并将收接缓冲区的字符再发送到//电脑上的调试软件中.单片机发送完后又进入低功耗状态.
//*******************************************

#include

void main(void)
{
 WDTCTL = WDTPW + WDTHOLD; // 停止WDT

 UCTL0 = CHAR;             // 设串口控制寄存器,设为8位字符格式

 UTCTL0 = SSEL0;           // 设串口控制寄存器所使用的时钟,选择UCLK = ACLK

 UBR00 = 0x0D;             // 波特率设置32k/2400 - 13.65
 UBR10 = 0x00;            
 
 UMCTL0 = 0x6D;            // 波特率调整器设置

 ME1 |= UTXE0 + URXE0;     // 模块允许寄存器设置,使能USART0 TXD/RXD

 IE1 |= URXIE0;            // 中断允许寄存器设置,接收中断允许

 P3SEL |= 0x30;            // 将P3.4,5使用外围模块 = USART0 TXD/RXD
 P3DIR |= 0x10;            // 将P3.4设为输出(发),P3.5默认为输入(收)

 _EINT();                  // 全局中断使能

// Mainloop
for (;;) 
{
 LPM3;                           // 进入LPM3模式,等待字符接收.

 while ((IFG1 & UTXIFG0) == 0);  // USART0发送UTXIFG0=1,表示UTXBUF准备好发送一下字符

 TXBUF0 = RXBUF0;                // 将收到缓冲区字符送发送区
 }


//串口接收中断,退出LPM3模式.
#pragma vector=USART0RX_VECTOR
__interrupt void usart0_rx (void)
{
  LPM3_EXIT;


//*****************************************
//例程结束

关键字:MSP430  单片机  串行通讯模块 引用地址:MSP430教程15:MSP430单片机串行通讯模块

上一篇:基于CCS工程MSP430串口升级(一)
下一篇:MSP430教程10:MSP430单片机WDT看门狗定时器

推荐阅读最新更新时间:2024-11-16 21:41

PIC单片机-利用Timer2定时器的溢出中断实现动态扫描数码管
编写程序,令数码管的显示顺序为:0123,1230,2301,3012。 数码管显示分静态扫描和动态扫描,动态扫描显示一般分两种方式 1、选用一个数码管位,写断码显示,延时一定的时间,关闭显示,选择下一位,依次类推,完成数码管的多位扫描显示,这种方式比较耗CPU资源。 2、利用定时器,每隔一个固定的时间去选通,写断码,这种方式可以降低CPU的占用时间,同时,每个数码管显示时间固定,不存在“抖”的现象。 本程序中使用第二种方式,利用Timer2定时器的溢出中断实现动态扫描,Timer2包含一个周期控制寄存器,可以自动控制溢出周期。周期控制寄存器PR2的存在使得TIMER2的计数值有一个可以自由设定的上限。当TIMER
[单片机]
关于51单片机“定时器”的理解与应用
在 cpu 的一步步按照指令运行的过程中(主程序),可能会有其它的更紧急的需要做的事情(中断服务程序), 需要 cpu 暂时停止当前的程序(主程序),做完了(中断服务程序)之后,又可以继续去运行先前的程序(主程序)。 就像你正在吃饭,一边又在给水桶里放水,吃着吃着,水满了,你就得赶快去把水龙头关掉或者换一个空的水桶,再回来吃饭。 单片机的定时器就像是一个水桶 你让它启动了,也就是水龙头打开放水 定时器在每个机器周期自动加 1 水桶的水不断增加,最后就满出来了 定时器溢出时,你就要去做处理了 水桶的水满了,你应该处理一下了 处理完后,单片机又回到刚停止地方继续运行 水桶处理完,你也可以去做原来的事了 单片机的主程序是从
[单片机]
基于C8051F2xx系列MCU芯片实现锅炉水处理控制装置的设计
自然水中通常含有钙镁等离子,俗称硬水。在锅炉用水中需要去除水中的钙镁离子而形成软水以防止锅炉结垢。在生产中锅炉水的软化处理是一项重要的安全指标,所以,对于锅炉水处理的技术要求愈来愈高。单片机以其较高的灵活性和稳定性广泛应用在自动控制领域。本文所设计的锅炉水处理控制装置,由高低水位控制进水阀开关,选用单片机为核心,C语言编程实现循环时间电路控制。该装置已成功应用于成都富华水处理公司。 1 软水生产工艺过程及对自控系统的要求 1.1 生产工艺过程 软化水设备的工作原理是基于阳离子交换原理。水由交换柱上流下,与交换树脂中的盐离子充分接触达到把原水中的杂质、易结垢的重金属阳离子去除掉。其生产工艺大致分为下列几步:①条件满足后运行;②松
[单片机]
基于C8051F2xx系列<font color='red'>MCU</font>芯片实现锅炉水处理控制装置的设计
MSP430f5529 通用I/O口的设置
1. I/O口的简介 特点: (1)多种复用和设置(即可控制是否输入、是否输出、是否接上下拉电阻、是否可接受中断) (2)一般情况下,P1和P2都具有中断能力的。从P1和P2接口的各个I/O管脚引入的中断可以独立的被使能并且设置为上升沿或者下降沿触发,对应的中断向量表分别为P1IV和P2IV,他们只能进行字操作,并且PAIV这个寄存器是不存在的。 (3)P1、P2可合为PA,P3、P4可合为PB…。所以P1为8位BCD 0X00,PA为16位BCD 0X0000。当进行字操作写入PA口时,所有的16位都被写入这个端口;当利用字节操作写入PA口的低字节时,高字节保持不变; (4)由于430很多I/O和外围电路接线,所以这
[单片机]
51单片机基于定时器0的硬件延时代码
1 //晶振的频率 2 #define OSC_FREQ (11059200UL) 3 4 //每个指令的振荡周期数(4,6,12),注意,这里一定要仔细查看芯片手册 5 //*12 - 早期的8051、8052及当前的绝大部分51单片机 6 //*6 - Philips 的芯片 7 //*4 - Dallas 8 #define OSC_PER_INST (12) 9 10 //TIME 为定时时间 单位MS 11 #define PRELOAD1MS (65536 - 1*(UINT16)(OSC_FREQ/(OSC_PER_INST*1000))) 12 #define PRELOAD5MS (65536
[单片机]
恩智浦推出跨界MCU i.MX RT1170系列,开启GHz微控制器时代
新闻亮点: ● i.MX RT1170 MCU系列采用先进的28nm FD-SOI技术,可满足更低的动态功耗和静态功耗要求。RT 1170集成了高达GHz 的 Arm Cortex-M7和高能效的Cortex-M4、先进的2D矢量图形加速器以及恩智浦署名的EdgeLock安全解决方案 ● i.MX RT1170提供6468 CoreMark评分和2974 DMIPS性能,基准评分达到同类竞争MCU的两倍 ● 扩展广受欢迎的i.MX RT系列,满足工业、物联网 (IoT)及汽车应用不断提升的边缘计算性能需求 恩智浦半导体(纳斯达克代码:NXPI)日前在2019年ARM科技大会上宣布推出跨界MCU i.MX RT1170系列,具
[单片机]
恩智浦推出跨界<font color='red'>MCU</font> i.MX RT1170系列,开启GHz<font color='red'>微控制器</font>时代
学习什么单片机
单片机的型号那么多,如何选取一款合适的进行学习?如果身边有比较现成的学习单片机的条件,有什么条件就学习什么型号。比如,你所在的公司刚好用到某个型号单片机,那么就方便多了。开发板不用购买,直接用公司现成的板子,指导老师到处是,公司的工程师,只要你耐心虚心的不耻上问,相信他们都愿意帮你解答问题。或者你跟着学习的导师,正在使用某个型号的单片机开发产品,那么同样的道理,你也会有得天独厚的优势,直接跟着学就行了。单片机型号虽然众多,看起来纷繁复杂,其实它们的基本原理、基本用法都是相通的,只要熟练掌握其中一种,其它的都可以触类旁通,快速上手了。 如果你这些条件都没有,那就跟着我学吧,我建议你学习51 单片机。 为什么要学习51单片机
[单片机]
基于微控制器MSC1210的CSR电源控制系统设计
  摘要:MSC1210是美国TI 公司生产的24位Δ-ΣA/D转换的51兼容单片机。文章介绍了MSC1210的结构特点和工作原理,并给出了在CSR电源控制系统中的硬件电路和软件程序。   关键词:MSC1210; 模数转换器; 电源;控制系统   引言   MSC1210美国德州仪器公司(TI)生产的高集成混合信号处理器件。它集成了一个增强型8051内核,8路24位高精度Δ-ΣA/D转换,21个中断源,16位PWM,全双工UART(并兼容有SPI功能),32K字节FLASH,片内SRAM可达1.2K字节。MSC1210具有高的模拟和数字集成度,体积小,测量精度高,应用灵活等特点,因而该芯片可广泛应用于工业控制过程、智能发射
[安防电子]
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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