Ви не увійшли.
Спаяв я плату, намагаюся протестувати чіп, але відповідна функція повертає 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 проект, я навчаюсь:)
Питання: що робити, щоб перевірити модуль/почати його використовувати?