Все для Arduino в одном месте
Адрес: Павлодар
Телефон: +7 705 336-36-03

whatsapp +7 705 336-36-03

Модуль RS-485 для Arduino UNO (Описание, схемы, примеры)

Содержание

  1. Введение
  2. Спецификация
  3. Используемые пины
  4. Схема платы
  5. Пример кода

 

Введение

Модуль Arduino RS485 , специально разработанный для контроллера Arduino . Модуль может легко преобразовать UART в RS485
Достаточно установить на каждую плату RS485 и протянуть всего два провода!

Вы сможете разворачивать масштабные сети интеллектуальных датчиков, строить системы умного дома или организовывать автоматический полив в большом количестве мест вашего дачного участка.

Никаких ethernet-кабелей. Никаких обжимок и разъёмов 8P8C. Никаких концентраторов. Только два провода, к которым параллельно подключаются все контроллеры. Модуль предоставляет возможность передавать байты данных. Протокол передачи данных предоставляется определить самостоятельно.

Кроме того, по RS485 вы можете общаться со сторонними устройствами, которые поддерживают этот интерфейс.

Спецификация

  • Питание модуля: + 5.0V
  • Размер модуля: 55 мм x 53 мм
  • 16 цифровых портов ввода-вывода (включая интерфейс I2C)
  • 6 аналоговых портов ввода-вывода и питания
  • Переключатель режимов: работа / программирование
  • Переключатель режимов: автоматического / ручного направления передачи (в ручном режиме выбора направления передачи используется пин 2. Установка логической единицы соответствуют направлению на передачу, нуля — на приём.)
  • Светодиодный индикатор приемопередатчика
  • Стандартный разъем RS485, мини-интерфейс RS485 (PH2.0) и штыревой разъем RS485
  • Область для пайки (прототипирования)
  • Кнопка сброса

Используемые пины

Управление платой осуществляется через UART. Поэтому занятыми оказываются пины 0 (RX) и 1 (TX), используемые для приёма и передачи данных соответственно.

Кроме того, в ручном режиме выбора направления передачи используется пин 2. Установка логической единицы соответствуют направлению на передачу, нуля — на приём.
Многие Arduino-платы, например Arduino Uno, используют эти пины для загрузки нового скетча. Чтобы интерфейс RS-232 не мешал перепрошивке платы, просто установите предусмотренный на плате переключатель в положение «OFF».

Бывает необходимо одновременно использовать и интерфейс RS-485 и связь с компьютером. В таком случае в качестве управляющего устройства можно использовать Arduino Leonardo, в которой аппаратный UART и интерфейс USB разнесены.

Схема платы

 Пример кода

Режим автоматической передачи

/*
# 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;
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));
    Serial.println("OK");
     }
  }
}

Режим ручной передачи

/*
# 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;
int EN = 2;  //Definition RS485 shield enable terminal (the 2nd digital IO ports), 
//high for the sending state, the low level of receiving state
void setup()
{
  Serial.begin(9600);
  pinMode(led,OUTPUT);
  pinMode(EN,OUTPUT);
}
void loop()
{
  int temp;
  digitalWrite(EN,LOW);    //Enable low, RS485 shield waiting to receive data
  if(Serial.available())
  {
    temp=Serial.read();
     if(temp=='V')
     {
      digitalWrite(led,1-digitalRead(led));
      digitalWrite(EN,HIGH);    //Enable high, RS485 shield waiting to transmit data
      Serial.println("OK");
      delay(10);    //Delay for some time, waiting for data transmitted
     }
  }
}
  • Модуль RS-485 для Arduino UNO (Описание, схемы, примеры)