arduino如何进行串口数据传输 Arduino实例三十三

1 实现的功能

两者串口连接

两者串口连接

电脑A

Arduino UNO

Arduino nano

电脑B

软串口连接并通信

如下电脑B的com5口,输入信息,回车

arduino如何进行串口数据传输 Arduino实例三十三(1)

电脑A的com3口,得到信息

arduino如何进行串口数据传输 Arduino实例三十三(2)

2 Arduino UNO 和 Arduino nano板卡的连接

Arduino UNO

Arduino nano

Pin脚3

Pin脚5

Pin脚2

Pin脚6

接地互联

3 实物连接

arduino如何进行串口数据传输 Arduino实例三十三(3)

4 Arduino UNO板卡的程序

#include<SoftwareSerial.h> SoftwareSerial softSerial(3,2); void setup() { //初始化serial,该串口用于与计算机连接通信: Serial.begin(9600); //初始化serial1,该串口用于与设备B连接通信; softSerial.begin(9600); softSerial.listen(); } //两个字符串分别用于存储A,B两端传来的数据 String device_A_String=""; String device_B_String=""; void loop() { // 读取从计算机传入的数据,并通过softSerial发送个设备B: if(Serial.available()>0) { if(Serial.peek()!='\n') { device_A_String =(char)Serial.read(); } else { Serial.read(); Serial.print("you said:"); Serial.println(device_A_String); softSerial.println(device_A_String); device_A_String=""; } } //读取从设备B传入的数据,并在串口监视器中显示 if(softSerial.available()>0) { if(softSerial.peek()!='\n') { device_B_String =(char)softSerial.read(); } else { softSerial.read(); Serial.print("device B said:"); Serial.println(device_B_String); device_B_String=""; } } }

5 Arduino nano板卡的程序

#include<SoftwareSerial.h> //新建一个softSerial对象,rx:6,tx:5 SoftwareSerial softSerial1(6,5); void setup() { // 初始化串口通信: Serial.begin(9600); //初始化软串口通信; softSerial1.begin(9600); //监听软串口通信 softSerial1.listen(); } // 两个字符串分别用于存储A、B两端传来的数据: String device_B_String=""; String device_A_String=""; void loop() { // 读取从计算机传入的数据,并通过serial1发送个设备B: if(Serial.available()>0) { if(Serial.peek()!='\n') //在没接收到回车换行的条件下 { device_B_String =(char)Serial.read(); //这段代码是在把字符串联成字符串 } else { //这段代码实现从缓冲区读取数据,并将数据发送到计算机显示和软串口发送; Serial.read(); Serial.print("you said:"); Serial.println(device_B_String); softSerial1.println(device_B_String); device_B_String=""; } } //读取从设备A传入的数据,并在串口监视器中显示 if(softSerial1.available()>0) { if(softSerial1.peek()!='\n') { device_A_String =(char)softSerial1.read(); } else { softSerial1.read(); Serial.print("device A said:"); Serial.println(device_A_String); device_A_String=""; } } }

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页