Две Arduino и RS485
- Войдите на сайт для отправки комментариев
Ср, 12/03/2014 - 12:12
Доброго дня всем.
Столкнулся с такой проблемой. Делаю проект для зачета. Есть Arduino Mega и Uno. На меге работает сервер с htm страничкой (Ethernet shield). К Uno подцеплен датчик DHT-11.(скетчи будут ниже) Пытаюсь связать обе платы ардуино по интерфейсу RS 485. Сделал вот по такой схеме.
В схеме две Uno, вместо первой- Mega. Конкретная задача считать данные с датчика и по запросу от меги отправить с уно на мегу.
Вот скетч для Uno и DHT-11 (рабочий)
#include <dht.h> int ledPin = 13; // Создаем сенсор DHT sensor = DHT(); void setup() { Serial.begin(9600); // Подключаем сенсор к 0 аналоговому порту sensor.attach(A0); // Ждем готовность сенсора delay(1000); } void loop() { // Проводим измерения sensor.update(); switch (sensor.getLastError()) { case DHT_ERROR_OK: char msg[128]; // Если ошибок нет, то собираем данные sprintf(msg, "Vlaznost = %d%% Temp = %dC", sensor.getHumidityInt(), sensor.getTemperatureInt()); Serial.println(msg); break; case DHT_ERROR_START_FAILED_1: Serial.println("Error: start failed (stage 1)"); break; case DHT_ERROR_START_FAILED_2: Serial.println("Error: start failed (stage 2)"); break; } delay(1000); }
Помогите, кто чем может, заранее благодарен)))
У max485 есть ещё пара ног, они соединены на вашей картинке.
Когда на них "0" - данные идут из линии в процессор и наоборот когда там "1".
Всегда держим "0"- сидим на приёме, а когда хотим что-то передать- на время паредачи поднимаем в "1".