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

【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)

实验五十九: RS232转TTL2代串口模块刷机板模块(MAX3232芯片)

MAX3232芯片

采用专有低压差发送器输出级,利用双电荷泵在3.0V至5.5V电源供电时能够实现真正的RS-232性能,器件仅需四个0.1uF的外部小尺寸电荷泵电容。max3232确保在120kbps数据速率,同时保持RS-232输出电平。max3232具有二路接收器和二路驱动器,提供1uA关断模式,有效降低功效并延迟便携式产品的电池使用寿命。关断模式下,接收器保持有效状态,对外部设备进行监测,仅消耗1uA电源电流,max3232的引脚、封装和功能分别与工业标准MAX242和MAX232兼容。即使工作在高数据速率下,max3232仍然能保持RS-232标准要求的正负5.0V最小发送器输出电压。

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


RS232转TTL2代串口模块刷机板模块(MAX3232芯片)

DB9管脚功能

1 、DCD( Data Carrier Detect) :载波检测。主要用于Modem通知计算机其处于在线状态,即Modem检测到拨号音,处于在线状态。

2 、RXD(Receive(rx) Data):此引脚用于接收外部设备送来的数据;在你使用Modem时,你会发现RXD指示灯在闪烁,说明RXD引脚上有数据进入(电脑的2接MAX232的RS232端TOUT(如PIN7))。

3 、TXD(Transmit(tx) Data):此引脚将计算机的数据发送给外部设备;在你使用Modem时,你会发现TXD指示灯在闪烁,说明计算机正在通过TXD引脚发送数据。

4 、DTR( Data Terminal Ready ):数据终端就绪;当此引脚高电平时,通知Modem可以进行数据传输,计算机已经准备好。

5 、GND(Ground):逻辑地。

6 、DSR(data set ready):数据设置就绪;此引脚高电平时,通知计算机Modem已经准备好,可以进行数据通讯了。

7 、RTS(Request To Send):请求发送;此脚由计算机来控制,用以通知Modem马上传送数据至计算机;否则,Modem将收到的数据暂时放入缓冲区中。

8 、CTS(Clear to send): 清除发送;此脚由Modem控制,用以通知计算机将欲传的数据送至Modem。

9 、RI ( Ring Indicator): Modem通知计算机有呼叫进来,是否接听呼叫由计算机决定。

要想实现串口间通信,至少需要三个引脚,即:RXD,TXD,GND,RXD与其他串口线TXD相连,TXD与RXD相连,GND与GND相连,这样就实现了串口间通信。该通信是全双工的,即可以同时发送/接收数据,虽然说是串行的,但是因为发送/接收不是用的一个通道,所以可以实现全双工。


DB9与MAX3232的连接电路图




模块电原理图



实验开源代码

/*【Arduino】168种传感器模块系列实验(59)实验五十九: RS232转TTL2代串口模块刷机板模块(MAX3232芯片)程序之一,读取缓存中的串口数据注意这里的接线方法,软串口RX接RS232转接板的RX口,TX接RS232转接板的TX口*/#include <SoftwareSerial.h>SoftwareSerial DLSerial(6, 7); // 软串口 RX(D6), TX(D7)void setup() {DLSerial.begin(9600); //设备波特率9600}void loop() {    DLSerial.write(1); //发送字节数据DLSerial.write(3);delay(500);while (DLSerial.available()>0) //如果缓存中有接收到的数据{DLSerial.read(); //读取缓存中的串口数据delay(2);}delay(500);}


/*【Arduino】168种传感器模块系列实验(59)实验五十九: RS232转TTL2代串口模块刷机板(MAX3232芯片)程序之二,接收串口数据rx = 6tx = 7*/#include <ctype.h>#define bit9600Delay 100  #define halfBit9600Delay 50#define bit4800Delay 188 #define halfBit4800Delay 94 byte rx = 6;byte tx = 7;byte SWval;void setup() {pinMode(rx,INPUT);pinMode(tx,OUTPUT);digitalWrite(tx,HIGH);delay(2);digitalWrite(13,HIGH); SWprint('o');  SWprint('k');SWprint(10);}void SWprint(int data){byte mask;digitalWrite(tx,LOW);delayMicroseconds(bit9600Delay);for (mask = 0x01; mask>0; mask <<= 1) {if (data & mask){ digitalWrite(tx,HIGH); }else{digitalWrite(tx,LOW); }delayMicroseconds(bit9600Delay);}digitalWrite(tx, HIGH);delayMicroseconds(bit9600Delay);}int SWread(){byte val = 0;while (digitalRead(rx));if (digitalRead(rx) == LOW) {delayMicroseconds(halfBit9600Delay);for (int offset = 0; offset < 8; offset++) {delayMicroseconds(bit9600Delay);val |= digitalRead(rx) << offset;}delayMicroseconds(bit9600Delay); delayMicroseconds(bit9600Delay);return val;}}void loop(){SWval = SWread(); SWprint(toupper(SWval));}


实验仿真编程(linkboy)

【雕爷学编程】Arduino动手做(59)---RS232转TTL串口模块相关推荐

  1. 【雕爷学编程】Arduino动手做(75)---TTL转RS-485模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  2. 【雕爷学编程】Arduino动手做(105)---压电陶瓷振动模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  3. 【雕爷学编程】Arduino动手做(107)---PCF8574扩展板模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  4. 【雕爷学编程】Arduino动手做(110)---JDY-31 蓝牙模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  5. 【雕爷学编程】Arduino动手做(133)---LCD1602扩展板模块

    7款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目 ...

  6. 【雕爷学编程】Arduino动手做(142)---GY-25串口倾斜度模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  7. 【雕爷学编程】Arduino动手做(88)---水流量传感器模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  8. 「雕爷学编程」Arduino动手做(30)——光敏二极管模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(动手做)的理念,以学习和交流为目的,这里准备逐 ...

  9. 「雕爷学编程」Arduino动手做(29)——DS1302时钟模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  10. 「雕爷学编程」Arduino动手做(17)---人体感应模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

最新文章

  1. Outlook for Mac v15.36(170606)发布:新增收藏夹功能
  2. 数据回填过程中,不可设置nobackfill和norecover
  3. 解决yarn build时报错:内存溢出FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed
  4. 微处理器:50岁了!
  5. 小米手机硬改技术_小米11手机爆料:首发骁龙875 或采用屏下摄像头技术
  6. Transformer 是万能的吗?
  7. 批处理学习笔记1 - Hellow World
  8. 重磅!阿里推出国产开源的JDK!这是要干掉oracle??
  9. javascript 下载方法
  10. 手机QQ2009(塞班第三版)聊天记录提取完全代码
  11. 3D数学基础 简要归纳
  12. github octotree工具 gitee
  13. Web渗透测试实战——(1)Web渗透测试简介
  14. CoffeeScript是什么
  15. 【观察】新华三:云智原生,重塑未来
  16. Django入门(一)
  17. 103000大写加零吗_103000怎样大写不写零
  18. 平面设计怎么学,平面设计怎么学排版:夏雨老师
  19. java Web 前后端交互
  20. 数据还能再低点?SuperData显示2016年VR出货量为630万台

热门文章

  1. wine模拟器安装xshell
  2. 计算机重启后打印机无法连接不上,共享打印机电脑重启就无法连接怎么办
  3. HTML实例网页代码 简单的个人博客网站设计与实现 (div+css)
  4. Graphene(石墨烯)区块传播技术能够实现10倍的更高效率
  5. Flask+SQLAlchemy+graphene+docker示例
  6. spring boot中自定义Filter过滤器
  7. 美国计算机访学,计算机应用专业4天喜获美国加州大学洛杉矶分校访问学者职位...
  8. Android apk签名
  9. Win10双击任务栏的QQ图标就会自动隐藏的解决方案
  10. Cloning into ‘vue-element-admin‘... fatal: unable to access ‘https://github.com/PanJiaChen/vue-eleme