ATtiny85 последовательная связь с несколькими входами
В проекте мы пытаемся настроить сеть связи между тремя ATtinys, где первый должен получать сообщения от двух других. Эти две другие соединены с двумя разными контактами первой крошки. Первый крошечный должен затем получить две строки от других tinys, по одной от каждой, и отправить его в Arduino. Для общения мы использовали SoftwareSerial
, Нам удалось получить и отправить входные данные от одного крошечного, но не от обоих, потому что мы не могли найти способ считывать входные данные только с одного конкретного вывода за раз. Это код, который мы использовали:
#include <SoftwareSerial.h>
const int rx=4;
const int rx2=1;
const int tx=3;
const int tx2=3;
SoftwareSerial mySerial(rx,tx);
SoftwareSerial mySerial2(rx2,tx2);
void setup()
{
pinMode(rx,INPUT);
pinMode(rx2,INPUT);
pinMode(tx,OUTPUT);
mySerial.begin(9600);
mySerial2.begin(9600);
}
void loop()
{
mySerial.listen();
if (mySerial.isListening()) {
mySerial.println("Port One is listening!");
mySerial.println(mySerial.read());
}
else{
mySerial.println("Port One is not listening!");
}
mySerial2.listen();
if (mySerial2.isListening()) {
mySerial2.println("Port Two is listening!");
mySerial2.println(mySerial2.read());
}
else{
mySerial2.println("Port Two is not listening!");
}
delay(500);
}
Код выше работал без части после mySerial2.listen();
, Может быть listen
-функция SoftwareSerial
не работает на tinys, но если это так, есть ли другой способ прослушать определенный входной контакт? Или у вас есть какой-нибудь совет, что делать?