树莓派基础实验35:USB TO TTL模块实验

2020-09-27 10:43:32 浏览数 (1)

一、介绍

  PC机与树莓派的常用通信方式SSH(Secure Shell)远程登录、VNC Viewer虚拟网络控制台都需要网络连接,但还有一种不需要网络的通信方式:Serial port串口通信。

  就好比配置路由器一样,除了网页配置、SSH远程登录外,还可以Console口本地配置,特别是初始配置时。树莓派也会遇到没有显示器又没有网络、不能远程登录的情况,这时就可以使用串口通信。

  我们的笔记本通常没有串口,这时就需要一个USB转TTL的模块了,它的作用就是把电平转换到双方都能识别进行通信,USB口插笔记本,模块的相应针脚连接树莓派的UART串口TX、RX。

二、组件

★Raspberry Pi 3主板*1

★树莓派电源*1

★USB TO TTL模块*1

★面包板*1(可选)

★40P软排线*1

★跳线若干

三、实验原理

USB TO TTL模块

USB TO TTL模块

CH340G模块原理图

(一)串口通信介绍
串口

串口,即串行接口,与之相对应的另一种接口叫并口,并行接口。两者的区别是,传输一个字节(8个位)的数据时,串口是将8个位排好队,逐个地在1条连接线上传输,而并口则将8个位一字排开,分别在8条连接线上同时传输。

在相同的数据传输速率下,并口的确比串口更快,但由于并口的各个连接线之间容易互相干扰,高速情况下难以同步各连接线的数据,而且硬件成本也相对串口更高(线多),因而串口取代并口成为了现在的主流接口,较具代表性的要数Universal Serial Bus,通用串行总线,也就是USB。其它在嵌入式领域常见的串行接口还包括:I2C,SPI,RJ-45,UART,USART等。

COM口

电脑上的异步串行通信接口,有时也称之为串口(其实这个叫法并不严谨)。电脑COM口使用DB9连接器,遵循RS-232标准,RS-232规定了通信口的电气特性(比如多少伏为逻辑“1”)和接口机械特性(形状,针脚定义)等内容。COM口多见于旧式电脑,用于连接鼠标,调制调解器等设备,现在已被USB取代。

PC机箱接口

USB接口

通用串行总线(Universal Serial Bus,缩写:USB)是一种串口总线标准,也是一种输入输出接口的技术规范,规范电脑与外部设备的连接和通讯,具有热插拔功能。USB是在1994年底由英特尔等多家公司联合在1996年推出后,已成功替代串口和并口,已成为当今电脑与大量智能设备的必配接口。

USB只有4根线,两根电源两根信号,故信号是串行传输的,usb接口也称为串行口,usb2.0的速度可以达到480Mbps。接口的输出电压和电流是: 5V, 500mA 。实际上有误差,最大不能超过 /-0.2V ,也就是4.8--5.2V 。

usb接口的4根线一般是下面这样分配的,需要注意的是千万不要把正负极弄反了,否则会烧掉usb设备或者电脑的南桥芯片:黑线:gnd ;红线:vcc ;绿线:data ;白线:data-。

USB接口定义图

UART与USART

UART,全称Universal Asynchronous Receiver/Transmitter,通用异步收发传输器。

USART,全称Universal Synchronous/Asynchronous Receiver/Transmitter,通用同步异步收发传输器。

两者都是一个数据收发器,属于硬件电路范畴。既然是“器”,显然,它就是个设备而已,要完成一个特定的功能的硬件,它本身并不是协议。

它的最基本功能,是串行数据和并行数据之间的转换。我们知道,计算机中的数据以Byte为基本单位,对一个Byte的存取是并行的,即,同时取得/写入8个bit。而串行通信,需要把这个Byte“打碎”,按照时间顺序来收发以实现串行。例如:

数据并行转串行

这就是UART做的最基本工作,进一步的,它还要控制“发车的班次”,比如确认一个Byte的这8个bit是什么时候开始的,又是什么时候结束的,两个班次之间至少要隔多长时间的缓冲,等等。这一部分,也具有协议的特征,但是相对于道路上的协议,更具有一般性,或曰,是与车在什么道路上开,相对独立的。

UART使用异步通信,而USART既可异步通信,也可同步通信。当USART使用异步通信时,就变成了UART。单片机的串口指的就是UART或USART。

同步通信和异步通信的区别是:时钟线的有无。同步通信有时钟线,收发双方通过统一的时钟来确定何时进行数据的传输,如I2C和SPI。异步通信没有时钟线,只能在数据的头和尾加入标志位来区分不同的数据帧,接收数据之前也要预先知道波特率的大小,传输效率比同步通信要低。

UART与USART

串口、RS-232与TTL

前面讲过,RS-232是一个串行通信接口标准,它规定了逻辑“1”为-3 ~ -15V,逻辑“0”为 3 ~ 15V,符合该标准的串口也叫RS-232串口,比如电脑的COM口。那么,还有不符合RS-232标准的串口?答案是肯定的,那就是单片机(如stm32)的UART/USART,这个也叫串口,但它不遵循RS-232标准,使用的是TTL电平(Transistor-Transistor Logic),该电平的逻辑“1”为 5V,逻辑“0”为0V,称为TTL串口。

需要注意的是,串口、UART/USART通常指的是硬件接口,而RS-232指的是属于物理层范畴的串行通信接口标准,简而言之,RS-232就是个标准。

串口通讯,其实,UART就相当于车站,而RS232/RS485则对应于公路的规则。可以说,线路上存在的仅仅是电流,RS232/RS485规定了这些电流在什么样的线路上流动和流动的样式;在UART那里,电流才被解释和组装成数据,并变成CPU可直接读写的形式。

单片机与电脑的连接

既然单片机有串口(UART/USART),电脑也有串口(COM口),那么两者就可以通过串口进行通信。

如果电脑有实体COM口,由于COM口使用的RS-232电平跟单片机的UART/USART使用的TTL电平不一样,这时就需要使用MAX232之类的电平转换芯片,将TTL电平转换成RS-232电平,连接示意如下:

电脑COM口 <---> MAX232 <---> 单片机UART/USART

如果电脑没有COM口,就要通过CH340之类的USB转TTL串口芯片,来实现用USB模拟COM口,这样电脑的USB口就变成了一个TTL串口,可以跟单片机的UART/USART通信,连接示意如下:

电脑USB口 <---> CH340 <---> 单片机UART/USART

本次实验中的USB TO TTL模块就是使用的CH340G芯片。

(二)模块介绍

CH340G芯片,比国产PL2303稳定,该系列芯片是STC官方推荐的USB转TTL芯片,不会出现由于不同的驱动或不同的电脑等导致不兼容现象。

可选择3V3或5V供电,3V3和5V由短路冒选择:6PIN排针上的短路冒――电压选择,(正面看上去,从上往下数)1、2短路为5V TTL输出,2、3短路为3V3 TTL输出;

USB TO TTL模块

3.3V和5V的选择视实际应用环境使用,系统为3.3V时选择3.3V,系统为5V时选择5V,本实验中树莓派只能使用3.3V,否则可能烧毁树莓派。若驱动和接线都对,模块不能正常通讯则可对调RXD和TXD两条线试试。

四、实验步骤

第1步: 连接电路。

树莓派(name)

T型转接板(BCM)

USB TO TTL模块

TXD

TXO

RXD

RXD

RXI

TXD

GND

GND

GND

下图中的USB要插到笔记本电脑上哈,为方便拍照就没插上。连线很简单,电路图就没画了。

USB TO TTL模块实物接线图

第2步: 设置树莓派,在Raspberry Pi Configuration中将Serial Port和Serial Console都要Enable,然后必须重启树莓派生效。

第3步: 将USB插上笔记本后,笔记本上要安装串口驱动程序(CH340G驱动),安装好后在设备管理器中可以看到串口,名称为“COM3”。

安装串口驱动

第4步: 在笔记本上启动SecureCRT软件,或者putty软件连接树莓派。我这里使用SecureCRT,设置好串口连接参数,点击连接。

第5步: 登录树莓派账号,如同SSH远程登录后一样,可以管理树莓派了。

0 人点赞