RaspberryPi Pico SPI и nrf24l01
Я программирую пико RaspberryPi с помощью Arduino IDE. Работает довольно хорошо, но теперь я пытаюсь управлять модулем nrf24l01.
Мой код компилируется, но я не знаю, на какие контакты должна быть подключена шина SPI. Я попытался подключиться к разным контактам в соответствии с выводом https://datasheets.raspberrypi.org/pico/Pico-R3-A4-Pinout.pdf (например, 2 sck, 3 мисо, 4 mosi), но до сих пор ничего не работало.
Кто-нибудь знает, каковы контакты по умолчанию или как ими управлять? Я также хотел бы управлять другим оборудованием SPI, например дисплеем.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
const uint64_t address = 0x1;
byte sendData[1];
#define CSN_PIN 5
#define CE_PIN 6
RF24 radio(CE_PIN, CSN_PIN);
byte counter = 0;
void setup()
{
Serial.begin(115200);
Serial.println("radio starting");
if (!radio.begin())
{
Serial.println("radio hardware is not responding!!");
while (1) {}
}
radio.openWritingPipe(address);
}
void loop()
{
Serial.print("Counter: ");
Serial.println(counter);
sendData[0] = counter;
radio.write( sendData, sizeof(sendData));
counter++;
}
@qubit, 👍0
Обсуждение1 ответ
Для ядра Arduino-pico
** МИСО - контактный GP16
** MOSI - контактный GP19
** CS - контактный GP17
** SCK - контактный GP18
Ядро Arduino-mbed
** МИСО - контактный GP4
** MOSI - контактный GP3
** CS - контактный GP5
** SCK - контактный GP2
Фантастика, это работает!, @qubit
Исходный код и другие контакты, жестко запрограммированные на пико: https://github.com/arduino/ArduinoCore-mbed/blob/8e0a044330e88bde781eb4c509875ce94980659f/variants/RASPBERRY_PI_PICO/pins_arduino.h, @dGRAMOP
- Проблема с NRF24L01
- SPI с преобразователем уровня на другом конце соединения
- Использование SPI на Pi Pico, Arduino IDE
- STM32 и NRF отправка и получение
- Проблемы nRF24l01+. Данные принимаются как 0
- Как подключить NRF24L01 к Wemos D1 R2
- Подключение Saleae Logic 8 к MISO (контакт 12) на Uno 3 с NRF24L01+ останавливает программу
- Проблема с SPI при использовании трансивера RF24 NRF24L01 со светодиодной матрицей MD_MAX72xx
Успешно ли вы запустили его как для передачи, так и для приема? Какой конденсатор вы используете? Мой опыт показывает, что при использовании Raspberry Pi Pico + NRF24L01 и на Micropython он работает, НО не работает при программировании на Arduino, @Cypress Tower