Есть ли подробные примеры Si4463?
Недавно я купил два чипа Si4463, но не не знаю, как их использовать. Это кажется сложным. Я хотел бы знать, есть ли примеры использования Si4463 с Arduino?
@lanse7pty, 👍3
Обсуждение4 ответа
Лучший ответ:
Похоже, этот чип используется в RFM24. Загляните в библиотеку RadioHead:
http://www.airspayce.com/mikem/arduino/RadioHead/classRH__RF24.html
Обычно я использую одни и те же библиотеки для RFM69 (Semtech SX1231) с моим Whisper Node и работает нормально. Я ожидаю того же от RFM24.
Кстати, получить кремний и собрать радио может быть довольно сложно. Вы можете начать с Dev Kit или собранного модуля.
Кроме того, я не думаю, что HopeRF больше производит RFM24, не могу найти на их сайте (http://www.hoperf. com/rf_transceiver/). Если вам это нужно только для одного проекта и вы не собираетесь создавать из него продукт, возможно, лучше выбрать другой/более популярный вариант. Легче будет найти поддержку в Интернете.
Я просмотрел технические характеристики этого устройства и думаю, что это неправильный выбор устройства для новичка. Могу ли я предложить вам начать с рассмотрения относительно простого устройства с интерфейсом DPI, такого как датчик или RTC. Это научит вас основам отправки команд через библиотеку Wire. Вы даже можете освоить его, просто взглянув на существующие библиотеки.
Я не могу найти библиотеку, поэтому вам придется написать свою собственную. Библиотеке потребуется функция begin, которая инициализирует ваш класс, и функция записи и чтения, которые записывают и читают с адреса.
void begin(void);
uint8_t read(const uint8_t& address);
void write (const uint8_t& address, const uint8_t& bytesOfData, const uint8_t* pData);
Вам нужно будет конкретизировать эти функции, вот и все. Если вы хотите сделать свою библиотеку более удобной, прочитайте таблицу данных и создайте функции-оболочки для каждого из регистров, к которым можно получить доступ.
// Эта инструкция требует 10 бут, распределенных по двум байтам.
void writeFrequencyOffset (const uint8_t& highByte, const uint8_t& lowByte)
{
write (0x73, lowByte);
write (0x74, highByte);
}
Процесс создания дружественных оболочек — утомительная операция, нужно просто прочитать лист данных и преобразовать его в код.
Рассматриваемая часть является периферийным устройством SPI, а не I2C, поэтому библиотека проводов не применяется., @Chris Stratton
Я нашел этот пример, который использует si4463 для создания маяка. Возможно, это поможет вам.
https://github.com/alexander-sholohov/si4463-beacon
Микросхема Si4463 от Silicon Labs — отличный коммуникационный чип с очень хорошей чувствительностью. Однако его встроенный MCU использует SPI в качестве интерфейса связи для связи с внешним микроконтроллером.
В таком модуле, как HC-12, микроконтроллер STM8SF103F3, запрограммированный на работу в качестве моста SPI-UART. Модули HC-12 позволяют управлять всеми внутренними функциями Si4463, даже используя команды AT+ для таких вещей, как настройка скорости передачи данных и мощности передачи. К сожалению, код, выполняющий соединение SPI и UART, является проприетарным, что ставит вас в невыгодное положение, если вы пытаетесь использовать чипы Si4463 для создания реального продукта.
Но, возможно, если вы приобрели что-то вроде модуля RFM26W или у вас просто есть базовая микросхема Si4463 для работы, вам нужно будет взаимодействовать с ней через контакты SPI. Следует отметить, что не существует стандартной библиотеки Arduino для связи с контактами SPI Si4463.
Работа с выводами SPI может немного усложниться, поскольку вы пытаетесь синхронизировать часовой механизм. Если вы хотите запачкать руки, вы можете пойти дальше и взглянуть на Si4463 и просмотрите временные параметры SPI на стр. 16.
К счастью, на GitHub есть проект библиотеки Si4463, который вы можете изучить и, возможно, изменить код в соответствии со своими потребностями.
Вот страница GitHub для библиотеки Si4463 Arduino, созданной zkemble:
https://github.com/zkemble/Si446x
Вот сообщение в блоге, где он объясняет это более подробно:
http://blog.zakkemble.net/si4463-radio-library-avr-arduino/
Вот документация для указанной библиотеки:
https://zkemble.github.io/Si446x/_si446x_8h.html
- Использование Broadcom AFBR-S50 с Arduino
- Мне нужна помощь в создании меню с использованием библиотеки u8g2
- Какие беспроводные протоколы можно использовать с Arduino?
- Хорошие способы подключения нескольких шин I2C?
- Проблема с SPI при использовании трансивера RF24 NRF24L01 со светодиодной матрицей MD_MAX72xx
- NRF51822 ± Arduino Uno/ATmegaXXX?
- RH_RF24_MAX_MESSAGE_LEN в RH_RF24.h
- Код зависает с SPI и библиотеками OLED (возможный конфликт между Adafruit SSD1306 и аппаратными библиотеками SPI)
попробуйте [это](https://github.com/Yveaux/RadioHead/tree/master/RadioHead), @ARK
@ARK Я только новичок в Arduino, знаете ли вы подробный курс о том, как использовать 4463?, @lanse7pty
@ARK В вашей сети есть много вещей, на самом деле я не знаю, что подходит и как это использовать., @lanse7pty
Библиотека QAPRS также на si4436 — пример маяка кадров Rado APRS, @Tom