Платформа, независимая от встроенной библиотеки C для модуля Micrchip RN2483 LORA.
Примечание. Это репо в настоящее время не поддерживается и была написана против V1.0 Spec. Считайте это на данный момент . Лемм знай, если хочешь
Это встроенная библиотека C для взаимодействия с модулем Microchip RN2483 LORA. Он стремится быть простым и модульным (достаточно, чтобы упростить его на разные платформы).
Одной из основных особенностей этой библиотеки является ее портативность. Встроенная библиотека с любым вводом/выводом никогда не может быть по -настоящему портативной, поэтому конкретные платформы поддерживаются в отдельных ветвях репозитория. Главная ветвь этого репо является основным кодом, независимым от платформы. Отдельные филиалы (например, platform/mbit ) - это то, что вы действительно захотите использовать, если вы пытаетесь развернуть это для использования на платформе.
Единственная функциональность, специфичная для оборудования, возвращаемая этой библиотекой,-это возможность R/W через UART в модуле RN2483. Следовательно, это обрабатывается функциями обертки: read и write . В главной ветви они просто заполнены #Error, который говорит вам реализовать их в компиляции.
Для получения подробной информации о добавлении поддержки для конкретной платформы см. 6. Добавление платформ .
Для примеров конкретной поддержки платформы см. 5. Поддерживаемые платформы .
Существует документация по доксигене , просто запустите Doxygen Doxycfg в главном каталоге, и она генерирует документы/ папку. Все комментарии должны быть совместимыми с доксигеном, и я старался быть максимально тщательным, но я дам краткий обзор его здесь для простоты использования.
Библиотека записана в стандартном C (C99) и предоставляет полную функциональность модуля RN2483.
Есть command функция, которая позволяет вам записать любую действительную команду в модуль (см. Справочник по команде для действительных команд)
Существует команда initMAC , которая использует настройки, определенные в файле rn2483.cfg (который записывается в config.h по makefile ) для инициализации всех специфических для Лоравана настройки, необходимых для успешного подключения к сети Lorawan.
Помимо этого, другими известными функциями являются join (присоединяйтесь к сети) и tx (передача данных по подключенной сети), которые обрабатывают рукопожатие Lorawan для вас.
Примечание: я хочу расширить эту библиотеку в будущем и укорениться.
Обязательно проверьте файл RN2483.cfg, чтобы настроить настройки Lorawan и запустить Makefile
Установка будет зависеть от вашей платформы, поэтому для этого см. Устройство чтения филиала платформы. Там нет функции init или чего -либо еще для настройки булавок, о которых нужно беспокоиться - все это сделано в функциях read и write (реализовано вами, для вашего использования).
В главной ветви у меня были функции printf и getc для этого (с намерением позволить пользователю перенаправить поток STDIN и STDOUT или переопределить функции с помощью макросов), но после того, как я испытал процесс BBC Micro: Bit Cmake, я решил, что проще решить просто использовать функции обертки, которые модифицированы для каждой платформы.
Помимо установки, общее использование должно идти:
Помните, что вы можете получить доступ к любой другой функциональности RN2483 через функцию rn2483_command ()
См. Branch: Platform/Mbit 's readme.md.
Я попытался модулировать изменения, необходимые для того, чтобы добавить платформу как можно больше. Это в основном делается с помощью функций обертки чтения/записи в RN2483.c, но если вы посмотрите на ветвь BBC Micro: бит, вы увидите, что в некоторых случаях вам нужно изменить больше, чем это (см. Подробности см. В этой ветви).
Функции, которые нуждаются в изменении в rn2483.c :
Очевидно, что это никогда не так просто, поэтому вы можете столкнуться с некоторыми препятствиями, которые требуют дальнейших модификаций. Например, в филиале платформы/MBIT мне пришлось передать указатели на последовательный объект микробита.