После изучения варианта прошивки через Raspberry PI ,был разработан вариант более простой,который может реализовать любой пользователь,программирующий микроконтроллеры AVR и имеющий на вооружении программатор USBasp на базе микроконтроллера Atmega8.

Для реализации идеи был использован тот же исходный код программатора под Raspberry PI. А USBasp перепрограммирован в USB-SPI переходник на базе библиотеки V-USB.

Первый вариант программатора позволял записывать прошивку за 37 секунд,что конечно же не очень устраивало.После некоторых оптимизаций по передаче данных по USB был достигнут результат прошивки за 12 секунд. 

Перепрограммируем USBasp в USB-SPI устройство

В архиве имеется как исходный код переходника USB-SPI ,так и скомпилированный hex файл в папке firmware.

Процесс прошивки описан на страничке USBasp .Прошивка ничем не отличается от обновления кода программатора.

Установка  программатора

- Для Linux необходимо скомпилировать программу стандартно командой make или воспользоватся уже скомпилируемым файлом nrf24le1 . Драйвера не требуются. Необходимы установленные библиотеки : libusb-dev или libusb-0_1-4 и libusb-compat-devel в зависимости от версии дистрибутива.

 -Для Windows требуется установка стандартных драйверов. Программа скомпилирована используя cygwin. Ссылка на win версию. Обновлено !

Подключение nRF24LE1 к USBasp

le1-usbasp Подключение nRF24LE1 к USBasp аналогично подключению микроконтроллеров AVR. Только FSCN вывод nRF24LE1 подключается на вывод RES(reset) платы USBasp. А вывод PROG подключается на вывод номер 4 разъема. Распиновку выводов можно найти в таблице на справочной странице nRF24LE1.

 

Внимание !  По даташиту nRF24LE1 допустимо питание до 3.6В -  необходимо переключить перемычку JP1 на USBasp для переключения на встроенный стабилизатор на 3.3В. А так же неясно толерантны ли выводы nRF24LE1 к 5 вольтам и нужны ли делители на резисторах для согласования уровней между nRF24LE1 и USBasp .В итоге я не использовал делители и никаких негативных последствий не получил - Вы можете так же не устанавливать делители,но на свой страх и риск.Кстати,например у nRF24L01 выводы толеранты и допускают подключение 5Вольтовым микроконтроллерам.

Прошивка nRF24LE1.

Прошивка аналогична прошивке через Raspberry PI и поддерживает те же команды:

./nrf24le1 test - выводит тестовую информацию nRF24LE1.

./nrf24le1 write - прошьет файл main.bin,лежащий в этой же папке в nRF24LE1.

./nrf24le1 read -создаст дамп прошивки из nRF24LE1 под имененем main-dump.bin .

Не забываем так же конвертировать в бинарный файл прошивку ,используя утилиту hex2bin .

Исходные коды программатора  nrf24le1_Downloader.zip

Существует программа для windows с графической оболочкой, тема на форуме тут.


Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.