Программирование это набор команд соответствующих стандарту машинного кода согласованного в совокупности микросхем, которые выполняют условия включения, выключения и передачи сигналов по заведомо указанным путям. Только когда что-то сложное упрощают, давая только пульт в руки, то усложняется понимание как это всё взаимосвязано и куда что идёт.
@nosmoking72436 жыл бұрын
уж если использовать бутлоадер то ардуиновский. тем более он есть тоже на все популярные чипы на мегу8 так и подавно.
@ЭндиДюфрейн-ь3я Жыл бұрын
chip45 хороший загрузчик, давно им не пользовался нужно вспомнить эту тему)
@regsmic5 жыл бұрын
Позвольте поправить. Выполнение программы начинается с 0000, там как раз расположен загрузчик. От 0000 отсчитываем размер в 1024 слова, там начинается прошивка. Загрузчик в любом случае стартует первым, проверяет, нужно ли ему что то делать и потом перекидывает в данном случае на адрес 1024
@Nakojher3 жыл бұрын
Нет. Неправильно. Касаемо сабжа. Цитирую *В некоторых случаях нужно что бы после сброса микроконтроллер начинал выполнение программы не с нулевого адреса, как это установлено по умолчанию, а с начала области загрузчика. Для того, что бы включить данный режим используется фьюз BOOTRST. Если этот бит прошить (сделать равным нулю) то вектор начального сброса изменится и после сброса контроллер начнет выполнение программы с начала области загрузки.*
@andreyfrolov3017 жыл бұрын
что-то я непонял в чем польза, выходит мы заменили программатор на преобразователь usb-uart, потеряли 2Кб флэш памяти и всё. в чем собственно выгода? :)
@RADIOSOFT17 жыл бұрын
в том что не нужен программатор... например если делается на заказ кому то устройство, или оно в труднодоступном месте.
@andreyfrolov3017 жыл бұрын
а вот это смотрели? rayshobby.net/hid-class-usb-serial-communication-for-avrs-using-v-usb/ я так понял по такой же схеме USBasp работает и вообще можно usb устройства делать на основе авр
@RADIOSOFT17 жыл бұрын
возможно смотрел, но не разбирался. причина - нечем писать софт для usb. да в usbasp ножки с МК идут сразу в юсб
@ДмитрийБелов-ъ2в6 жыл бұрын
Здравствуйте! Немного не по теме... Вы не планируете снять видео по Midbus в программе Flowcode? Спасибо за замечательные уроки!
@RADIOSOFT16 жыл бұрын
Спасибо, уроков по modbus пока не планируется
@yl923 Жыл бұрын
Открыв прошивку в редакторе можно как то понять бутлоадер использует шифрование или нет?
@RADIOSOFT1 Жыл бұрын
Зачем бутлоадеру шифрование? Я не в курсе.
@yl923 Жыл бұрын
@@RADIOSOFT1 Что бы прошивка была в открытом доступе но устройство нельзя было скопировать, просто обновить прошивку
@RADIOSOFT1 Жыл бұрын
@@yl923 мне известна только защита через фьюзы
@yl923 Жыл бұрын
@@RADIOSOFT1 Это защита от подключения.
@SergeyBelotserkovskiy8 жыл бұрын
Я давно пользуюсь бутлоудером chip45, меня полностью устраивает и выбор контроллеров приличный. Единственное что написал свое приложение для заливки прошивки.
@RADIOSOFT18 жыл бұрын
согласен, в общем хороший. чем приложение отличается от фирменного?
@SergeyBelotserkovskiy8 жыл бұрын
да особо ничем, добавил прогрес бар -проценты загрузки, поубирал все лишнее чтобы не путать пользователя
@SergeyBelotserkovskiy8 жыл бұрын
Писал на древнем Delphi 7 + компонент Сomport411f с поддержкой режима Flow Control (нужен для контроля ошибок во время прошивки) Выглядит программа примерно так electronics.inf.ua/P16.files/Loader.png
@masterkit95177 жыл бұрын
как подключить программатор usbisp к flowcode, или никак?
@RADIOSOFT17 жыл бұрын
kzbin.info/www/bejne/pHy5m2B-jpWNr8U&lc=z12siziagomigj1hf04cipvgrryzejvxzrw0k в комментариях
@masterkit95177 жыл бұрын
спасибо большое!
@Абду-забор-ж8ы8 жыл бұрын
Как насчет обзора о расширении памяти на пример для atmega8 иногда ее физически мало чтоб что то большое на ней организовать .А если использовать внешнюю еепром для этих целей и записать программу в нее то и бут и сама программа причем любая влезет.
@RADIOSOFT18 жыл бұрын
а у вас есть опыт такого? никогда не сталкивался.
@arielvolog8 жыл бұрын
Вот у меня два вопроса: 1) Если у меня есть программатор AVR , но расчитан на микросхемы в DIP корпусе, как мне правильно подпаятся к такой микросхеме в корпусе TQFP? 2) Все таки, насколько разница между внешним и внутренним тактовым генератором? (не беря во внимание, освободившиеся контакты)
@RADIOSOFT18 жыл бұрын
1. есть в продаже переходники с ейаз на dip. либо если определить каким образом он программирует то подпаять провода к нужным ножкам. 2. внутренний - он менее стабилен, то есть часы собранные на внутреннем будут врать сильнее чем на кварце.
@Yupitrer4 жыл бұрын
О, я как раз хочу удалить бутлоадер. Какая разница програматор втыкать или ком преобразователь. Так я хоть место сэкономлю. Но главное чтобы со фьюзами не запороть.
@zhdanvadim95365 жыл бұрын
optiboot bootloader еще такой известный есть, под сногие мк авр
@lutsevyat6 жыл бұрын
А вот у меня другой вопрос. Как мне удалить этот ардуиновский загрузчик с меги328 чтоб она читалась и пррервалась с помощью AVERDUDE PROG ?
@RADIOSOFT16 жыл бұрын
просто залить прошивку через spi интерфейс. и во фьюзах отключить указатель на область бутлоадера
@lutsevyat6 жыл бұрын
RADIOSOFT дак даже фьюзы не читаются.
@RADIOSOFT16 жыл бұрын
я не знаю как работает averdude prog. для usbasp никакой автозагрузчик не помеха.
@leons724 жыл бұрын
не работает ресет ,камень на выброс ??
@RADIOSOFT14 жыл бұрын
Возможно в фьюз битах отключили. Нужен параллельный программатор или фьюз доктор, есть такие схемы в сети.
@DOMINATOR-ou8nz4 жыл бұрын
Посмотрите Doctor AVR это несложный самодельный прибор позволяющий восстанавливать залоченные МК
@pav13888 жыл бұрын
после просмотра видео возникло желание опробовать bootloader, но кварца подходящего нет. завтра в магазин придется идти. из прочитанных статей о usb bootloader`ах остановился на BootloadHID( microsin.ru/content/view/1188/44/ ). Вроде все просто и понятно, надо только поставить ATMELstudio или WinAVR. USBaspLoader который может работать с Khazama AVR Programmer требует больший загрузочный сектор, чем есть в меге8(надо уже мега16 или 32). хочу себе макетку сделать на меге8 в dip корпусе. есть какие-нибудь схемы(платы), которыми пользовался(которыми было удобно пользоваться)?
@RADIOSOFT18 жыл бұрын
Я тоже эти статьи смотрел и пробовал прошить, но как то не получилось, одну макетку залочил ( мне лет 5 назад достались на халяву атмега8 в tqfp корпусе, поэтому у меня все макетки на них. Сам в протеусе сделай, пол часа работы. установи стабилизатор 7805, кварц с обвязкой и разъем для программирования. и от оставшихся свободных ножек - контактные площадки вывести. если загрузчик получится то меня проконсультируй! :)
@pav13888 жыл бұрын
фух, осилил BootloadHID. получилось менять порты для перемычки и usb линии D- . С кварцем не получилось, только 12 МГц. полный ответ дам на форуме, завтра ( flowcode.info/forum/viewtopic.php?f=19&t=2157 ) как разберёшься, пили видео урок - знания в массы :)))
@RADIOSOFT18 жыл бұрын
***** ок )
@pav13888 жыл бұрын
я правильно понял: с uart загрузчиком chip45 МК может тактироваться любой частотой и любым источником, будь-то внутренний генератор или внешний кварц? если да, то это однозначно плюс по сравнению с usb загрузчиками.
@RADIOSOFT18 жыл бұрын
***** нет, частота кварца указывается в прошивке загрузчика, мы просто выбираем нужную прошивку из списка с нужным МК и частотой.
@electronicdesignshow30606 жыл бұрын
Автор, кажется ты путаешь и говоришь неправильно - не может бутлоадер стартовать с конца памяти 1024 слова, ведь как раз в настройках фьюзов написано, что бутлоадеру отводится размер 1024 слова, и стартовать контроллер будет с бутсектора, расположенного по адресу $0000, т.е. с самого начала памяти, где и находится начало бутлоадера. А вот после памяти 1024 слова будет находиться уже пользовательская прошивка.
@RADIOSOFT16 жыл бұрын
нет. бутлоадер размещается в конце памяти. это написано в даташите
@Nakojher3 жыл бұрын
Нет. Неправильно. Касаемо сабжа. Цитирую *В некоторых случаях нужно что бы после сброса микроконтроллер начинал выполнение программы не с нулевого адреса, как это установлено по умолчанию, а с начала области загрузчика. Для того, что бы включить данный режим используется фьюз BOOTRST. Если этот бит прошить (сделать равным нулю) то вектор начального сброса изменится и после сброса контроллер начнет выполнение программы с начала области загрузки.*