#1 Програмування Arduino » RF24 isChipConnected() returns false » 2024-03-09 12:01:31

Lesage
відповідей: 0

Спаяв я плату, намагаюся протестувати чіп, але відповідна функція повертає 0.

Розпайка: https://imgur.com/a/SbeH2tl

Схематика така: два джойстики живляться від 5В ардуїно, підключені на А0-А3, земля - найнижчий провід.
Ардуїно живиться від вхідної напруги більше 7В (наразі використовую крону, видае 8.4V) на Vin. У паралель до цієї лінії підключена плата з АМ1117, nRF24 живиться від неї. На GND і Vin піни у мене припаяний конденсатор 16V 22 мкФ, полярність видно на фото, начебто не переплутав.
Розпайка nrf наступна:
D11 - CE
D12 - CSN
D4 - MISO
D5 - SCK
D7 - MOSI
У config.h бібліотеки RF24 я прописав згідно з документацією (https://nrf24.github.io/RF24/md_docs_arduino.html) наступне:

#ifndef SOFT_SPI_MISO_PIN
    #define SOFT_SPI_MISO_PIN 4
#endif // SOFT_SPI_MISO_PIN

#ifndef SOFT_SPI_MOSI_PIN
    #define SOFT_SPI_MOSI_PIN 7
#endif // SOFT_SPI_MOSI_PIN

#ifndef SOFT_SPI_SCK_PIN
    #define SOFT_SPI_SCK_PIN 5
#endif // SOFT_SPI_SCK_PIN

Використовуючи наступний код:

#include "RF24.h"
#include "printf.h"

#define CE_PIN 11
#define CSN_PIN 12
RF24 radio(CE_PIN, CSN_PIN);

const uint8_t num_channels = 126;
uint8_t values[num_channels];

void setup(void) {

  Serial.begin(115200);
  printf_begin();

  radio.begin();
  radio.setAutoAck(false);

  radio.startListening();
  radio.stopListening();
  radio.printPrettyDetails();
}

void loop(void) {
  if (radio.isChipConnected()) {
    Serial.println("Connected");
  } else {
    Serial.println("Not connected");
  }
  delay(10000);
}

Я отримую наступний результат: https://imgur.com/a/skEVY1c

Що я перевіряв: напруга між GND і Vin пінами nRF 3.36V. З джойстиками у мене проблем немає, вони видають правильні значення по всіх 4 осях, навіть якщо додаткового живлення немає і Arduino запитана тільки від USB. Якщо додаткового живлення немає, і ардуїна живиться тільки від USB, то напруга на nRF модулі занадто низька, але на роботу скетчів це ніяк не впливає, дані в Serial Port тіж самі. Я також перевіряв код зі скетчу GettingStarted до бібліотеки, результат такий самий як на фото вище, тільки замість Not Connected видає ту ж інформацію з printeDetails() і заповнює екран символами F: https://imgur.com/a/SrhlNHv

Я знаю що розпайка не дуже якісна, це перший мій hardware/low software проект, я навчаюсь:)

Питання: що робити, щоб перевірити модуль/почати його використовувати?

#2 Re: Програмування Arduino » Не завантажується скетч » 2024-03-08 21:51:06

г0cть пише:

Не знаю чи є така фішка у версії IDE 2.1, оскільки нею майже не користуюсь, тому візміть версію 1,8,19 і оберіть там Old bootloader

Все геніальне просто, дякую, допомогло!

#3 Програмування Arduino » Не завантажується скетч » 2024-03-08 20:59:57

Lesage
відповідей: 7

Купив 2 Arduino Nano, нерозпаяні, розпаяв, намагаюся завантажити скетч – не виходить. Плати підключаються, видають якусь нісенітницю в Serial Port, а при спробі записати скетч (будь-який, на фото спроба завантажити Blink) вічне завантаження, а Serial Port відвалюється. В чому може бути проблема?
Скриншоти: https://imgur.com/a/74c6REr

#4 Апаратні питання » Щодо SG90 » 2024-03-01 15:32:52

Lesage
відповідей: 2

Потрібно запитати 4 сервомотори. Можу вибрати або 6 АА, або 8 ААА. Думаю або АА лужні або ААА NiMH. Регулятор напруги UBEC 3А 5В Vin:5.5V-26V. Що краще? Час роботи не принципово (декілька хвилин достатньо).

Підвал форуму