eagler8 发表于 2020-2-25 10:28:55

【Arduino】168种传感器模块系列实验(149)---MAX3232串口转换板

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验一百四十九:MCU mini RS232 MAX3232电平转TTL电平转换板 串口转换板模块

eagler8 发表于 2020-2-25 10:31:35



MAX3232
采用专有低压差发送器输出级,利用双电荷泵在3.0V至5.5V电源供电时能够实现真正的RS-232性能,器件仅需四个0.1uF的外部小尺寸电荷泵电容。MAX3232确保在120kbps数据速率,同时保持RS-232输出电平。

MAX3232具有二路接收器和二路驱动器,提供1uA关断模式,有效降低功效并延迟便携式产品的电池使用寿命。关断模式下,接收器保持有效状态,对外部设备进行监测,仅消耗1uA电源电流,MAX3232的引脚、封装和功能分别与工业标准MAX242和MAX232兼容。即使工作在高数据速率下,max3232仍然能保持RS-232标准要求的正负5.0V最小发送器输出电压。

只要输入电压在3.0V至5.5V范围以内,即可提供+5.5V(倍压电荷泵)和—5.5V(反相电荷泵)输出电压,电荷泵工作在非连续模式,一旦输出电压低于5.5V,将开启电荷泵;输出电压超过5.5V,即可关闭电荷泵,每个电荷泵需要一个飞容器和一个储能电容,产生V+和V-的电压。

MAX3232在最差工作条件下能够保证120kbps的数据速率。通常情况下,能够工作于235kbps数据速率,发送器可并联驱动多个接收器和鼠标。

eagler8 发表于 2020-2-25 11:12:32

eagler8 发表于 2020-2-25 11:30:22

max3232是MAXIM公司生产的一款 232通讯的芯片,他可以将单片机的逻辑信号的电平转成RS232的电平。因为RS232是用,正负电平来表示0和1的信号,所以MAX3232要产生相应的正负电压。在使用MAX3232时,先确定一下系统接供的电压,因为此芯片,对不同的工作电压,要给不同的电容来产生电压。通电后,先检测一下2脚是否有+5.4V以上的电压,6脚有-5.4V以上的电压,16脚是否有电压, 如没有则要检查相应的电容。注意在16脚一定要有电容,要不然就可能不能产生相应的电压。

eagler8 发表于 2020-2-25 11:35:45

eagler8 发表于 2020-2-26 10:24:48



MAX3232器件包括两个线路驱动器,两个线路接收器以及一个双电荷泵电路,该电路的两端(±5 kV)ESD保护端子(串行端口连接端子,包括GND)均处于该状态。该设备符合TIA / EIA-232-F的要求,并在异步通信控制器和串行端口连接器之间提供电接口。电荷泵和四个小型外部电容器允许在3V至5.5V单电源下工作。这些器件以高达250 kbit / s的数据信令速率和最大30V / µs的驱动器输出压摆率工作。

eagler8 发表于 2020-2-26 10:27:11

主要特征
使用人体模型(HBM)的RS-232总线端子ESD保护超过±15 kV
达到或超过TIA / EIA-232-F和ITU V.28标准的要求
使用3V至5.5VV CC电源工作
最高可运行250 kbit / s
两个驱动程序和两个接收器
低电源电流:300 µA(典型值)
外部电容器:4×0.1 µF
接受具有3.3V电源的5V逻辑输入
备用高速终端兼容设备(1 Mbit / s)
SN65C3232(–40°C至85°C)
SN75C3232(0°C至70°C)

eagler8 发表于 2020-2-26 11:46:04



电压范围:3V~5V
最高波特率:建议不要高于120kbps
尺寸:9.4mm*15.9mm

eagler8 发表于 2020-2-26 11:58:41

模块参考电原理图

eagler8 发表于 2020-2-26 12:00:58

eagler8 发表于 2020-2-26 12:52:34

下面为模块正反面图,两边的电源是接在一起的,只需接一边即可,两面分别的独立的两个通道,均可使用,箭头表示信号流向,向里说明是输入,向外说明是输出,靠近RS232字符端为RS232电平,靠近TTL字符端为TTL电平。



TTL电平逻辑1为+5V,逻辑0为0V。

RS232电平逻辑1为+3V~+15V,逻辑0为-3V~-15V。

也就是说我们所转换的数据电平+5V ->(+3V~+15V),0V->(-3V~-15V)即可。

我们的MAX232是5V供电的,+5V ->(+3V~+15V)的转换是很容易满足的,0V->(-3V~-15V)就需要内部产生一个负压电源然后去转换输出。MAX232的一般外接4个电容,C+对地之间,C-对地之间的电容用于稳定电荷泵输出的电压,由于C1+ C1-之间的电容加上C2+和C2-之间的电容。由于都是由VCC对它们进行循环充电,产生的V+<=2VCC,V->=-2VCC。这样也基本满足232的电平要求了。CMOS电平的转换同理。

eagler8 发表于 2020-2-26 13:51:10


eagler8 发表于 2020-2-26 15:22:56

/*
【Arduino】168种传感器模块系列实验(资料 +代码 +图形 +仿真)
实验一百四十八:MAX3232电平转TTL电平转换板 mini RS232 MCU串口转换模块

实验接线(TTL端)
+      +5V
-      GND
TXD   2
RXD   3
实验接线(RS232端)
+      +3.3V
-      GND
TXD   4
RXD   5
*/

char val = 0;
int BluePin = 2;
int HelloPin = 3;
int RedPin = 4;
int GreenPin = 5;


void setup()
{
Serial.begin(115200);
pinMode(GreenPin, OUTPUT);
pinMode(RedPin, OUTPUT);
pinMode(BluePin, OUTPUT);
pinMode(HelloPin, INPUT);

digitalWrite(GreenPin, HIGH);
digitalWrite(RedPin, HIGH);
digitalWrite(BluePin, LOW);
delay(5000);
}

void loop()
{
if (digitalRead(HelloPin) == HIGH)
    Serial.println("hello!");

while (Serial.available())
{
    digitalWrite(GreenPin, HIGH);
    val = Serial.read();

    if ((char)val == 'A')
    {
      digitalWrite(RedPin, HIGH);
      digitalWrite(GreenPin, LOW);
      delay(5000);
    }
}
}

eagler8 发表于 2020-2-26 15:24:59

eagler8 发表于 2020-2-26 15:34:53

页: [1]
查看完整版本: 【Arduino】168种传感器模块系列实验(149)---MAX3232串口转换板