1.1 串口简介
1.1.1 串口电平
串口是一个泛称,UART、TTL、RS232、RS485、RS422都统称为串口。
芯片内部的串口收发逻辑电路一般称为UART接口,即通用异步收发器(Universal Asynchronous Receiver/Transmitter);芯片外部的串口一般为遵循TTL电平的TTL串口;RS232、RS485、RS485则通常作为设备的外设串口使用。
TTL电平
TTL是Transistor-Transistor Logic,即晶体管-晶体管逻辑的简称,它是计算机处理器控制的设备内部各部分之间通信的标准技术。TTL电平信号应用广泛,是因为其数据表示采用二进制规定,+5V等价于逻辑”1”,0V等价于逻辑”0”。
数字电路中,由TTL电子元器件组成电路的电平是个电压范围,规定:
输出高电平>=2.4V,输出低电平<=0.4V;
输入高电平>=2.0V,输入低电平<=0.8V。
RS232电平
RS232电平是串口的一个标准。
在TXD和RXD数据线上:
(1)逻辑1为-3~-15V的电压
(2)逻辑0为3~15V的电压
1.1.2 RS232接口
1.2 Linux串口指令
串口为独站式设备
,Linux下串口可重复打开,但数据会被最新打开的程序劫走。
(1) 使用cat读取数据
cat /dev/ttymxc0
(2)使用microcom查看串口数据
microcom -s 115200 /dev/ttyS0
(3)使用echo向串口发送数据
echo "hello" > /dev/ttymxc0
(4)使用microcom向串口发送数据
microcom -s 115200 /dev/ttyS0 < /root/123.txt
(5)使用stty命令获取当前串口配置
stty -F /dev/ttymxc0
(6)使用stty命令更改串口属性
stty -F /dev/ttymxc0 ispeed 115200 ospeed 115200 cs8