Проблема с ардуино и NRF24L01(PA)

Тема в разделе "Arduino & Shields", создана пользователем Valeriy, 10 ноя 2018.

?

Что может быть не так???

  1. Китайские модули

  2. Иное(напишу в обсуждении)

Можно выбрать сразу несколько вариантов.
Результаты будут видны только после голосования.
  1. Valeriy

    Valeriy Нуб

    Короче:
    Есть две ардуинки, обьединенные в сеть через модули NRF24L01+(с усилком и без).
    Прием-Передача работает отлично, но когда я заставляю ардуино давать высокий уровень на цифровой пин при данном значении сигнала, идет знатная просадка логики( светодиод еле-еле горит, и логики не хватает для управление драйвером моторов L298N)

    Вот скетч( не мой, я лишь его модифицировал):

    Приемник
    #include <SPI.h>
    #include <nRF24L01.h>
    #include <RF24.h>
    RF24 radio(9, 10);
    nRF24L01+ (CE, CSN)
    byte pipe;
    int TEST[2];
    void setup() {
    Serial.begin(9600);
    pinMode(8, OUTPUT);
    delay(1000);
    radio.begin();
    radio.setChannel(5);
    radio.setDataRate (RF24_250KBPS);
    radio.setPALevel (RF24_PA_HIGH);
    radio.openReadingPipe (1, 0xAABBCCDD11LL);
    radio.startListening ();
    // radio.stopListening ();
    }
    void loop() {
    if (radio.available(&pipe)) {
    radio.read(&TEST, sizeof(TEST));
    if (pipe == 1)digitalWrite(8, HIGH);
    //Serial.println(TEST);
    if (TEST[0] > 1000)
    {
    digitalWrite(7, HIGH);
    }
    else
    {
    digitalWrite(7, LOW);
    }
    }
    else digitalWrite(8, LOW);
    }

    Передатчик

    #include <SPI.h>
    #include <nRF24L01.h>
    #include <RF24.h>
    RF24 radio(9, 10);
    nRF24L01+ (CE, CSN).
    int TEST [2];
    void setup() {
    pinMode(14, OUTPUT);
    radio.begin();
    radio.setChannel(5);
    radio.setDataRate (RF24_250KBPS);
    radio.setPALevel (RF24_PA_HIGH);
    radio.openWritingPipe (0xAABBCCDD11LL);
    }
    void loop () {
    if (millis() / 50 % 2) {
    TEST[0] = analogRead(A0);
    radio.write(&TEST, sizeof(TEST));
    }
    }
     
  2. b707

    b707 Гуру

    выход 7 обьявите как OUTPUT и все заработает
    На будущее - пишите скетчи сами, а не копируйте из инета
     
  3. Valeriy

    Valeriy Нуб

    Важно!!!:
    1) В момент просадки прием-передача стабильно
    2) Питание от внешнего источника-не прокатывает, просадка именно логики, с питанием все ок( 8.4в 2 банки 18650( 4.2в 2300мАч) с защитой)
     
  4. NikitOS

    NikitOS Король шутов Администратор

    Пожалуйста, ознакомьтесь с этим и исправьте ошибки;)
     
    b707 нравится это.
  5. Valeriy

    Valeriy Нуб

    Спасибо, работает))