用户工具

站点工具


ocrobot:alpha:rs485:tutorial01

RS485通信实验

这个例子教你怎样通过RS485模块,使两块MEGA328-U通信。

硬件

搭建电路

1、首先准备A组,连接电脑与mega328-u,下载A组程序,完成之后,断开数据线。

2、将mega328-u、RS-485、Li power三者堆叠,锂电池接入锂电池板,RS-485左边的AB组接上双绞线,

3、准备B组,连接电脑与另外一块mega328-u,下载B组程序,完成之后,断开数据线。

4、将mega328-u和剩下的RS-485、Li power、1602LCD显示屏,四者堆叠,锂电池接入锂电池板,另外RS-485左边的AB组接上双绞线的另外一端。

注意:A组的RS-485的A口接什么颜色的双绞线,B组的A口也要接上对应颜色的双绞线,B口同理。

串口通讯波特率为9600

连接效果如图:

展示效果如图:

拨码开关

A组把5,6拨上;

B组把1,2,5,6拨上。

A组代码

/*
  A组代码如下
  从0开始计数,并将数据发送至串口
  */
 
 long i=0;
void setup() {
  Serial.begin(9600);      // 打开串口传输,并设置波特率为9600
}
void loop() {
 
    Serial.println(i);       // 打印一个标签
     i++;
     delay(500);
}

B组代码

/*
  B组代码
  接收串口数字,并显示在1602上
   */
 
 
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x20,16,2); 
 
void setup() {
  lcd.init();
  lcd.backlight();  
  Serial.begin(9600);      // 打开串口传输,并设置波特率为9600
}
void loop() {
 if (Serial.available() )       //根据接收到的字符做相应的动作
  {delay(100);
 
    lcd.clear(); //清屏
 
    while (Serial.available() > 0) {// 读取字符
 
      lcd.write(Serial.read()); // 显示字符
 
  }
  }
}

返回上一级

ocrobot/alpha/rs485/tutorial01.txt · 最后更改: 2023/06/07 04:23 由 127.0.0.1