Необходимо из 2 плат сделать " передатчик " сигнала ультразвукового дальномера . Плата, куда передался сигнал, должна его принять.
- Код для измерения расстояния я написал, а как передать его на другую плату, чтоб она его обработала и изменила?
- На схеме платы соединены между собой правильно? ( Если нет - что куда присоединить? )
Скетч дальномера:
#define PIN_TRIG 3
#define PIN_ECHO 2
long duration, cm;
void setup()
{
Serial.begin (9600);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
}
void loop()
{
digitalWrite(PIN_TRIG, LOW);
delayMicroseconds(5);
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
duration = pulseIn(PIN_ECHO, HIGH);
cm = (duration / 2) / 29.1;
Serial.print("rasstoyanie do obekta: ");
Serial.print(cm);
Serial.println(" sm.");
delay(250);
}
ua6em
2
Раз компорт занят можно соединить к примеру по I2C
Она по com порту должна передавать сигнал
ua6em
4
ну тогда и соединяй rx-tx накрест на ардуинах, на второй ардуине вычитываешь из компорта побайтно до “:” ищи поиском по “парсинг”
te238s
5
А смысл в чём? Надо же ещё платы синхронизировать. Откуда приёмник узнает когда был отправлен сигнал?
te238s
7
Ну вот опять я лоханулся…
ua6em
8
у меня аналогично, периодически вылезают темы, как не просмотренные…
1 лайк
Iliya
9
Есть устройства радио связи, связь дистанционно лучше через них .
te238s
11
Напиши ему. Научит уму разуму,как радиосвязь организовать)
Iliya
12
Вот же язвительный )) все время учишь))
ua6em
14
так я вроде как в теме, протоколом TCP/IP поверх AX.25 на дальности в 140 километров с гор линк закрывал