UART、IrDA、SPI、I2C MSP430学习

发布者:qq8174350最新更新时间:2015-11-09 来源: eefocus关键字:UART  IrDA  SPI  I2C  MSP430 手机看文章 扫描二维码
随时随地手机看文章

SPI、IIC、UART区别 第一个区别当然是名字: 

    SPI(Serial Peripheral Interface:串行外设接口);    

    I2C(INTER IC BUS)   

    UART(Universal Asynchronous Receiver Transmitter:通用异步收发器)
第二,区别在电气信号线上:   

  SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Slave)。主从设备间可以实现全双工通信,当有多个从设备时,还可以增加一条从设备选择线。     如果用通用IO口模拟SPI总线,必须要有一个输出口(SDO),一个输入口(SDI),另一个口则视实现的设备类型而定,如果要实现主从设备,则需输入输出口,若只实现主设备,则需输出口即可,若只实现从设备,则只需输入口即可。
     I2C总线是双向、两线(SCL、SDA)、串行、多主控(multi-master)接口标准,具有总线仲裁机制,非常适合在器件之间进行近距离、非经常性的数据通信。在它的协议体系中,传输数据时都会带上目的设备的设备地址,因此可以实现设备组网。     如果用通用IO口模拟I2C总线,并实现双向传输,则需一个输入输出口(SDA),另外还需一个输出口(SCL)。(注:I2C资料了解得比较少,这里的描述可能很不完备)
     UART总线是异步串口,因此一般比前两种同步串口的结构要复杂很多,一般由波特率产生器(产生的波特率等于传输波特率的16倍)、UART接收器、UART发送器组成,硬件上由两根线,一根用于发送,一根用于接收。     显然,如果用通用IO口模拟UART总线,则需一个输入口,一个输出口。


第三,从第二点明显可以看出,SPI和UART可以实现全双工,但I2C不行;


第四,看看牛人们的意见吧!    

 wudanyu:I2C线更少,我觉得比UART、SPI更为强大,但是技术上也更加麻烦些,因为I2C需要有双向IO的支持,而且使用上拉电阻,我觉得抗干扰能力较弱,一般用于同一板卡上芯片之间的通信,较少用于远距离通信。SPI实现要简单一些,UART需要固定的波特率,就是说两位数据的间隔要相等,而SPI则无所谓,因为它是有时钟的协议。     quickmouse:I2C的速度比SPI慢一点,协议比SPI复杂一点,但是连线也比标准的SPI要少。


SPI通信

 

USCI简介:
新型的高性能双通信模块

异步通信模式:UART标准与多处理器协议;带自动波特率检测的UART(即LIN);IrDA(低红外,最大115kbit);
同步通信模式:SPI(主从模式,3或4线),I2C模式(主从模式)。


 

uart

TX中断:

      UCA0TXIFG当TX buffer Ready时会被set. UCA0TXIE及GIE也被set时会进中断.UCA0TXIFG当TX Buffer被写入数据,或是Interrupt request被处理完时会自动清除.系统上电默认UCA0TXIFG为1,UCA0RXIFG为0;
 

MSP430 SPI 或 UART 的速度
  在 SPI 主模式下,通信速率可以达到 4Mbps,而在 UART 模式下,速率也可达到 2Mbps。USART 可进行配置,以便同时支持同步 (SPI) 与异步 (UART) 操作,并且可从几个内部及外部时钟源(与 CPU 时钟无关)中进行选择。在 SPI 主模式下,USART 的运行速率可达到应用时钟的 1/2。例如,如果使用 8MHz 时钟,则 SPI 主模式的传输速率可达到 4Mbps。在 UART 模式下,实现可靠通信至少要求每位 3 或 4 个时钟。例如,8MHz 时钟除以 4 可以支持高达 2Mbps 的速率。MSP430xxxx 用户指南中提供了有关 USART 功能的完整说明。(对应于8M)


原文地址:http://hi.baidu.com/yangbme/blog/item/da54ca36149611320a55a99a.html

 

 

通信的 SPI 概念

2.1、SPI:高速同步串行口 Serial Peripheral interface

  SPI:高速同步串行口。是一种标准的四线同步双向串行总线。

 

  SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。

 

SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线。

 

 

4条线:事实上3根也可以(用于单向传输时,也就是半双工方式)

它们是SDI(数据输入),SDO(数据输出),SCLK(时钟),CS(片选)。

  (1)MOSI– SPI 总线主机输出/ 从机输入(SPI Bus Master Output/Slave Input)

  (2)MISO– SPI 总线主机输入/ 从机输出(SPI Bus Master Input/Slave Output)

  (3)SCLK – 时钟信号,由主设备产生

  (4)CS – 从设备使能信号,由主设备控制(Chip select),有的IC此pin脚叫SS

 

  其中CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。

 

  接下来就负责通讯的3根线了。通讯是通过数据交换完成的,这里先要知道SPI是串行通讯协议,也就是说数据是一位一位的传输的。这就是SCLK时钟线存在的原因,由SCK提供时钟脉冲,SDI,SDO则基于此脉冲完成数据传输。数据输出通过 SDO线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。完成一位数据传输,输入也使用同样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。

 

  要注意的是,SCLK信号线只由主设备控制,从设备不能控制信号线。

   同样,在一个基于SPI的设备中,至少有一个主控设备。这样传输的特点:这样的传输方式有一个优点,与普通的串行通讯不同,普通的串行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SCLK时钟线由主控设备控制,当没有时钟跳变时,从设备不采集或传送数据。也就是说,主设备通过对SCLK时钟线的控制可以完成对通讯的控制。

 

SPI还是一个数据交换协议:因为SPI的数据输入和输出线独立,所以允许同时完成数据的输入和输出。

不同的SPI设备的实现方式不尽相同,主要是数据改变和采集的时间不同,在时钟信号上沿或下沿采集有不同定义,具体请参考相关器件的文档。

  在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,显得简单高效。在多个从设备的系统中,每个从设备需要独立的使能信号,硬件上比I2C系统要稍微复杂一些。

2.7、SPI协议心得

  SPI接口时钟配置心得:

  在主设备这边配置SPI接口时钟的时候一定要弄清楚从设备的时钟要求,因为主设备这边的时钟极性和相位都是以从设备为基准的。因此在时钟极性的配置上一定要搞清楚从设备是在时钟的上升沿还是下降沿接收数据,是在时钟的下降沿还是上升沿输出数据。但要注意的是,由于主设备的SDO连接从设备的SDI,从设备的SDO连接主设备的SDI,从设备SDI接收的数据是主设备的SDO发送过来的,主设备SDI接收的数据是从设备SDO发送过来的,所以主设备这边SPI时钟极性的配置(即SDO的配置)跟从设备的SDI接收数据的极性是相反的,跟从设备SDO发送数据的极性是相同的。

http://baike.baidu.com/view/245026.htm

 

I2C总线特征

  1、只要求两条总线线路:一条串行数据线SDA,一条串行时钟线SCL;
  2、每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机/从机关系软件设定地址,主机可以作为主机发送器或主机接收器;
  3、它是一个真正的多主机总线,如果两个或更多主机同时初始化,数据传输可以通过冲突检测和仲裁防止数据被破坏;
  4、串行的8 位双向数据传输位速率在标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s;
  5、连接到相同总线的IC 数量只受到总线的最大电容400pF 限制。
【USCI】UART、IrDA、SPI、I2C <wbr>MSP430学习经

I2C总线术语

  发送器:发送数据到总线的器件;
  接收器:从总线接收数据的器件;
  主机:初始化发送产生时钟信号和终止发送的器件;
  从机:被主机寻址的器件;
  多主机:同时有多于一个主机尝试控制总线但不破坏传输;
  仲裁:是一个在有多个主机同时尝试控制总线但只允许其中一个控制总线并使传输不被破坏
  的过程;
  同步:两个或多个器件同步时钟信号的过程 。
关键字:UART  IrDA  SPI  I2C  MSP430 引用地址:UART、IrDA、SPI、I2C MSP430学习

上一篇:【IAR警告】Error[e16]: Segment INTVEC 错误
下一篇:建立链表遇到的问题(链表突然消失,链表突然全部为空)

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

基于msp430f169的蓝牙风扇可调速程序
设计做的,比较简单,手机通过UART连接单片机,PWM可任意调速,注意风扇的驱动电压。 #include msp430f169.h #include lcd12864.h #include PWM.h #include UART.h #include adc.h unsigned char key = 0; unsigned char Statu = 0; unsigned int a = 0; #pragma vector=USART0RX_VECTOR __interrupt void USART0_RX_ISR(void) { unsigned char data=0; data=U0RXBUF;
[单片机]
MSP430F149的TIMERA定时中断理解
代码如下: //本平台 msp430f149 #include io430.h #include in430.h volatile unsigned char count = 0,flag = 0; void select_xt2(void){ unsigned char i; /*------选择系统主时钟为8MHz-------*/ BCSCTL1 &= ~XT2OFF; do{ IFG1 &= ~OFIFG; //清除晶振失败标志 for (i = 0xFF; i 0; i--); //等待8MHz晶体起振 }while ((IFG1
[单片机]
采用MSP430与CC2420芯片进行无线传感器网络节点的设计
无线传感器网络是信息技术发展到一定阶段后出现的一种聚合传感器、嵌入式、现代网络以及无线通信、分布式信息处理等多种综合性的技术。传感器网络能够广泛用于军事、环境监测和预报、健康护理、智能家居、建筑物状态监控、复杂机械控制、城市交通、空间探索、大型车间和仓库管理,以及机场、大型工业园区的安全监测等领域。文中设计了一种无线传感器节点,硬件设计基于Moteiv方案,采用超低功耗单片机MSP430F1611作为数据处理芯片,以CC2420无线射频芯片作为收发芯片,并拥有JTAG以及其他扩展接口。通过硬件测试以及软件调试该节点符合设计指标。 1 系统概述 无线传感器网络由大量无线传感器节点组成,每个节点由传感器采集数据,数据处理芯片负责接
[单片机]
采用<font color='red'>MSP430</font>与CC2420芯片进行无线传感器网络节点的设计
MSP430开发板可二次开发的设计实例
引言 SoC已集成了很多数字功能,设计者们开始将目光投向复杂的模拟与射频功能。模拟模块不适用于构建SoC的标准IP(知识产权)集成策略,它们与设计中其他部分有太多的交互作用。 现在有许多公司已经开始推出混合信号微处理器,如TI的MSP430系列、Cypress的PSoC系列、Silicon Labs的C8051F系列。这些芯片不仅集成大量的数字IP核,而且集成了常用的模拟单元。 本文基于TI公司的混合信号处理器MSP430F5504设计了一款超低功耗、高性价比、高处理能力的USB混合信号处理器开发板(校园广播系统)。 1 校园广播系统总体设计 校园广播系统的设计及实现更好地说明MSP430系列芯片的良好功能和开发方法,
[单片机]
<font color='red'>MSP430</font>开发板可二次开发的设计实例
I2C I/O扩展芯片特性分析
简介   I/O口扩展芯片可用于MCU/DSP通用I/O口的扩展,通过I2C扩展成8或16位GPIO。当应用中需要额外的I/O口来连接ACPI电源开关、传感器、按钮、LED、风扇等时,可使用I/O扩展器件实现简单的解决方案。   输出:直接驱动LED,风扇,继电器等开关控制,可驱动50mA电流。   输入:键盘输入,定时器/传感器等检测输入,带中断功能。对于远距离很多个控制触点与主机之间的通讯,采用I2C I/O扩展技术,可大大简化多股排线布线不便的问题。 特性 工作电压:2.3V~5.5V 400kHz I2C总线兼容 每个I/O可承受5V 电压 高
[模拟电子]
MSP430在微型低功耗数据广播接收机中的应用
  一、 引言   我们独立自主开发了数据广播编码器和微型低功耗调频数据广播接收机,整套系统采用连续相位频移键控(CPFSK)调制方式,副载波频率为72KHz,占用带宽约16Khz,数据传输速率4.8KHZ。采用CPFSK调制方式使接收机易于实现,与QPSK的调制方式相比对相位稳定度要求不高,不易受外界温度噪声的影响,而且在信号解调处理时实现低功耗。   由于在发送端先后进行了数据编码、信道调制、线性调频,所以接收设备要完成信号逆处理。硬件结构框图:   二、MSP430单片机的特点及在接收机中的应用   TI 公司MSP430系列单片机的超低功耗特性(运行在1MHz时钟条件下工作电流视工作模式不同为0.1
[单片机]
STM32 SPI配置
用stm32的库进行深入 SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。 四根线 MISO 主设备数据输入,从设备数据输出。 MOSI 主设备数据输出,从设备数据输入。 SCLK时钟信号,由主设备产生。 CS从设备片选信号,由主设备控制。 外设的写操作和读操作是同步完成的。如果只进行写操作,主机只需忽略接收到的字节 时钟极性CPOL对传输协议没有重大的影响,代表串行同步时钟的空闲状态下的电平。 时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串
[单片机]
STM32 <font color='red'>SPI</font>配置
带RTC的I2C总线铁电存储器FM31256
FM31256是由Ramtron公司推出的新一代多功能系统监控和非易失性铁电存储芯片。与其他非易失性存储器比较,它具有如下优点: 读/写速度快,没有写等待时间;功耗低,静态电流小于1 mA,写入电流小于150 mA;擦写使用寿命长,芯片的擦写次数为100亿次,比一般的EEPROM存储器高10万倍,即使每秒读/写30次,也能用10年;读/写的无限性,芯片擦写次数超过100亿次后,还能和SRAM一样读/写。 铁电存储器(FRAM)的核心技术是铁电晶体材料。这一特殊材料使铁电存储器同时拥有随机存取存储器(RAM)和非易失性存储的特性。本文介绍了FM31256的主要功能,并具体给出了基于嵌入式C语言编写的存储器读/写程序。 1 FM31
[缓冲存储]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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