分享

认识UART接口

 lixinhecom 2016-07-20

没有仔细研究过,就用了下,总结了点,也搜了点资料:

 

串口进行通信的方式有两种:同步通信方式和异步通信方式

SPI(Serial Peripheral Interface:串行外设接口);
I2C(INTER IC BUS:意为IC之间总线),一(host)对多,以字节为单位发送。
UART(Universal Asynchronous Receiver Transmitter:通用异步收发器), 一对一,以位为单位发送。

一般uart控制器在嵌入式系统里面都做在cpu一起,像IMX6就是这样,一共支持5个uart控制器。

总结下它的特征:

UART一般四个pin(RS232比较多pin,但是常用的也是这几个):

VCC:供电pin,一般是3.3v,在我们的板子上没有过电保护,这个pin一般不接,不影响使用

GND:接地pin,有的时候rx接受数据有问题,就要接上这个pin,一般也可不接

RX:接收数据pin

TX:发送数据pin,我之前碰到串口只能收数据,不能发数据问题,经baidu,原来是设置了流控制,取消就可以了,适用于putty,SecureCRT

在调试gps的时候我用到了uart,当时因为gps这个模块的特点是没有中断,IC数据直接通过uart上报,

调试串口的时候我就直接用了两个线连出了rx,tx,然后用gps在pc端的工具从串口获取数据,直接分析gps数据,这样测试了gps的数据没有问题。

但是一般嵌入式的串口使用的是RS232协议,而很多电脑(尤其笔记本)上没有传统的rs232口,一般用要先把rs232的电平转换为UART 的TTL电平,然后通过usb模拟uart连到

电脑上。下图就是这个样的例子。

 

http://blog./uid-26824818-id-3371273.html

UART与RS232、TTL串口联系

UART是通用异步串行口的意思,RS232是UART的一种,它采用的232电平。其他的UART还有单片机上的异步通信口,采用的是TTL电平。


TTL电平是3.3V的,而RS232是负逻辑电平,它定义+5~+12V为低电平,而-12~-5V为高电平。
Uart串口的RXD、TXD等一般直接与处理器芯片的引脚相连,而RS232串口的RXD、TXD等一般需要经过电平转换(通常由Max232等芯片进行电平转换)才能接到处理器芯片的引脚上,否则这么高的电压很可能会把芯片烧坏。

我们平时所用的电脑的COM口即串行通讯端口(串口)就是RS232的,当我们在做电路工作时,应该注意下外设的串口是TTL类型的还是RS232类型的,如果不匹配,应当找个转换线(通常这根转换线内有块类似于Max232的芯片做电平转换工作的),可不能盲目地将两串口相连。
另注意:串口设计规范是不支持热插拔。实际中有些人也热插拔着,但尽量少吧,避免板子芯片坏了。

 

UART 指异步串行通讯接口,对电平信号没有规定; RS232是指一个规定了信号电平的异步串行通讯接口; UART所指含义更宽, RS232规定相对狭窄!


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多