Управляющая Программа Для Stk500

Posted by admin
Управляющая Программа Для Stk500 Average ratng: 8,4/10 9852 reviews

Программирование микроконтроллера в STK500. March 17, 2011 by admin Комментировать ». Для программирования целевого микроконтроллера АТх8515 необходимо предварительно соединить плату STK500 с источником питания и компьютером. После отладки программы с помощью встроенного симулятора можно перейти к программированию микроконтроллера. Для того чтобы загрузить hex-файл в AVR-микроконтроллер, необходимо выполнить команду Tools; STK500 из меню программы AVR Studio 4. После открытия окна выбрать тип микроконтроллера из раскрывающегося списка на вкладке Program и указать путь к записываемому Intel-hex файлу в поле Input HEX File. Вернемся теперь к нашим баранам - программатору STK500. Обычный человек, мало знакомый с микроконтроллерами (дальше буду писать для сокращения м/к), может спросить - а на кой ляд мне ентот ваш высоковольтный программатор сдался? Я вообще своим USBasp программирую и в ус не дую! Все так, читатель, да не так. Переключение МК во второй и третий режимы требует подачи управляющего «высокого» (+12В) напряжения на вывод Reset МК. Понятно, что в этих режимах программирование МК, уже впаянных в плату, требует принятия дополнительных мер для непопадания напряжения +12В в цепи на плате, присоединенные к выводу сброса. Всё-таки у нас не настоящий stk500. Расскажу как залить программу в МК. Для этого нам.

Программа

USB ПРОГРАММАТОР ДЛЯ ВНУТРИСХЕМНОГО ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ AVR (по мотивам проекта ) Чем дальше, тем меньше остаётся на корпусах компьютеров проверенных, изученных вдоль и попе­рёк портов LPT, COM. Хотя ещё можно приобрести компьютер (пусть и б/у) с такими портами для использования его в качестве 'рабочей лошадки', всё же приходится задумываться о грядущей за­мене (мо­дернизации) аппаратуры навешанной на старые порты. В частности, что-то нужно делать с ин­стру­ментами для программирования микроконтроллеров. И лучшие люди Отечества (в данном случае, Petka) не дремлют. В результате появился работоспособный программатор для внутрисхемного програм­мирова­ния микроконтроллеров AVR, совместимый с STK500 v2. Достоинства данной конструкции: - аппаратный преобразователь USB - COM (не надо извращаться с программной реализа­цией USB); - новый протокол от Atmel.

Теперь не требуется перешивать программатор при появлении но­вых чипов; - решена проблема 'курицы и яйца' (как / чем запрограммировать микроконтроллер про­грам­матора); - возможность изменения режимов работы программатора, при помощи любой терми­наль­ной программы, например HyperTerminal; - возможность тактирования программируемого микроконтроллера сигналом 1 МГц; - готовый пакет документации, со всеми необходимыми исходниками (схемы, прошивки, чер­тежи печатных плат, исходные тексты программы микроконтроллера). К недостаткам проекта в целом, можно отнести некоторую 'размытость' полезной информации по 50-ти страницам, что приводит к определённым трудностям при повторении конструкции.

Программа для обновления windows 10

Нужно отметить, что если под рукой ничего, кроме USB порта нет, то выход только один - соби­рать программатор AvrUsb500 by Petka 'как есть'. Однако в ряде частных случаев конструкцию можно упростить: - уже имеются проверенные инструментальные средства для программирования микро­кон­трол­леров. В этом случае гораздо проще прошить МК программатора отдельно. Если размеры будущего программатора большой роли не играют и допустимо использовать МК в корпусе DIP, то этот вариант однозначно предпочтительнее; - есть преобразователь интерфейса USB - RS232 промышленного изготовления. Было бы разумно использовать его в качестве составляющей. Тогда, правда, придётся сделать питание программатора от программируемого устройства, а не от порта USB, однако, по мнению автора статьи, такой вариант надёжнее.

Рено

В результате схема программатора AvrUsb500 by Petka приведена к следующему виду: Stk500' (см. Содержи­мое ар­хива. Atmega 814745600. Hex прошивка для микроконтроллера программатора ( ATmega 8), при частоте кварцевого резонатора 14,7456 МГц (из архива AvrUSB500byPetkaHEXSRCv6uni) Терминал STK 500. Ht файл программы HyperTerminal необходимый для первона­чаль­ных настроек программатора 1. Схема.pdf принципиальная схема программатора 2.

Нижняя сторона ПП (ЛУТ).pdf 8 копий рисунка печатной платы для ла­зерно-утюж­ной тех­нологии изготовления ПП 3. Сборочный чертёж.pdf расположение компонентов на печатной плате + рису­нок пе­чат­ной платы со стороны деталей (вид 'сквозь плату') + рисунок со стороны дорожек 4. Фьюзы.pdf файл с указанием фьюзов, которые необходимо выставить при про­шивке мик­роконтроллера программатора 5. Исходник (Схема).pdf исходная схема программатора (проект AvrUsb500 by Petka) 6. Исходник (Перечень).pdf перечень элементов (проект AvrUsb500 by Petka) Позиционные обозначения элементов на схемах совпадают.

Программа для создания загрузочной флешки

Вновь введённые элементы обозна­чены символом (') у названия элемента. Детали и конструкция По условиям задачи на плате программатора должны быть установлены два разъема DB-9 и микро­контроллер ATmega8 в корпусе DIP. Отсюда ясно, что особенно бороться за миниатюризацию бес­смысленно. Поэтому из SMD компонентов - только конденсаторы C8, C9 типоразмера 0805. Программатор собран на пластине одностороннего фольгированного стеклотекстолита.

Размеры пластины указаны на сборочном чертеже. На плате имеются две перемычки: одна находится под разъё­мом SPI (на рисунке слева), другая рядом с тем же разъёмом. Для удобства трассировки на печатной плате отсутствуют выводы 11, 12, 17, 18 микроконтрол­лера. Перед монтажом панельки МК необходимо вынуть из неё пинцетом указанные контакты. На рисунке показан внешний вид программатора, подключённый к преобразователю интерфейса Prolific USB- to- Serial Comm Port (драйвер PL-2303): Распиновка и тип разъёма SPI обусловлен задачами автора статьи и совместимостью с другими имеющимися программаторами. При сборке данного программатора под рукой не оказалось резонатора на требуемую частоту 14,7456 МГц. Взамен установлен резонатор со старой материнской платы на частоту 14,3181 МГц.

Сбоев в работе программатора не наблюдалось. После монтажа программатора необходимо запрограммировать микроконтроллер.

При этом должны быть запрограммированы (т.е. Установлены = '0') следующие фьюзы ( ATmega8, 14.7456 МГц). SUT1 = 0 BOOTSZ1 = 0 BOOTSZ0 = 0 CKOPT = 0 SPIEN = 0 Все остальные фьюзы должны быть незапрограммированные, т.е. Установлены = '1'. Как пра­вило, установка флажка напротив названия фьюза в программе программатора, соответствует програм­мированию соответствующего фьюза, однако бывают исключения. Способы программирования МК с использованием порта и преобразователя даны в конце статьи. После установки запрограммированного МК в программатор подключаем преобразователь USB- COM к компьютеру.

В диспетчере устройств операционной системы узнаём номер появивше­гося виртуального порта. Запускаем программу HyperTerminal. Запуск либо из главного меню Пуск Программы Стандартные Связь HyperTerminal (C: ProgramFiles Windows NT hypertrm.exe), либо через файл в архиве с документацией.

Основные настройки программы, кроме номера порта, сле­дующие: - параметры порта: - параметры терминала: - параметры ASCII: После выполнения настроек включаем питание программатора. При этом светодиод должен бы­стро миг­нуть шесть раз, затем светиться постоянно (горизонтальный масштаб 100 мс/дел): Далее в программе HyperTerminal два раза нажимаем ' Enter' на клавиатуре. Должно поя­виться сообщение: Если сообщение не появляется, нужно проверить осциллографом прохождение сиг­нала по линии PC TxD от преобразователя USB- COM к микроконтроллеру. Периодически нажимая клавишу ' Enter' на клавиатуре проверяем наличие и амплитуду сигнала. Верхняя эпюра соответствует сигналу на контакте 3 разъёма RS-232, нижняя - на выводе 2 микроконтроллера. Вертикальный масштаб: 5 В/дел, горизон­тальный масштаб: 20 мкс/дел: Если данные к микроконтроллеру поступают, проверяем 'ответ' микроконтроллера на получен­ную команду. На верхней эпюре показан сигнал на выводе 3 микроконтроллера после нажатия ' Enter', на нижней - сигнал на контакте 2 разъёма RS-232.

Вертикальный масштаб: 2 В/дел, горизонтальный мас­штаб: 20 мкс/дел: Амплитуды всех сигналов за исключением контакта 3 разъёма RS-232 должны быть близки к напря­жению питания программатора. Итак, если сообщение есть, вводим цифру '2', нажимаем ' Enter'. После этого появляется новая строка: Переключаем раскладку на английскую и вводим букву ' a', что соответствует десятичной цифре '10'. То, что сейчас было введено - версия программатора. Должна быть 2.10, иначе данный програм­матор нельзя будет использовать с некоторыми управляющими программами 'верхнего уровня'. Программатор может определять подключение к программируемому контроллеру. Реали­зо­вано это путём проверки 'подтяжки' линии Reset к Vcc (со стороны программируе­мого мик­роконтроллера).

Если подключение есть, то программатор включит светодиод HL1. Этот тест можно от­ключить или включить: '1', ' Enter' - тест включён; '0', ' Enter' - тест выключен. Сигнал 1 МГц включается / выключается в следующем 'пункте меню': '1', ' Enter' - сигнал присутствует, скорость программирования небольшая; '0', ' Enter' - сигнал вы­ключен, при этом скорость программирования максимальна. Конфигурирование программа­тора завершено: Закрываем программу HyperTerminal.

После этого пробуем запрограммировать какой-либо мик­роконтроллер. Для работы с программатором можно использовать программу A VRD ude (см. Эта программа консольная, управляется из командной строки.

Для упрощения использования имеется надстройка A VRDude Gui, внешний вид которой показан на рисунке: Скорость работы программатора можно косвенно оценить по следующему: при от­ключенном сигнале 1 МГц программирование микроконтроллера ATmega16 занимает 4 секунды (размер прошивки 8 кБ, т.е. Половина всей памяти данного МК). LPT порт Самый простой способ разово запрограммировать МК - воспользоваться компьютером с LPT пор­том и какой-либо программой-программатором. Микроконтроллер нужно подключить компьютеру в соответствии со схемой: Питание микроконтроллера можно взять от блока питания компьютера (красный провод в любом разъёме). Для программирования воспользуемся простой бесплатной программой (см. В архиве с программой есть справка.

Как любую техническую документацию её настоя­тельно рекомендуется прочитать, чтобы не задавать бестолковых вопросов. Основные сведения, необходимые для работы: - при запуске программа автоматически определяет тип микроконтроллера, если, конечно, исправна и работает аппаратная часть. Загрузив в программу файл прошивки и отказавшись от загрузки файла EEPROM, получим следующую картину: Предварительно очистив память микроконтроллера через кнопку ' Erase', жмём на кнопку ' Prog' - запись выбранного файла программы в память микроконтроллера. Успешная запись программы завер­шается без сообщений; - нажав кнопку ' FUSE', попадаем в окно настойки, где необходимо выста­вить требуемые для данной прошивки: Как видно из рисунка, эта программа из ряда 'исключений', т.е. Запрограммированному фьюзу соот­ветствует снятый флажок.

Программа Для Рисования

Для записи фьюзов нажимаем подряд три кнопки ' Write'. Всё, кон­троллер запрограм­миро­ван; - назначение сигналов SCK, MOSI, MISO, RESET на LPT порт задаётся через кнопку ' LPT pins'. Настройки должны соответствовать приведённой соединения LPT и МК: Этим окном следует воспользоваться при первом запуске программы, до подключения МК, а также в случае, когда нужные выводы порта сожжены и не действуют. USB-COM преобразователь МК можно запрограммировать при отсутствии портов LPT и COМ с помощью преобразователя интерфейса и управляющей программы. Особенности способа: - очень низкая скорость записи-чтения, около 4 байт в секунду; - неудачная схема адаптера и логика работы управляющей программы приведут к ошибкам записи-чтения даже на таких мизерных скоростях.

Наилучшие результаты показал следующий вариант адаптера: Диоды VD1. VD3 можно использовать любые с малым временем восстановления. Предельная простота схемы позволяет обойтись без печатной платы. Для разового исполь­зова­ния достаточно навесного монтажа. Автор смонтировал все элементы между двух разъёмов DB-9: После сборки желательно проверить осциллографом амплитуду сигналов во время чтения. При первом включении микроконтроллер лучше вынуть из панельки. Проверка выполняется совместно с программой A VRD ude (см.

Программа Для Фотошопа

Периодически нажимая любую кнопку чтения фьюзов ' Read', наблюдаем за следующими сигналами: - SCK - строго периодический, после нажатия кнопки действует около 10 секунд; - MOSI - непериодический, после нажатия кнопки действует около 10 секунд; - RESET - единичное кратковременное изменение уровня после нажатия ' Read'; Сигнал SCK должен быть близок к меандру с частотой 100.150 Гц и амплитудой 3,5.4,5 В. Сигналы MOSI и RESET имеют аналогичную амплитуду.

Если уровень всех сигналов отличается от указанного, следует подкорректировать значения резисторов R5. Нелишним будет проверить и напряжение питания на указанных в схеме выводах МК. Если всё в порядке, нужно вставить микроконтроллер и проверить сигнал MISO на выводе 8 USB- COM преобразователя, естественно, после нажатия кнопки ' Read'. Далее пробуем записать в МК какую-либо программу.

Поскольку скорость записи крайне мала, то для экономии времени следует проверять адаптер на небольших файлах прошивок с обязательной верификацией записанной программы. После успешного тестирования верификацию можно запретить. Совместно с адаптером используется A VRD ude с графической надстройкой A VRDude Gui: Основные замечания: - в списке программаторов отсутствует требуемый - ' ponyser'.

Поэтому название придётся на­брать вручную, после запуска программы Avrdudegui.exe; - первичную проверку работоспособности адаптера и МК следует выполнять путём чтения фьюзов, через нажатие кно­пок ' Read'. Если чтения не происходит, нужно тщательно проверить монтаж, оценить наличие и ам­плитуду всех сигналов, уточнить номер виртуального COM порта, заменить МК; - запись файла Atmega814745600.hex занимает около 25 минут. Столько же займёт после­дующая верификация, если её не отключить перед программированием; - на рисунке отмечены требуемые. Автор: Олег Иванов.

Программа Для Установки Драйверов

Для того, что-бы запрограммировать микроконтроллер нужен программатор, конечно можно воспользоваться и простейшим программатором, но лучше все же собрать качественный. Валялась у меня долгое время микросхема FT232RL и было решего его использовать для сборки нового программатора.Описанные ниже программатор является функциональным аналогом (только программирования) фирменного программатора ATSTK500 для внутрисхемного программирования микроконтроллеров AVR фирмы ATMEL с протоколом STK500 v.2. Список электронных компонентов необходимых для сборки данного программатора: BQ1 - HC-49/U 14,318318 MHz С1, С2, С3, С5, С8, С9 - С0805 0,1uF C4 - TANTAL тип D 4,7-47 uF C6, C7 - C0805 12-22pF DD1 - FT232RL DD2 - ATMEGA8, 48, 88, 168 TQFP32 HL1 - LED0805 Цвет любой L1 - Ферритовая бусина 10uH, 0,5A R1 - R0805 10k R2 - R0805 1k R3, R4, R7 - R0805 100 R5, R6 - R0805 220 R8 - R0805 220k R9 - R0805 100k ATMEGA8, 47k остальные X1 - USBB X5 - 1MHz Выход частоты 1МГц X6 - GND 'Земля” X7 - IDC10 Разъем ISP. Получился такой вариант ПП: Плату изготовил методом ЛУТ, как видите, все дорожки на месте. Все же я упустил один момент, а именно - забыл зазеркалить USB разъем на плате, поэтому мне при пайке разъем пришлось перевернуть и удлинить вывода перемычками, на нижних фотографиях это хорошо видно. USB разем я использовал для SMD варианта, если использовать другой разъем, то нужно просто высверлить отверстия на плате и вставить его с другой стороны. Ниже в архиве есть варианты прошивок для разных микроконтроллеров с разными частотами кварца, очень важно ставить нужный кварц, иначе программатор не заработает.

Для своего программатора я использовал микроконтроллер ATmega8.