OrangeRx Open LRS 433MHz TX Module
А загрузчик меняли ? не прошивку через усб, а через разьем программирования загрузчик? Я же даже скриншот привел
The “Burn Bootloader” commands in the Arduino environment use an open-source tool, avrdude. There are four steps: unlocking the bootloader section of the chip, setting the the fuses on the chip, uploading the bootloader code to the chip, and locking the bootloader section of the chip. These are controlled by a number of preferences in the Arduino preferences file.
arduino.cc/en/Hacking/Bootloader
Не думаю, что аурдинская среда меняет Efuse. Для этого нужно знать напряжение питания меги в данном устройстве. А откуда ей это знать?
При загрузке загрузчика в ардуино происходит и конфигурирование фюзов в соответствии с тем как указано в файле boards.txt , к примеру для
3.3V, 8 MHz ext ATmega168
конфиг по умолчанию такой
pro.upload.protocol=stk500
pro.upload.maximum_size=14336
pro.upload.speed=19200pro.bootloader.low_fuses=0xc6
pro.bootloader.high_fuses=0xdd
pro.bootloader.extended_fuses=0x00
pro.bootloader.path=atmega
pro.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
pro.bootloader.unlock_bits=0x3F
pro.bootloader.lock_bits=0x0Fpro.build.mcu=atmega168
pro.build.f_cpu=8000000L
pro.build.core=arduino
примеру для
3.3V, 8 MHz ext ATmega168
конфиг по умолчанию такой
А для 328-й какой конфиг по умолчанию?
Под разные напряжения и частоты кварцев
pro328.name=Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
pro328.upload.protocol=stk500
pro328.upload.maximum_size=30720
pro328.upload.speed=57600pro328.bootloader.low_fuses=0xFF
pro328.bootloader.high_fuses=0xDA
pro328.bootloader.extended_fuses=0x05
pro328.bootloader.path=atmega
pro328.bootloader.file=ATmegaBOOT_168_atmega328_pro_8MHz.hex
pro328.bootloader.unlock_bits=0x3F
pro328.bootloader.lock_bits=0x0Fpro328.build.mcu=atmega328p
pro328.build.f_cpu=8000000L
pro328.build.core=arduino##############################################################
pro5v328.name=Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
pro5v328.upload.protocol=stk500
pro5v328.upload.maximum_size=30720
pro5v328.upload.speed=57600pro5v328.bootloader.low_fuses=0xFF
pro5v328.bootloader.high_fuses=0xDA
pro5v328.bootloader.extended_fuses=0x05
pro5v328.bootloader.path=atmega
pro5v328.bootloader.file=ATmegaBOOT_168_atmega328.hex
pro5v328.bootloader.unlock_bits=0x3F
pro5v328.bootloader.lock_bits=0x0Fpro5v328.build.mcu=atmega328p
pro5v328.build.f_cpu=16000000L
pro5v328.build.core=arduino##############################################################
Странно, что для обоих вариантов питания одни и теже значения Bodlevel. Видать не боятся при 16 МГц до 2.7 В проваливаться. 😉
Видать не боятся при 16 МГц до 2.7 В проваливаться.
Как и Эксперт…
Так, для статистики, убил сегодня приемник статикой…реально первый раз такое… 😃
По фьюзам, как пришел не смотрел что там было, но прошил сразу загрузчик из ардуино, сегодня глянул - efuse правильно стоит.
Объясните толком, что и где смотреть и как изменить!
тока что проверил - прошивка андуринового загрузчика правит фьюзы и выставляет FD
прошивка андуринового загрузчика правит фьюзы и выставляет FD
А изначально, что стояло?
тока что проверил - прошивка андуринового загрузчика правит фьюзы и выставляет FD
Антон, а плату какую выбирал перед записью загрузчика? У меня была выбрана рекомендованная kha “Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328”, после прошивки загрузчика arduinoIDE показала ошибку сравнения и теперь приемник не отзывается… 😦 это можно поправить?
меня была выбрана рекомендованная kha “Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328”, после прошивки загрузчика arduinoIDE показала ошибку сравнения и теперь приемник не отзывается… 😦 это можно поправить?
Какие фьюзы прописаны для 5 В? Если > 3.3 В BODLEVEL, то мега теперь не запустится пока питание не станет больше BODLEVEL. И поменять нельзя без подачи питания выше этого порога. Но Uпит > 3.6 В может убить RFM-ку. 5 В убъет почти наверняка. Надо отпаять RFM-ку, подать питание 5 В на мегу и перепрограммировать фьюзы BODLEVEL на 2.7 В (Efuse = FD).
Другая возможная причина: Вы подавали 5 В с программатора и RFMка умерла. Как стояла перемычна питания на программаторе?
А изначально, что стояло?
FF
Какие фьюзы прописаны для 5 В? Если > 3.3 В BODLEVEL, то мега теперь не запустится пока питание не станет больше BODLEVEL. И поменять нельзя без подачи питания выше этого порога. Но Uпит > 3.6 В может убить RFM-ку. 5 В убъет почти наверняка. Надо отпаять RFM-ку, подать питание 5 В на мегу и перепрограммировать фьюзы BODLEVEL на 2.7 В (Efuse = FD).
Была выбрана вот эта плата:
pro5v328.name=Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
pro5v328.upload.protocol=arduino
pro5v328.upload.maximum_size=30720
pro5v328.upload.speed=57600
pro5v328.bootloader.low_fuses=0xFF
pro5v328.bootloader.high_fuses=0xDA
pro5v328.bootloader.extended_fuses=0x05
pro5v328.bootloader.path=atmega
pro5v328.bootloader.file=ATmegaBOOT_168_atmega328.hex
pro5v328.bootloader.unlock_bits=0x3F
pro5v328.bootloader.lock_bits=0x0F
pro5v328.build.mcu=atmega328p
pro5v328.build.f_cpu=16000000L
pro5v328.build.core=arduino
pro5v328.build.variant=standard
Другая возможная причина: Вы подавали 5 В с программатора и RFMка умерла. Как стояла перемычна питания на программаторе?
Нет, перемычка питания с программатора убрана, питание подавалось 5в на разъем для серв.
перемычка питания с программатора убрана, питание подавалось 5в на разъем для серв.
Значит дело не в питании. Bovlevel 2.7 В, должна работати.
Как проявляется неисправность? Программатор мегу распознает? Фьюзы менять можете? А прошивку?
екстрем-бурнер версия 1.2 ? поправлен для работы с 328р?
Я правильно понял, что в ардуино 1.04 в файле boards.txt надо поменять вот это
##############################################################
pro5v328.name=Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
pro5v328.upload.protocol=arduino
pro5v328.upload.maximum_size=30720
pro5v328.upload.speed=57600
pro5v328.bootloader.low_fuses=0xFF
pro5v328.bootloader.high_fuses=0xDA
pro5v328.bootloader.extended_fuses=0x05
pro5v328.bootloader.path=atmega
pro5v328.bootloader.file=ATmegaBOOT_168_atmega328.hex
pro5v328.bootloader.unlock_bits=0x3F
pro5v328.bootloader.lock_bits=0x0F
pro5v328.build.mcu=atmega328p
pro5v328.build.f_cpu=16000000L
pro5v328.build.core=arduino
pro5v328.build.variant=standard
на вот это
##############################################################
pro5v328.name=Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
pro5v328.upload.protocol=arduino
pro5v328.upload.maximum_size=30720
pro5v328.upload.speed=57600
pro5v328.bootloader.low_fuses=0xFD
pro5v328.bootloader.high_fuses=0xDA
pro5v328.bootloader.extended_fuses=0x05
pro5v328.bootloader.path=atmega
pro5v328.bootloader.file=ATmegaBOOT_168_atmega328.hex
pro5v328.bootloader.unlock_bits=0x3F
pro5v328.bootloader.lock_bits=0x0F
pro5v328.build.mcu=atmega328p
pro5v328.build.f_cpu=16000000L
pro5v328.build.core=arduino
pro5v328.build.variant=standard
Я правильно понял, что в ардуино 1.04 в файле boards.txt надо поменять вот это
Подожди пока с АрдуиноИДЕ, к тому же менять надо extended fuses…
я уже поторопился и получил кирпич из приемника, пытаюсь с помощью Александра востановить, если получится.
екстрем-бурнер версия 1.2 ? поправлен для работы с 328р?
да, поправлен по ссылке от полярного лиса.
до того, как я попытался через АрдуиноИДЕ залить бутлоадер, в extrem-burner все работало - слил прошивку и ЕЕПРОМ, посмотрел фюзы, не стал их менять - хотел попробовать через Ардуину, если-бы получилось - такой совет для всех “начинающих” был-бы проще, чем через extrem-burner, все равно АрдуиноИДЕ есть у всех для компиляции и заливки прошивок. Вот и допробовался…
pro5v328.bootloader.low_fuses=0xFF
Вот это мне не нравится.
Возможно перестал запускаться кварц. Я сейчас слишком пьян для анализа даташита. 😃 Попробуйте сами понять, как они легли.
Тогда вариантов 2: поставить кварц на 1-4 МГц и, если мега запустится, перепрограммировать фьюзы. Или подключить внешний тактовый генератор на 1-10 МГц.
У меня фьюзы стоят как написано здесь: rcopen.com/blogs/39565
Но там загрузчик не аурдиновский, а не мегалоадовский.