在UART上使用的TTL电平,而PC的串口是RS232,它有自己的电平定义,所以在UART和RS232之间需要做一个电平转换。现在来认识一下什么是TTL电平和RS232电平。
TTL电平
TTL是Transistor-Transistor Logic,即晶体管-晶体管逻辑的简称,它是计算机处理器控制的设备内部各部分之间通信的标准技术。TTL电平信号应用广泛,是因为其数据表示采用二进制规定,+5V等价于逻辑"1",0V等价于逻辑"0"。
数字电路中,由TTL电子元器件组成电路的电平是个电压范围,规定:
- 输出高电平>=2.4V,输出低电平<=0.4V;
- 输入高电平>=2.0V,输入低电平<=0.8V。
噪声容限是0.4V。
TTL输出高电平>2.4V,输出低电平<0.4V。 在室温下,一般输出高电平是3.5V,输出低电平是0.2V。 最小输入高电平和低电平:输入高电平>=2.0V,输入低电平<=0.8V,噪声容限是0.4V。
RS232电平
RS232是串口的一个标准,它有自己的电平定义:它采用负逻辑,-15V~-3V代表逻辑"1",+3V~+15V代表逻辑"0"。
RS-232C 对电器特性、逻辑电平和各种信号线功能都作了规定。 在TxD和RxD上: 逻辑1(MARK)=-3V~-15V 逻辑0(SPACE)=+3~+15V 在RTS、CTS、DSR、DTR和DCD等控制线上: 信号有效(接通,ON状态,正电压)=+3V~+15V 信号无效(断开,OFF状态,负电压)=-3V~-15V
cmos电平: