rxtstorm пишет:Отзовитесь люди!!!!Так знает ли кто-нибудь как с шилдами работать и передавать данные с одной хвее на другую хвее!
Помогите пожалуйста,сам не могу разобраться!
Да просто там все. Никаких библиотек не нужно. Я же говорю, берешь две Arduino, надеваешь на них XBee shield'ы. Если чипы XBee ты не перепрограммировал, они связываются друг с другом сами, и все что одна плата передает, вторая принимает.
К примеру, в первую плату зальем тестовый пример - когда принимается символ 'H' она зажигает 13 светодиод, когда принимается 'L', она его гасит:
int outputPin = 13; //здесь храним номер контакта
int val; //здесь будет храниться принятый символ
void setup()
{
Serial.begin(9600); //установка порта на скорость 9600 бит/сек
pinMode(outputPin, OUTPUT); //устанавливаем 13 контакт в режим вывода
}
void loop()
{
if (Serial.available()) { //если есть принятый символ,
val = Serial.read(); // то читаем его и сохраняем в val
if (val == 'H') { // если принят симовол 'H',...
digitalWrite(outputPin, HIGH);// то включаем светодиод
}
if (val == 'L') { // если принят симовол 'L',
digitalWrite(outputPin, LOW); // то выключаем светодиод
}
}
}
Во вторую грузим совсем простой код - ждет секунду, шлет 'H', ждет секунду, шлет 'L':
void setup()
{
Serial.begin(9600);
}
void loop()
{
delay(1000);
Serial.print('H', BYTE);
delay(1000);
Serial.print('L', BYTE);
}
Готово. Вторая шлет в порт 'H', он по радио передается на первую, первая его получает, зажигает светодиод. И в таком духе.
Еще раз повторяю - работа через XBee - это просто работа с последовательным портом.
Хитрости начинаются, если нужно давать управляющие команды самому XBee модулю - тут может и библиотека покажется необходимой, хотя все-равно не обязательной, ведь модулю через тот же самый порт команды даются.