_SKU_DFR0259_RS485扩展板_RS485_Shield - jimaobian/DFRobotWikiCn GitHub Wiki

RS485 Shield V1.0

产品简介

  • RS485扩展板是专为Arduino控制器设计的,可方便的将串口转换为RS485接口。
  • 板上集成标准接线柱和迷你RS485接口(PH2.0接口),引出RS485排针,让你用最方便的方式连接各种RS485设备。
  • 扩展板具备焊接区域,方便您的DIY设计,充分利用扩展板上的空间。
  • 自动和手动收发模式一键切换,扩展了应用范围。
  • 板载运行/编程模式开关,拨到OFF时屏蔽扩展板,此时Arduino可烧写程序,避免反复插拔扩展板;ON处时,扩展板正常使用。
  • 沉金工艺,既美观,又保证PCB质量。长脚镀金排针,接触良好,适应各种Arduino主控设备。

技术规格

  • 模块电源:+5.0V
  • 模块尺寸:55mmx53mm
  • 引出16个数字IO口(含一个I2C接口)
  • 引出6个模拟IO口及电源
  • 运行/编程模式开关
  • 自动与手动收发模式切换开关(手动收发模式时,使能端是2号数字IO口)
  • 收发指示灯
  • 标准RS485接口、迷你RS485接口(PH2.0接口)、RS485排针
  • 可焊接区域
  • 复位开关

引脚说明

RS485-CH.png

运行/编程模式开关:拨到OFF处,您可以为Arduino控制器下载程序。拨到ON处,扩展板将Arduino控制器的串口转化为RS485接口。 收发模式切换开关:拨到AUTO处,扩展板处于自动收发状态,您无需关心操作时序;拨到MANU处,扩展板处于手动收发状态,使能端为2号数字IO口,使能端高电平发送状态,低电平接收状态。

应用实例

使用步骤

将RS485扩展板插在您的Arduino控制器上,然后用导线将RS485扩展板的接线端子与USB—RS485转换器的接线端子连接起来,即:A对A,B对B,GND对GND,然后下载以下实例代码(注意:下载代码时,运行/编程模式开关必须打到OFF处,否则会导致下载失败,下载完成后打到ON处,扩展板才能正常使用)。打开Arduino IDE的Serial Monitor,找到USB-RS485转换器对应的串口,发送字符“V”,可以看到LED灯状态会改变,并且回复“OK”。 DSC1093-1.png 20130924141707.jpg

样例代码

自动收发模式

/*
# This sample codes is for testing the RS485 shiled(automatic transmission mode).
# Editor : YouYou
# Date   : 2013.9.16
# Ver    : 0.1
# Product: RS485 shield
# SKU    : DFR0259
*/
int led = 13;    //定义LED所在灯管脚
void setup()
{
  Serial.begin(9600);    //初始化串口
  pinMode(led,OUTPUT);
}
void loop()
{
  int temp;    //串口数据临时缓存
  if(Serial.available())    //如果串口接收到数据了
  {
    temp=Serial.read();    //暂存接收到的数据
     if(temp=='V'){
      digitalWrite(led,1-digitalRead(led));    //如果接收到的数据是字符“V”,则改变LED灯的状态
    Serial.println("OK");    //回复OK,表示收到了字符“V”,并改变了LED的状态
     }
  }
}

手动收发模式

/*
# This sample codes is for testing the RS485 shiled(manual transmission mode).
# EN = 2;
# Editor : YouYou
# Date   : 2013.9.16
# Ver    : 0.1
# Product: RS485 shield
# SKU    : DFR0259
*/
int led = 13;    //定义LED所在灯管脚
int EN = 2;    //定义RS485扩展板的使能端(2号数字IO口),高电平为发送状态,低电平为接收状态
void setup()
{
  Serial.begin(9600);     //初始化串口
  pinMode(led,OUTPUT);
  pinMode(EN,OUTPUT);
}
void loop()
{
  int temp;   //串口数据临时缓存
  digitalWrite(EN,LOW);    //使能端低电平,RS485扩展板等待接收数据
  if(Serial.available())    //如果串口接收到数据了
  {
    temp=Serial.read();
     if(temp=='V')  //如果接收到的数据是字符“V”,则改变LED灯的状态
     {
      digitalWrite(led,1-digitalRead(led));
      digitalWrite(EN,HIGH);    //使能端高电平,RS485扩展板处于发送状态
      Serial.println("OK");    //回复OK,表示收到了字符“V”,并改变了LED的状态
      delay(10);    //延时一段时间,等待数据发送完
     }
  }
}

相关商品

USB--RS485转换器(SKU:FIT0272) URM04 V2.0超声波测距模块(SKU:SEN0002)

相关文档

原理图

老版本

wiki

File:nextredirectltr.png购买 RS485扩展板(SKU:DFR0259)

⚠️ **GitHub.com Fallback** ⚠️