版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MSP430串行通信UART、SPI陈文根刘磊 2016/6/26通信原理 单工、全双工、半双工 能同时收发就是全双工,比如打电话,双方可以“对吼”。 数据能收能发,但要分时进行就是半双工,比如对讲机。一方按下按键,只能说话(发送数据),另一方只能收听。当一个人说完必须加一句“ over ”,然后就得松开按键(接收数据),对方听到“ over ”知道对方讲完了,这时才能按下按键说话(发送数据)。 只能单向通信就是单工了,比如广播,播音员播音时(发送数据),听众永远只能是听众。通信原理 并行通信通信原理 串行通信 1 线通信 在真正传输“有用信号前”,需要先确定信号的流向(读还是写)。 由于没有
2、同步时钟,每 1 位数据的间隔必须足够大以容忍时钟的频差和相差。通信原理 2 线通信 增加同步时钟线。 这样一来,虽然也得麻烦的判断信号流向,但是每位数据的间隔可以很小(波特率高)。(左图) 增加数据线。 一根负责收,一根负责发,构成全双工通信,这样也能成倍提高效率。(右图)通信原理 3 线通信 有了 3 根线,就可以有 1 根时钟线, 1 根数据发送线, 1 根数据接收线了。这样的速度又可以加快了。 需规定主机从机,同步时钟由主机控制。通信原理 具体应用 全双工时,往往不宜多机对等的通信,最多是 1 主多从(除非给每个主机增加使能控制线)。 而半双工时,则很容易“并联”成多机通信, 通过总线
3、仲裁和地址广播等办法来实现任意设备之间的通信。通信原理 通信协议 简单说,就是通信的双方要约定 1、0 序列代表什么含义,就像可以用“三长两短”代表危险一样。如果我们是自己使用两片单片机进行通信,那么我们爱怎么规定数据流的含义就怎么规定,谁也管不着。但是,自定义的通讯协议有几个缺点。通信原理 自编通讯协议的效率不高,会有 bug。成熟的通讯协议都是人类集体智慧的结晶。 不是通用协议,不能与“别人”进行通信。协议这个东西,和霸王条款差不多。 成熟的通信协议有相应的硬件支持,可以在通信时减轻 CPU 的负担,增强性能。UARTUART 原理 UART UART( Universal Asynchr
4、onous Receiver/ Transmitter)是通用异步收发器的缩写,一般称为串口。由于不需要时钟线,且为全双工工作,所以 UART 有两根数据线,发送 Tx 和接收Rx。UART 原理 UART 通信协议 首先是一个起始位,然后是 7-8 位可选的数据位,0-1 位可选的地址判别位、 0-1 位可选的奇偶判别位、1-2 位可选的高电平停止位。UART 原理 UART 多机通信 UART 可以 1 主多从进行通信,主机的 Tx 连上全部从机的 Rx,主机的Rx 连上所有从机的 Tx。UART 原理 地址位模式多机通信 在每帧中插入了一个地址位 Address Bit。UART 原理
5、空闲帧模式多机通信 对于每次对同一从机都发送很多数据的情况下,采用空闲帧模式的效率更高。UART下相关的寄存器-功能选择寄存器UART下相关的寄存器-UCAxCTL1控制寄存器UART下相关的寄存器-波特率设置寄存器UART下相关的寄存器-中断使能寄存器UART下相关的寄存器-接收和发送缓冲寄存器UART下相关的寄存器-中断标志位寄存器SPISPI 原理 SPI 的数据接口 SPI( Serial Peripheral Interface)串行外设接口的简称,它是一种同步全双工通信协议。Motorola首先提出的有 3 根或者 4 根数据线组成,包括 CLK、SOMI、SIMO、STE: SO
6、MI 是 Slave output Master input 的缩写,如果设备被设定为主机,那么这就是输入口。如果设备被设定为从机,这个口就是输出口。这与 UART 的 Tx 和 Rx 方向恒定相不同。 SIMO 是 Slave input Master Output 的缩写。 STE 是 Slave Transmit Enable 的缩写。SPI 原理 SPI 共分为 4 种工作模式:三线制主模式、三线制从模式、四线制主模式、四线制从模式。SPI 原理 SPI 协议时序图 数据传输格式 通常是高位(MSB)在前,低位(LSB)在后。一些增强型MCU中可以通过软件设置高位在前或低位在前。 两个
7、概念时钟极性:表示时钟信号在空闲时是高电平还是低电平。时钟相位:决定数据是在SCK(CLK)的起始沿采样还是在SCK(CLK)的结束沿采样。SPI 原理时钟相位为时钟相位为1 1时钟前沿数时钟前沿数据输出据输出时钟后沿数时钟后沿数据采样据采样时钟信号时钟信号极性极性0 0极性极性1 1从机选择从机选择时钟相位时钟相位控制为控制为0 0时钟前沿时钟前沿数据采样数据采样时钟后沿时钟后沿数据输出数据输出时钟前沿输出时钟前沿输出时钟后沿采样时钟后沿采样时钟前沿采样时钟前沿采样时钟后沿输出时钟后沿输出SPI 原理 传输模式 根据时钟极性(CPOL)及相位(CPHA)不同可以组合成 4种工作模式:SPI0
8、,SPI1,SPI2,SPI3.(1)SPI0:CPOL=0,CPHA=0(2)SPI1:CPOL=0,CPHA=1(3)SPI2:CPOL=1,CPHA=0(4)SPI3:CPOL=1,CPHA=1USCI 模块 通用串行通信接口(USCI)模块支持多种串行通信模式。不同的USCI 模块支持不同的模式 USCI_Ax 模块支持: UART 模式 IrDA 通信的脉冲整形 LIN 通信的自动波特率检测 SPI 模式 USCI_Bx 模块支持: I2C 模式 SPI 模式MSP430 模块MSP430的SPI模块有如下特点: 支持3线或4线SPI操作 支持7位或8位数据格式 接收和发送有单独的移
9、位寄存器 接收和发送有独立的缓冲器 接收和发送有独立的中断能力 时钟的极性和相位可编程 主模式的时钟频率可编程 传输速率可编程 支持连续收发操作 支持主从方式SPI模式下可用的USCI寄存器名称名称描述描述访问访问复位值复位值寄存器访问寄存器访问UCBxCTLW0USCI_Bx控制字控制字0 读读/写写0001h字字UCBxBRWUSCI_Bx波特率控制字波特率控制字读读/写写0000h字字UCBxMCTLUSCI_Bx调制器控制调制器控制 UCBxSTATUSCI_Bx状态寄存器状态寄存器 读读/写写00h字节字节UCBxRXBUFUSCI_Bx接收缓存接收缓存读读/写写00h字节字节UCB
10、xTXBUF USCI_Bx发送缓存发送缓存读读/写写00h字节字节UCBxI2COAUSCI_Bx I2C本机地址本机地址 读读/写写0000h字字UCBxI2CSAUSCI_Bx I2C从机地址从机地址读读/写写0000h字字UCBxICTL USCI_Bx中断控制中断控制读读/写写0200h 字字UCBxIEUSCI_Bx中断使能中断使能读读/写写00h字节字节UCBxIFG USCI_Bx中断标志中断标志读读/写写02h字节字节UCBxIVUSCI_Bx中断向量中断向量 读读0000h字字USCI_Ax和和USCI_Bx都有都有SPI模块,下面以模块,下面以USCI_Bx为例,介绍相关
11、寄存器为例,介绍相关寄存器UCB控制寄存器控制寄存器 UCBxCTL1(USCI_Bx control register)00: 00: NANA01: ACLK01: ACLK1010:SMCLKSMCLK1111:SMCLKSMCLK0: 0: 不允许软件复位不允许软件复位1: 1: 允许软件复位允许软件复位0: 前沿采样,后沿输出前沿采样,后沿输出1: 前沿输出,后沿采样前沿输出,后沿采样0: 从机模式从机模式1: 主机模式主机模式00:三线制三线制01:四线制,四线制,UCxSTE=1选择从机选择从机10:四线制,四线制,UCxSTE=0选择从机选择从机11:I2C模式模式0: 异步通
12、信异步通信1: 同步通信同步通信0: 时钟空闲状态为低电平时钟空闲状态为低电平1: 时钟空闲状态为高电平时钟空闲状态为高电平UCB控制寄存器控制寄存器 UCBxCTL0(USCI_Bx control register)0: LSB first1: MSB first0: 8-bit data1: 7-bit data比特率控制寄存器比特率控制寄存器 UCBxBR0和和UCBxBR1UCBxBR0是比特率发生器的低8位;UCBxBR1是比特率发生器的高8位。计算是UCBR0 + UCBR1256串口中断允许寄存器串口中断允许寄存器IE20: 发送中断禁止发送中断禁止1: 发送中断允许发送中断允许0: 接收中断禁止接收中断禁止1: 接收中断允许接收中断允许串口中断标志寄存器串口中断标志寄存器 UCBxIF
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论