http://forum.getchip.net/

Библиотека макросов для работы с модулем nRF24
http://forum.getchip.net/viewtopic.php?f=18&t=869
Страница 1 из 1

Автор:  Valentinych [ 01 окт 2018, 10:24 ]
Заголовок сообщения:  Библиотека макросов для работы с модулем nRF24

По просьбе S@per'a выкладываю свою библиотеку макросов для работы с модулем nRF24.
На функциональную полноту библиотека не претендует, но основные задачи управления радио-модулями решены. Библиотека заточена на прием/передачу двухбайтовых информационных пакетом (легко увеличить). Для работы так же потребуется стандартная библиотека формирования задержек из комплекта GetChiper'a, или своя подпрограмма формирования задержек.
В настройках указаны пины ATMega168p/328p при использовании аппаратного SPI микроконтроллера.
По умолчанию модуль настраивается в режим приема.
Если кому-то будет нужно, выложу в качестве примера одну из своих разработок с конкретным использованием этой библиотеки.

Вложения:
NRF_SPI.rar [4.88 КБ]
Скачиваний: 853

Автор:  vadim2019 [ 03 янв 2020, 21:57 ]
Заголовок сообщения:  Re: Библиотека макросов для работы с модулем nRF24

Библиотека минимальна, настраивается только на прием или передачу. Организация двустороннего обмена не реализованна. Даже загрузки ACK пакета нет.

Автор:  Valentinych [ 13 фев 2020, 19:47 ]
Заголовок сообщения:  Re: Библиотека макросов для работы с модулем nRF24

А никто и не говорил, что будет легко. :mrgreen:
Модуль в принципе не может работать в дуплексе. Или прием, или передача. Но переход из режима в режим не сложен, и не занимает много времени. У меня каждый модуль (в системе их 8 ) выходит в эфир каждые 5 мс. В режиме передачи находится примерно 0,6 мс, и снова возвращается в режим приема.
Так что обмен организован даже не двухсторонний, а восьмисторонний. При небольшом снижении скорости обмена строил сеть из 15 модулей, и все работало как часики.
АСК пакет мне не был нужен, поэтому я просто залочил эту функцию Кому надо, можно включить. Но скорострельность работы резко упадет.

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/