Автор Тема: RF 434 Mhz модули - май нещо изгоря...  (Прочетена 9470 пъти)

Tsoni

  • Вече знае какво е робот!
  • *****
  • Публикации: 88
    • Профил
RF 434 Mhz модули - май нещо изгоря...
« -: Януари 26, 2014, 06:13:23 pm »
Здравейте!Някой работил ли е с тези модули от Роботев?До едно известно време се държаха наред, но изведнъж не може да се прати и една цифра.Съгурен съм че схемата ми е наред ето и кодовете:
Изпращане:

 #include <VirtualWire.h>

void setup()
{
  vw_set_ptt_inverted(true); // Required for DR3100
    vw_setup(2000);    // Bits per sec
        vw_set_tx_pin(3);
}

void loop()
{
  char *msg = "1";
  vw_send((uint8_t *)msg, strlen(msg));
    vw_wait_tx(); // Wait until the whole message is gone

}


Приемане:

#include <VirtualWire.h>

void setup()
{
  Serial.begin(9600);
  vw_set_ptt_inverted(true); // Required for DR3100
    vw_setup(2000);    // Bits per sec
    vw_set_rx_pin(2);
    vw_rx_start();       // Start the receiver PLL running
}

void loop() {
  uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;
   
    if (vw_get_message(buf, &buflen)) {
 
     digitalWrite(13, true);
     
     for (int i = 0; i < buflen; i++) {
       Serial.println(buf);
     }
     digitalWrite(13, 0);
    }
}


Ще съм благодарен ако някой тества самите кодове и  евентуално предположи къде може да е проблема или поне как да ги тествам поотделно дали работят.
 :)

Цони Витков 17 г. МГ \"Гео Милев\" Плевен

AA

  • Робо-Новак
  • *****
  • Публикации: 28
    • Профил
Re: RF 434 Mhz модули - май нещо изгоря...
« Отговор #1 -: Януари 27, 2014, 03:22:56 pm »
  Можеш да пуснеш бавна импулсна поредица като данни данни на предавателя - примерно 2-3 Hz и с един светодиод в изхода на приемника да контролираш какво получаваш. Така можеш да прецениш до някаква степен работи ли радиовръзката.

Tsoni

  • Вече знае какво е робот!
  • *****
  • Публикации: 88
    • Профил
Re: RF 434 Mhz модули - май нещо изгоря...
« Отговор #2 -: Януари 27, 2014, 05:27:17 pm »
Може ли примерен код?
Аз пробвах изпращане на "1" с честота 5 Hz(слагах делей 200 в края на луупа) и нищо не ставаше - приемника не влизаше в иф-а за приемането на смислени данни.
Открих една функция с която се тества предавателя, но кода не иска да се компилира с нея - връща true ако предава данни
if (vw_tx_active == true) digitalWrite(13, 1);
Грешката е следната: vw_tx_active was not declared in this scope
Свалих последната версия на библиотеката уш, но просто не го възприема като функция...
Цони Витков 17 г. МГ \"Гео Милев\" Плевен

AA

  • Робо-Новак
  • *****
  • Публикации: 28
    • Профил
Re: RF 434 Mhz модули - май нещо изгоря...
« Отговор #3 -: Януари 29, 2014, 08:19:48 am »
  Не става дума за някакъв особен код. Изгенерирай с Ардуино-то импулсна поредица - примерно 200мс. високо ниво, 200мс. ниско. Включи към съответния изход светодиод през съпротивление 1кОм и той трябва да замига. Подай това като данни на предаателя. Включи към изхода на приемника друг светодиод през 1кОм. Трябва да имаш същото мигане.
  Не е проверка на 100% но вероятно ще те ориентира.