USBASP программатор на микроконтроллере ATMEGA 8

Виды, типы и архитектура программаторов. Схема, драйвера и таблица радиоэлементов для изготовления универсального USBASP программатора. Совместимые и русифицированные программы под Windows для управления AVR микроконтроллерами, подключение к компьютеру.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 10.06.2021
Размер файла 2,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://allbest.ru

Государственное бюджетное профессиональное образовательное учреждение

«Западнодвинский технологический колледж им. И. А. Ковалева»

Курсовая работа

Тема: «USBASP программатор на микроконтроллере ATMEGA 8 »

Дисциплина: «Микропроцессорные системы»

Выполнил: Болбуров Тимурлан

Специальность: «Компьютерные системы и комплексы»

Форма обучения очная

Преподаватель: Башкиров Игорь Александрович

2021г.

Содержание

Введение

Глава 1. Основные понятие «программаторы»

1.1 Программаторы. Виды и типы программаторов

1.2 USBASP программатор AVR микроконтроллеры

Глава 2. Сборка USBASP программатора

2.1 Сборка, схема, драйвера и таблица радиоэлементов

2.2 Программы для управление программатором

Заключение

Список использованной литературы

Приложения

Введение

В настоящее время жизнь любого человека невозможно представить без электронных устройств. Они используются практически повсюду: стиральная машинка, микроволновая печь все они работают по заданной программе, вшитой в микроконтроллер с помощи программатора. Производители изготавливают различные программаторы практически все они унарные. Согласитесь, при работе с семейством микроконтроллеров AVR считывающих более 300 видов контроллеров, приобрести программатор для каждого достаточно проблематично. Актуальность работы обусловлено изготовлением универсального программатора для микроконтроллеров AVR

Цель - проектирование и разработка USBASP программатора на микроконтроллере Atmega8.

Задачи курсовой работы: изучение литературы на выбранную тематику; разработка принципиальной схемы устройства; разработка электрической схемы; сборка, тестирование, отладка устройства.

Объект курсовой работы: USBASP программатор.

Предмет - возможность самостоятельного изготовление программатора с возможностью подключение по USB к компьютеру.

Требование к программатору:

* Поддержка всех AVR микроконтроллеров;

* Совместимые и русифицированные программы для Windows;

* Подключение к компьютеру через современные порты;

Проект имеет законченный вид, что даёт возможность использовать в качестве инструкции по сборке USBASP программатора.

Проект может быть реализован при бюджете от 600 рублей.

Глава 1. основные понятие «программаторы»

1.1 Программаторы. Виды и типы программаторов

Программатором называется аппаратно-программное устройство, служащее, чтобы считывать и записывать информацию на запоминающее устройства рисунок 1.

Рисунок 1 Универсальный программатор

Если радиолюбителю необходимо лишь однажды запрограммировать микроконтроллер, есть возможность применить стандартный программатор, подключаемый к последовательному или же параллельному порту. Благодаря стандартному программатору имеется возможность грузить программы формата hex в большинство микроконтроллеров AVR, уменьшая затраченное время на это. Также при применении программатора, работающего внутрисхемно отпадает необходимость извлекать микроконтроллер из устройства.

Присоединение программатора к персональному компьютеру (далее по тесту ПК) происходит при помощи специализированного программного обеспечения. Оно передает прошивку с компа на программатор, а тот в свою очередь лишь записывает ее в память микросхемы. Присоединить программаторы можно различными способами. Нынешние программаторы присоединяются к компу, в основном, при помощи USB порта.

Классификация программаторов. Данные устройства можно классифицировать по различным характеристикам: По типу микросхем, используемых в них, по присоединению микросхемы, по тому каким способом происходить присоединения к компьютеру, также существует классификация по сложности программаторов.

Давайте рассмотрим некоторые классификации

По присоединению микросхемы:

· Параллельный.

· Внутрисхемный.

В программаторах использующих параллельное присоединения микросхем имеется разъем в который и присоединяется микросхема. Внутрисхемные же годятся лишь для микросхем, поддерживающих внутрисхемный тип программирования, но они благодаря им можно прошивать микросхему, не извлекая её из устройства.

Основные функциональные возможности современных программаторов:

· тестовая колодка с нулевым усилием (ZIF socket), обеспечивающая многократный надежный контакт с программируемой микросхемой в корпусе DIP

· для программирования микросхем с корпусами, отличными от DIP, программаторы снабжаются специальными адаптерами под соответствующий тип корпуса

· возможность обновления программного обеспечения для расширения количества программируемых микросхем

· программная установка параметров программирования: Vccp, Vvpp

· самотестирование при включении питания

· тестирование правильности установки микросхем

· проверка качества контакта по всем выводам программируемой микросхемы

· защита всех выводов микросхемы от перенапряжения и статического электричества

· возможность работы автономно от компьютера

Области применения программаторов:

· разработка и производство электронной аппаратуры

· ремонт и модернизация электронной аппаратуры

Что программируют ремонтники?

Микросхемы памяти кассовых аппаратов, телевизоров, видеомагнитофонов, спутниковых ресиверов, мобильных телефонов и другой бытовой техники…

По присоединению к компьютеру. Изначально программаторы были автономными -- для того чтобы набрать прошивку имелась клавиатура, а также кросс-панель. С появлением и набиранием популярностью компьютеров данные программаторы были вытеснены подключаемыми к компу.

· COM порт.

· LPT порт.

· Специальная интерфейсная карта.

· USB.

· Сеть интернет.

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

Виды и типы программаторов. Существует достаточно много разнообразных конструкций программаторов для AVR микроконтроллеров, которые подключаются к разным портам компьютера. Наиболее надежный и удобный вариант - это программатор что подключается к USB-порту, поскольку в новых настольных компьютерах и ноутбуках уже не устанавливают COM и LPT порты.

Программатор USBASP. Данный программатор безопасен в использовании, имеет небольшие размеры и поддерживается большинством программ для прошивки микроконтроллеров AVR рисунок 2. USBASP работает под операционными системами Linux, Mac OS X и Windows.

Рисунок 2 USBASP - программатор со шлейфом для внутрисхемного программирования AVR микроконтроллеров фирмы ATMEL

Что делать если нет возможности купить программатор USBASP? - можно программировать микроконтроллеры используя несложные самодельные программаторы что подключаются к COM или LPT порту, но лучше самому изготовить USBASP при этом один раз запрограммировав микросхему-микроконтроллер для него простым самодельным программатором через COM или LPT порт.

Программатор с использованием COM-порта. Этот программатор еще называют "программатором Громова", в честь того кто придумал эту схему, создателя программы Algorithm Builder (графическая среда для программирования AVR под Windows используя алгоритмический язык) - Г.Л. Громова. Данный программатор позволяет программировать AVR чипы используя COM порт компьютера - интерфейс RS232. Для сборки такого программатора потребуется минимум деталей - 3 диода, 7 резисторов, разъем DB-9 или DB-25(в зависимости от того какой ответный разъем установлен у вас в компьютере) и коннектор ISP для подключения к микроконтроллеру (или же просто несколько проводников к чипу). Диоды в схеме можно использовать любые маломощные рисунок 3.

Рисунок 3 Принципиальная схема программатора AVR микроконтроллеров через COM порт компьютера

Для полноты информации ниже приведу распиновку порта RS-232 DB-9

Рисунок 4 RS232 - COM Port, DB-9 расположение выводов

Программатор с использованием LPT-порта. LPT порт компьютера предназначен для подключения локального принтера (Local Printer Port), но тем не менее его часто используют для подключения различных устройств и самоделок. В данном случаем мы можем его использовать для программирования AVR микроконтроллеров, собрав для данной цели очень простую схему что приведена на рисунке 5.

Рисунок 5 Принципиальная схема программатора для AVR микроконтроллеров с использованием LPT порта компьютера

Схема еще проще чем в варианте с программатором Громова, здесь нам нужны всего лишь 4 маломощных резистора и разъем (папа, со штырьками) для подключения к LPT порту компьютера, но автор рассмотрит более подробно первый вариант, программатор USBASP.

1.2 USBASP программатор и AVR микроконтроллеры

AVR микроконтроллеры. Семейство микроконтроллеров AVR было создано в 1996 г. корпорацией Atmel, а разработчиками архитектуры микроконтроллеров являются Альф Боген (Alf-Egil Bogen) и Вегард Воллен (Vegard Wollan). программатор драйвер микроконтроллер

Отсюда и происходит название семейства - от первых букв имен разработчиков - A и V, и первой буквы аббревиатуры RISC - типа архитектуры, на которой базируется архитектура микроконтроллера.

Также эту аббревиатуру часто расшифровывают как Advanced Virtual RISC (модернизированный эффективный RISC).

Первым микроконтроллером в серии был AT90S8515, однако первым микроконтроллером, выпущенным на рынок в 1997, стал AT90S1200.

На сегодняшний день доступны три линейки микроконтроллеров: TinyAVR, характеризующийся небольшим объемом памяти и возможностей; MegaAVR - наиболее распространенная линейка, имеющая большой объем встроенной памяти, множество дополнительных устройств и предназначенная для задач средней и высокой сложности; XmegaAVR - используется в сложных коммерческих задачах, требующих большого объема памяти и высокой скорости.

Большинство контроллеров AVR являются 8-разрядными, хотя сейчас существует и 32-разрядная разновидность контроллеров AVR32.

Архитектура его основана на регистрах. То есть процессор контроллера берет данные из двух входных регистров, помещает их в арифметико-логическое устройство (АЛУ), которое производит операцию над данными и передает в произвольный регистр. АЛУ может выполнять как арифметические, так и логические действия над операндами.

Также АЛУ может выполнять и действия с одним операндом (регистром). При этом контроллер не имеет регистра-аккумулятора, так как для операций могут использоваться любые регистры, и результат операции также может быть помещен в любой регистр.

Помимо флэш-памяти и процессора контроллер имеет такие устройства, как порты ввода и вывода АЦП, таймеры, коммуникационные интерфейсы - I2C, SPI и последовательный порт UART. Все эти устройства могут контролироваться программно.

Программа микроконтроллера может храниться во встроенной памяти контроллера и представляет собой серию команд, которые выбирают данные и осуществляют с ними операции.

В большинстве случаев это считывание входящих данных, проверка их состояния и вывода соответствующих выходных данных. Иногда может потребоваться изменение данных и совершение с ними некоторых операций, а также передача данных какому -либо внешнему устройству или последовательному порту.

Для таких задач используются наборы двоичных команд, каждая из которых имеет аналог на более доступном человеческому восприятию языке ассемблера.

Поэтому наиболее распространенным способом написания программ для контроллера является написание их на языке ассемблера.

USBASP программатор. Существует много версий USBASP программатора, но все они основаны на главной схеме, автором которой является Thomas Fischl. Прошивка микроконтроллера программатора также является его авторством.

Программатор состоит из небольшого числа деталей. Мозгом программатора является микроконтроллер Atmega8, который имеет всего 8 кб флеш памяти и 1 кб ОЗУ(SRAM).

Вроде и слабенький микроконтроллер по современным меркам, но столько всего можно на нем сделать. Из-за особенностей работы программного USB м/к работает на частоте 12мгц. Соответственно, при написании своей прошивки необходимо учитывать это.

Рисунок 6 USBASP программатор

USBASP имеет 10 контактный разъем, на который выведены 6 выводов микроконтроллера: PB5 (SCK), PB4 (MISO), PB3 (MOSI, PWM), PB2(PWM), PD0 (RXD), PD1 (TXD).

Плата имеет два встроенных светодиода на выводах PC0 и PC1 как на рисунке. Выводы м/к PB0,PB1 и PD2 используются для программного USB,PC2 выведен на перемычку JP3.

Технические характеристики:

· Поддерживаемые ОС: Windows, MacOS, Linux

· Процессор: Atmega8

· Интерфейс подключения к ПК: USB

· Интерфейс программирования: ISP (внутрисхемное)

· Напряжение программирования: 5В или 3.3В (в зависимости от положения перемычки JP2)

· Частота программирования: 375кГц (по умолчанию) и 8кГц (при замкнутой перемычке JP3)

· Поддерживаемые контроллеры: все AVR с интерфейсом SPI (ниже можете посмотреть список)

USBASP программатор предназначен для программирование AVR микроконтроллеров. А где же они используются?

Миниатюрные микроконтроллеры AVR семейства "tiny" используются для построения следующих устройств:

· электронные игрушки;

· различные датчики в автомобильной промышленности;

· детекторы дыма и пламени, датчики температур, измерители разных величин;

· недорогие зарядные устройства, индикаторы напряжения и тока;

· пульты управления для разнообразной бытовой и промышленной техники;

Чипы семейства "mega", "xmega" и 32-bit AVR применяются в более сложных устройствах:

· робототехника;

· спутниковые навигационные системы;

· функциональные разрядно-зарядные устройства с программированием;

· сложные дистанционные системы управления;

· сетевые устройства;

· быстродействующие системы для передачи и обработки данных;

· сложная бытовая техника;

· устройства ввода и отображения информации с тач-скринами(Touch-screen);

· другие многофункциональные устройства.

Также на микроконтроллерах AVR сейчас работает Arduino - электронный конструктор, платформа для быстрой и удобной разработки различных устройств автоматизации и управления. Данное решение состоит из комплекса программ и аппаратных составляющих - печатных плат с компонентами, центральную и главную роль в которых играет плата с микроконтроллером AVR - ATmega328, ATmega168, ATmega2560, ATmega32U4, ATTiny85 (в старых моделях - ATmega8, ATmega1280 и другие).

Список поддерживаемых AVR микроконтроллеров:

· ATtiny11, ATtiny12, ATtiny13, ATtiny15, ATtiny22, ATtiny2313, ATtiny24, ATtiny25, ATtiny26, ATtiny261, ATtiny28, ATtiny44, ATtiny45, ATtiny461, ATtiny84, ATtiny85, ATtiny861

· AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, T90S4433, AT90S4434, AT90S8515, AT90S8535

· ATmega8, ATmega48, ATmega88, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega165, ATmega168,ATmega169, ATmega32, ATmega323,ATmega324, ATmega325, ATmega3250, ATmega329, ATmega64, ATmega640, ATmega644, ATmega645, ATmega6450, ATmega649, ATmega6490, ATmega128, ATmega1280, ATmega1281, ATmega2560, ATmega2561, ATmega103, ATmega406, ATmega8515, ATmega8535

· AT90CAN32, AT90CAN64, AT90CAN128

· AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B

· AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647

· AT89S51, AT89S52

· AT86RF401.

Микроконтроллер Atmega8 довольно часто используется в радиолюбительских схемах, сделан он с использованием технологии CMOS на AVR RISC архитектуре. За один такт выполняется одна инструкция, на микроконтроллера ATmega8 достигается производительность в 1MIPS на МГц, и тем самым достигается наиболее оптимальная производительность и потребляемая энергия.

Технические характеристики:

· Программная память равна 8 кБ, цикл составляет 10000 раз;

· объем флеш памяти 512 байт который хранит переменные (цикл перезаписи 100 000);

· Оперативная память (ОЗУ) 1кб;

· 32 регистра общего назначения;

· Два 8-ми разрядных таймера/счетчика с раздельным прескалером, режим сравнения, режим захвата;

· таймер реального времени с независимым генератором;

· три канала ШИМ;

· шесть каналов АЦП, канал 10-ти разрядный;

· последовательный интерфейс двухпроводной;

· USART;

· SPI;

· Сторожевой таймер с независимым генератором;

· аналоговый компаратор;

· внутренний RC генератор;

· возможность обработки внешних и внутренних прерываний;

· режимы с пониженным энергопотреблением: Idle,Power-save,Power-down,Standby,ADC Noise Reduction;

· напряжение от 4.5 В до 5.5 В;

· тактовая частота от 0-16 МГц.

Расположение выводов микроконтроллера Atmega8

Рисунок 7 Виды корпусов и расположение выводов

Порты ввода/вывода. Порты микроконтроллера сгруппированы в 3 группы:

Порт D

· PD0 - цифровой вход/выход, RxD - вход приемника USART;

· PD1 - цифровой вход/выход, TxD - выход передатчика USART;

· PD2 - цифровой вход/выход, INT0 - внешнее прерывание нулевого канала;

· PD3 - цифровой вход/выход, INT1 - внешнее прерывание первого канала;

· PD4 - цифровой вход/выход, XCK - внешний такт для USART, T0 - внешний вход Timer0;

· PD5 - цифровой вход/выход, T1 - внешний вход Timer1;

· PD6 - цифровой вход/выход, AIN0 - вход аналогового компаратора канал 0;

· PD7 - цифровой вход/выход, AIN1 - вход аналогового компаратор канал 1.

Порт C

· PС0 - цифровой вход/выход, ADC0 - аналоговый вход канал 0;

· PС1 - цифровой вход/выход, ADC1 - аналоговый вход канал 1;

· PС2 - цифровой вход/выход, ADC2 - аналоговый вход канал 2;

· PС3 - цифровой вход/выход, ADC3- аналоговый вход канал 3;

· PС4 - цифровой вход/выход, ADC4- аналоговый вход канал 3;

· PC5 - цифровой вход/выход, SDA- двух проводной последовательный интерфейс (канал данных);

· PС6 - цифровой вход/выход, RESET- внешний сброс.

Порт B

· PB0 - цифровой вход/выход, ICP1 - захват входа 1;

· PB1 - цифровой вход/выход, OC1A - выход сравнения/ШИМ 1A;

· PB2 - цифровой вход/выход, OC1B - выход сравнения/ШИМ 1B;

· PB3 - цифровой вход/выход, OC2 - вход сравнения/ШИМ2, MOSI

· PB4 - цифровой вход/выход, MISO

· PB5 - цифровой вход/выход, SCK - тактовый вход;

· PB6 - цифровой вход/выход, XTAL1- тактовый вход для резонатора;

· PB7 - цифровой вход/выход, XTAL2- тактовый вход для резонатора, TOSC2 - тактовый вход в случае работы от встроенного резонатора.

Выводы для питания микроконтроллера (рисунок 8).

· VCC - вход напряжение питания;

· GND - это общий "минусовой" вывод, земля;

· AVcc - вход напряжения питания для модуля АЦП;

· ARef - вход опорного напряжение для АЦП.

Рисунок 8 Структурная схема МК ATmega8

Рисунок 9 Распиновка разъемов USBASP

Подключение USBASP. Распиновка устройства. Микросхемы Atmel с режимом последовательного программирования (ISP), применяемые в программаторе, могут иметь один из двух стандартных разъёмов: 10-типиновый или 6-типиновый. Ниже приводим обозначение контактов с расшифровкой.

1 - MOSI. Предназначен для вывода данных в режиме последовательного программирования.

2 -- VCC +5V. Подаёт напряжение +5В на внешнее устройство через USB-порт. При этом наибольшее значение тока не должно превышать 200мА во избежание выхода из строя USB-контроллера.

3 - NC. Контакт не используется.

4 - GND. Общий провод.

5 - RESET. Подключён к выводу RESET МК.

6 -- GND. Общий провод.

7 - SCK. Используется для синхронизации данных.

8 -- GND. Общий провод.

9 - MISO. Предназначен для ввода данных в режиме последовательного программирования.

10 GND. Общий провод.

Отличие 6-типинового варианта заключается в отсутствии одного не задействованного контакта и, объединённых в один вывод, контактов GND.

В ходе написания первой главы был проведён анализ литературы на выбранную тему. Рассмотрены факты о создании программатора, виды программаторов, а также подробные описание AVR микроконтроллеров.

Глава 2. Сборка USBASP программатора

2.1 Сборка, схема, драйвера и таблица радиоэлементов

Перед началом работы, стоит ознакомиться с последовательностью всех выполняемых действий, а именно:

1. Список радиоэлементов

2. Схема и создание рисунка печатной платы в Sprint layout

3. Перенос рисунка печатной платы на фольгированный стеклотекстолит

4. Травление печатной платы ( в хлорной железе)

5. Сверление отверстий

6. Монтаж элементов (пайка)

7. Программирование Atmaga8 программатора

8. Подключение программатора к компьютеру

9. Установка драйверов - Windows XP, Windows 7

10. Выбор программы с поддержкой USBASP

Список элементов, используемых в USBASP программаторе:

Радиодеталь

Модель

Количество

Основная характеристика

Микроконтроллер

Atmega8

1

Выводной резистор

маломощный (0,25 Ватт)

2

68 Ом

Выводной резистор

маломощный (0,25 Ватт)

1

270 Ом

Выводной резистор

маломощный (0,25 Ватт)

2

390 Ом

Выводной резистор

маломощный (0,25 Ватт)

2

1.5 кОм

Выводной резистор

маломощный (0,25Ватт)

2

10 кОм

Конденсатор

керамический

2

18 пФ

Конденсатор

керамический

1

100 нФ

Конденсатор

электролитический

1

10 мкФ 16 В

Светодиод

красный, зеленый

1

Штыревая вилка

PLD или PLS

1

Кварцевый резонатор

HC49-S

1

16 Мц

USB разъем

b

1

Разъем ISP

10-штырей

1

Стабилитрон

(1N4729A)

2

3.6 вольт

Рисунок 10 Принципиальная схема USBASP

Органы управления на плате: На плате имеются три перемычки, задающие разные режимы работы программатора:

JP1 -- замыкается в случае обновления прошивки самого программатора

JP2 -- тройная перемычка, здесь выбирается, какое напряжение будет подаваться на прошиваемый микроконтроллер, либо 5В (левое положение) и 3.3В (правое положение)

JP3 -- если её замкнуть, то программирование контроллера будет происходить с пониженной частотой.

Рисунок 11 Печатная плата в Sprint layout

Перенос рисунка печатной платы USBASP программатора на стеклотекстолит выполнен с помощью метода ЛУТ (лазерно-утюжной технологии) рисунок 11.

Рисунок в масштабе 1:1 печатается на глянцевой бумаге, затем он накладывается на очищенную и обезжиренную медную сторону стеклотекстолита и фиксируется с помощью бумажного скотча. Далее бумажная сторона тщательно разглаживается утюгом на 3-ке. После все это дело вымачивается в воде и аккуратно очищается от бумаги.

Рисунок 12 Плата после ЛУТ

Следующий этап - вытравливание платы в растворе хлорного железа как показано на рисунке 13. Во время травления желательно поддерживать температуру раствора не ниже 40 C, поэтому банку с раствором погружаем в теплую или горячую воду:

Рисунок 13 Процесс травление хлорной железой

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

Остается теперь только просверлить отверстия. После завершения процесса изготовления платы можно приступать к пайке элементов USBASP программатора.

Рисунок 14 Готовая печатная плата без радиоэлементов

Итак, печатная плата готова к распайке элементов рисунок 14. Смотрим расположение элементов и соответствие отверстий по схеме в Sprint Layout, аккуратно формуем выводы элементов с помощью пинцета или круглогубцев и также аккуратно их впаиваем. не забываем при этом про "перемычки"!

Рисунок 15 Пайка радиоэлементов

После окончании пайки проверяем аккуратность монтажа и пайки. И если нет короткого замыкания между выводами и дорожками печатной платы -- отмываем плату от флюса с помощью спирта и кисти.

Рисунок 16 Полностью готовый USBASP программатор

Программатор полностью готов осталось только запрограммировать сам микроконтроллер. На время программирования включите режим SELF (замкнуть перемычку JP1). Благодаря этому появляется возможность запрограммировать Atmega8. После завершения программирования, нужно разомкнуть перемычку JP1 рисунок 16.

Надо обратить внимание, чтобы перед программированием Atmega8 необходимо выставить фьюзы которые имеют следующие значения:

· # для Atmega8: HFUSE=0xC9 LFUSE=0xEF

· # для Atmega48: HFUSE=0xDD LFUSE=0xFF

Рисунок 17 Редактор битов

В случае успешного программирования, подключаем программатор к USB разъему компьютера, при этом должен загореться красный светодиод, а компьютер должен оповестить об обнаружении нового оборудования.

Инструкция по установке драйвера для USBASP программатора

В глобальной сети существует достаточное количество ресурсов, которые предлагают загрузить универсальный USBASP-драйвер с поддержкой операционных систем Windows 10, Windows 8.1, Windows 7, Windows XP.

Сложнее будет найти USBASP-драйвер для Windows 10 x64 и Windows 8 x64. Однако существуют и такие англоязычные сайты. Скачать USBASP-драйвер для Windows XP, 7, 8 - не проблема.

Поэтому перед началом пользования устройством следует скачать драйвер для USBASP программатора в соответствии с проинсталлированной операционной системой.

Инструкция на примере ОС Windows XP:

1. Устройство при подключении к ПК попросит установить драйвер.

Рисунок18 Окно мастера нового оборудования

2. Потом надо выбрать папку со скаченными и разархивированными двайверами как на рисунке 19.

Рисунок 19 выбор папки со скачанными файлами

3. Драйвера успешно установятся, если схема собрана верно и МК тоже прошит верно.

Рисунок 20 Успешная установка драйвера

4. В диспетчере устройств определится программатор как: LibUSB-Win32 Device.

Рисунок 21 Отображение устройство в Диспетчере устройств

Проверка работоспособности программатора: В качестве программы автор использовал avrdude в оболочке Sinaprog1.5.5.10.

USBASP_AVRDUDE_PROG для проверки доступа к Attiny13A. Контроллер опознан, можно заливать прошивку в Attiny13A.

Рисунок 22 Оболочка Sinaprog1.5.5.10 прошивка микроконтроллера Attiny13A

2.2 Программы для управление программатором

1. Khazama AVR Programmer. Khazama работает со всеми ходовыми микроконтроллерами AVR, позволяет программировать flash и eeprom, прочитать содержимое памяти flash и eeprom, стирать чип, а также менять конфигурацию фьюз-битов (Fuses and Lock Bits). Всё необходимое для прошивки микроконтроллеров AVR. Настройка фьюзов осуществляется выбором источника тактирования из выпадающего списка, таким образом, вероятность «убить» контроллер по ошибке резко снижается. Фьюзы можно менять и расстановкой галок в нижнем поле, при этом нельзя расставить галки на несуществующую конфигурацию, что делает конфигурацию фьюзов более безопасной. И это тоже большой плюс.

Запись фьюзов (Fuses). Запись фьюзов в память микроконтроллера осуществляется при нажатии кнопки Write All рисунок 23. Для сохранения текущей конфигурации есть кнопка Save, а Load возвращает сохраненную. Кнопка Default предназначена для записи стандартной конфигурации фьюзов, такой, с какой микроконтроллеры идут с завода, обычно это 1МГц от внутреннего RC.

В общем, за все время пользования этим программатором, он показал себя с наилучшей стороны в плане стабильности, безопасности и скорости работы. Рекомендую пользоваться всем, кто хочет программировать AVR микроконтроллеров.

Рисунок 23 Пример записи фьюзов

[eXtreme Burner]. При очередном поиске альтернативы утилиты для управления USBasp оказалось, что для этого есть замечательная утилита с полноценным GUI-интерфейсом: eXtreme Burner [2, 3, 4]. С этой программой работа с USBasp значительно упростилась.

Рисунок 24 Утилита eXtreme Burner

Упростилась настройка источников тактирования. Семейство микроконтроллеров AVR поддерживает несколько способов генерации тактовых сигналов, которые удовлетворяют разным вариантам приложений. Например, можно использовать дешевый RC Oscillator (встроенный в микроконтроллер генератор, для которого не нужен кварц), или внешний кварцевый резонатор, позволяющий получать точную частоту тактирования и повышенную скорость работы. Теперь соответствующие опции можно выбирать из удобного выпадающего меню.

Рисунок 25 Clock configuration

Burn-o-Mat. Графическая оболочка для популярной программы AVRDUDE, использующейся при прошивке микроконтроллеров компании Atmel рисунок 26.

Рисунок 26 Утилита Burn-o-Mat

Программа AVRDUDE имеет консольный интерфейс, запускается из командной строки и настраивается с помощью специальных «ключей». Все это довольно неудобно и сложно.

С целью упростить работу с AVRDUDE были разработаны различные графические пользовательские интерфейсы, одной из которых и является программа AVR8 Burn-O-Mat.

Основные преимущества этого ПО - широкий функционал и расширяемость. Поддерживается свыше 30 микроконтроллеров AVR семейств ATmega и ATtiny. В случае отсутствия необходимого контроллера пользователь может самостоятельно добавить его, открыв конфигурационный файл «AVR8_Burn_O_Mat_Config.xml» и внеся необходимые изменения.

Из основных недостатков графической оболочки AVR8 Burn-O-Mat можно отметить отсутствие вывода на экран дампа памяти. Кроме того приложение требует настройки перед первым запуском. В частности нужно указать путь к месту размещения программы AVRDUDE и перезапустить приложение. Только после этого в выпадающем меню «Programmer» появится возможность выбирать тип схемы программатора.

Графический интерфейс AVR8 Burn-O-Mat представлен на английском языке, русификатора не имеется.

SinaProg. Графическая оболочка для программы AVRdude, включающая в себя простой и функциональный AVR fuse-калькулятор.

Мощнейшая консольная программа для прошивки микроконтроллерных устройств - AVRdude - в «чистом» виде является крайне неудобной, так как разработчикам необходимо постоянно прописывать довольно емкие строки-ключи для установки основных параметров (некоторые из которых, в частности fuse-биты, перед этим еще нужно рассчитать). Для решения этой проблемы была создана небольшая утилита SinaProg рисунок 27.

В отличие от аналогичного программного обеспечения SinaProg имеет поддержку огромного количества программаторов.

Рисунок 27 Графическая оболочка для программы AVRdude

Она работает одинаково хорошо и с мощными атмеловскими устройствами, и с простейшими аппаратами, состоящими всего из нескольких проводков. Любой поддерживаемый через AVRdude программатор, даже если его нет в списке доступных устройств SinaProg, легко может быть добавлен в базу и настроен. Интерфейс графической среды выглядит просто и удобно, нет ничего лишнего, все понятно и предельно ясно. Разработчику предлагается выбрать необходимый для прошивки hex-файл и указать нужную память - EEPROM или Flash. Для работы с памятью доступны операции: программирования, проверки (верификация содержимого памяти и hex-файла) и чтения. Помимо этого, присутствует поле выбора микроконтроллера из выпадающего списка, с которым будет работать программатор. Для контроля работоспособности линии «программатор-шлейф-микроконтроллер» можно запустить процесс проверки соответствия выбранного микрочипа, тому, что подсоединен в реальности. В отдельном окне предлагается установить тип программатора, порт к которому он подключен и скорость его работы. Индикатор состояния показывает прогресс выполнения операций с микроконтроллером. Для поиска ошибок присутствует возможность просмотреть логи системных сообщений.

В программе SinaProg присутствует целая секция, предназначенная для установки и конфигурации fuse-битов. Данные автоматически считываются с микроконтроллера. Утилита позволяет посмотреть: сигнатуру микропроцессора, калибрационные величины для генератора, fuse-биты, разделенные на четыре байта (High Fuse, Lock Bits, Low Fuse и Ext. Fuse). Кроме этого программа выдает удобные для анализа и редактирования выпадающие списки с подробным описанием fuse-битов - так называемый fuse-калькулятор. Запись fuse-битов возможна либо в виде значений всего байта (шестнадцатеричное число), либо при помощи fuse-калькулятора с выбором нужных режимов работы. При необходимости все описания fuse-битов можно легко русифицировать. Все предустановки описываются в простом формате в файле Fuse.txt. Также необходимо отметить, что fuse-биты в данной среде являются инверсными.

Программное обеспечение SinaProg является бесплатным и свободно распространяется. Данная утилита портативная, то есть работает с любого места без установки. Помимо собственных файлов она включает в себя программу AVRdude. SinaProg разработана неизвестной командой иранских программистов.

Программа SinaProg написана на английском языке. Русификатора к ней не требуется, любой человек, впервые запустивший данный софт, сразу разберется, что в ней к чему.

При выполнении практической работы описанной во второй главе, была выполнена сборка и отладка устройства, были показаны все необходимые инструкции для установки драйверов и программы для управление USBASP программатором.

Заключение

На основании проведённых исследований был разработан прибор для программирование AVR микроконтроллеров и микросхем памяти на микроконтроллере Atmega8.

При написания первой главы был проведён анализ литературы на выбранную тему. Рассмотрены факты о создании программатора, виды программаторов, а также подробные описание AVR микроконтроллеров.

При выполнении практической работы описанной во второй главе, была выполнена сборка и отладка устройства, были показаны все необходимые инструкции для установки драйверов и программы для управление USBASP программатором.

В ходе выполнение курсового проекта автор выполнил все требование.

Проект имеет законченный вид, что даёт возможность использовать в качестве инструкции по сборке USBASP программатора.

Задачи, поставленные при написании выполнены, цель достигнута.

Список использованной литературы

1. ГОСТ 2.105-95. Общие требования к текстовым документам.

2. Алексенко А.Г., Галицын А.А., Иванников А.Д. Проектирование радиоэлектронной аппаратуры на микропроцессорах: Программирование, типовые решения, методы отладки. - М.: Радио и связь, 1984

3. Алексенко А.Г., Шагурин И.И. Микросхемотехника. - М.: Радио и связь, 1990. - 465 с.

4. Белов А.Б. Конструирование устройств на микроконтроллерах / Наука и Техника, 2005. - 195 с.

5. Белов А.Б. Конструирование устройств на микроконтроллерах / Наука и Техника, 2005. - 165 с.

6. Бродин Б.В., Шагурин И.И. Микроконтроллеры: Справочник. - М.: ЭКОМ, 1999. - 295 с.

7. Вуд А. Микропроцессоры в вопросах и ответах. / Пер. с англ. под ред. Д.А. Поспелова. - М.: Энергоатомиздат. 1985. - 189 с.

8. Ильин В.А. Технология изготовления печатных плат. - Л.: Машиностроение, 1984.

9. Муренко Л.Л. Программаторы запоминающих и логических интегральных микросхем. - М.: Энергоатомиздат, 1988.

10. Программируемые логические ИМС на КМОП-структурах и их применение. / П.П. Мальцев, и др М.: Энергоатомиздат, 1998. - 158 с.

11. Предко М. Руководство по микроконтроллерам. Том 1. / Пер. с англ. под ред.И. И. Шагурина и С.Б. Лужанского - М.: Постмаркет, 2001. - 416 с.

12. Соловьев В.В., Васильев А.Г. Программируемые логические интегральные схемы и их применение. - Мн.: Беларуская наука, 1998. - 270 с.

13. Уильямс Г.Б. Отладка микропроцессорных систем: / Пер. с. англ. - М.: Энергоатомиздат, 1988. - 283с.

Приложения

3A 31 30 30 30 30 30 30 30 33 42 43 30 41 36 43 31 35 34 43 30 35 33 43 30 35 32 43 30 35 31 43 30 35 30 43 30 34 46 43 30 32 35 0D 0A 3A 31 30 30 30 31 30 30 30 34 45 43 30 34 44 43 30 34 43 43 30 34 42 43 30 34 41 43 30 34 39 43 30 34 38 43 30 34 37 43 30 38 43 0D 0A 3A 31 30 30 30 32 30 30 30 34 36 43 30 34 35 43 30 34 34 43 30 30 34 30 33 30 39 30 34 31 43 30 33 37 37 30 30 37 37 30 30 41 30 0D 0A 3A 31 30 30 30 33 30 30 30 37 37 30 30 32 45 30 30 36 36 30 30 36 39 30 30 37 33 30 30 36 33 30 30 36 38 30 30 36 43 30 30 41 32 0D 0A 3A 31 30 30 30 34 30 30 30 32 45 30 30 36 34 30 30 36 35 30 30 30 45 30 33 35 35 30 30 35 33 30 30 34 32 30 30 36 31 30 30 35 44 0D 0A 3A 31 30 30 30 35 30 30 30 37 33 30 30 37 30 30 30 31 32 30 31 31 30 30 31 46 46 30 30 30 30 30 38 43 30 31 36 44 43 30 35 44 42 0D 0A 3A 31 30 30 30 36 30 30 30 30 34 30 31 30 31 30 32 30 30 30 31 30 39 30 32 31 32 30 30 30 31 30 31 30 30 38 30 31 39 30 39 43 36 0D 0A 3A 31 30 30 30 37 30 30 30 30 34 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 31 32 34 31 46 42 45 43 46 45 35 44 34 45 30 30 32 0D 0A 3A 31 30 30 30 38 30 30 30 44 45 42 46 43 44 42 46 31 30 45 30 41 30 45 36 42 30 45 30 45 41 45 35 46 32 45 31 30 32 43 30 44 44 0D 0A 3A 31 30 30 30 39 30 30 30 30 35 39 30 30 44 39 32 41 32 33 36 42 31 30 37 44 39 46 37 31 30 45 30 41 32 45 36 42 30 45 30 43 34 0D 0A 3A 31 30 30 30 41 30 30 30 30 31 43 30 31 44 39 32 41 41 33 41 42 31 30 37 45 31 46 37 36 36 44 35 44 34 43 38 41 38 43 46 31 45 0D 0A 3A 31 30 30 30 42 30 30 30 38 35 42 37 38 33 36 30 38 35 42 46 38 42 42 37 38 30 36 34 38 42 42 46 30 38 39 35 31 46 39 33 31 45 0D 0A 3A 31 30 30 30 43 30 30 30 43 46 39 33 44 46 39 33 36 30 39 31 38 38 30 30 36 33 35 30 36 37 46 44 31 33 43 30 38 30 39 31 45 38 0D 0A 3A 31 30 30 30 44 30 30 30 38 35 30 30 43 43 45 30 44 30 45 30 43 38 31 42 44 31 30 39 43 34 35 37 44 46 34 46 38 30 39 31 32 38 0D 0A 3A 31 30 30 30 45 30 30 30 38 34 30 30 38 44 33 32 30 39 46 34 36 32 43 30 38 30 39 31 36 32 30 30 38 37 46 44 38 34 43 30 37 33 0D 0A 3A 31 30 30 30 46 30 30 30 31 30 39 32 38 38 30 30 38 30 39 31 36 30 30 30 38 34 46 46 34 41 43 30 36 30 39 31 36 31 30 30 38 36 0D 0A 3A 31 30 30 31 30 30 30 30 36 46 33 46 30 39 46 34 34 35 43 30 36 39 33 30 37 30 46 31 36 38 35 30 36 30 39 33 36 31 30 30 33 39 0D 0A 3A 31 30 30 31 31 30 30 30 38 30 39 31 37 38 30 30 39 38 45 38 38 39 32 37 38 30 39 33 37 38 30 30 36 38 45 30 38 30 39 31 34 32 0D 0A 3A 31 30 30 31 32 30 30 30 36 32 30 30 38 37 46 44 38 42 43 30 32 30 39 31 38 36 30 30 33 30 39 31 38 37 30 30 38 36 46 46 39 41 0D 0A 3A 31 30 30 31 33 30 30 30 36 44 43 30 41 39 45 37 42 30 45 30 38 30 45 30 39 30 45 30 46 39 30 31 45 38 30 46 46 39 31 46 39 39 0D 0A 3A 31 30 30 31 34 30 30 30 45 34 39 31 45 44 39 33 30 31 39 36 36 38 31 37 43 31 46 37 36 31 35 30 38 36 32 46 39 30 45 30 31 36 0D 0A 3A 31 30 30 31 35 30 30 30 36 46 35 46 30 31 39 36 38 32 30 46 39 33 31 46 39 30 39 33 38 37 30 30 38 30 39 33 38 36 30 30 42 34 0D 0A 3A 31 30 30 31 36 30 30 30 31 36 32 46 31 43 35 46 30 42 43 30 31 30 39 32 36 31 30 30 38 30 39 31 37 38 30 30 39 38 45 38 46 38 0D 0A 3A 31 30 30 31 37 30 30 30 38 39 32 37 38 30 39 33 37 38 30 30 36 36 32 33 39 31 46 36 31 34 45 30 38 39 45 37 39 30 45 30 36 30 0D 0A 3A 31 30 30 31 38 30 30 30 45 33 44 30 31 43 33 30 31 39 46 30 38 46 45 46 38 30 39 33 36 31 30 30 31 30 39 33 36 30 30 30 37 32 0D 0A 3A 31 30 30 31 39 30 30 30 39 34 45 31 38 36 42 33 38 33 37 30 33 31 46 34 39 31 35 30 44 39 46 37 31 30 39 32 38 39 30 30 42 44 0D 0A 3A 31 30 30 31 41 30 30 30 31 30 39 32 38 33 30 30 44 46 39 31 43 46 39 31 31 46 39 31 30 38 39 35 36 38 33 30 30 39 46 30 37 43 0D 0A 3A 31 30 30 31 42 30 30 30 39 46 43 46 38 33 45 43 38 30 39 33 37 38 30 30 38 41 45 35 38 30 39 33 36 30 30 30 31 30 39 32 35 33 0D 0A 3A 31 30 30 31 43 30 30 30 36 32 30 30 38 38 38 31 38 30 37 36 35 39 46 35 39 41 38 31 31 30 39 32 38 31 30 30 38 39 38 31 33 38 0D 0A 3A 31 30 30 31 44 30 30 30 38 38 32 33 30 39 46 30 34 33 43 30 31 30 39 32 38 32 30 30 32 32 45 30 38 31 45 38 39 30 45 30 37 39 0D 0A 3A 31 30 30 31 45 30 30 30 39 30 39 33 38 37 30 30 38 30 39 33 38 36 30 30 38 46 38 31 38 38 32 33 31 39 46 34 39 45 38 31 45 35 0D 0A 3A 31 30 30 31 46 30 30 30 39 32 31 37 30 38 46 31 39 32 32 46 31

Размещено на Allbest.ru

...

Подобные документы

  • Архитектура ввода/вывода Windows NT. Внутренняя организация шины USB. Сущностная характеристика драйверной модели WDM. Точки входа разрабатываемого драйвера, размещение кода в памяти, установка драйвера в системе. Реализация кода драйвера на языке C.

    курсовая работа [1,2 M], добавлен 27.09.2014

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

    курсовая работа [2,6 M], добавлен 19.12.2010

  • Архитектура Windows NT 5. Приоритеты выполнения программного кода. Описание формата MIDI-данных. Установка драйвера в системе. Выбор средств разработки программного обеспечения. Обработка запросов драйверной модели WDM. Использование библиотеки DirectKS.

    курсовая работа [498,8 K], добавлен 24.06.2009

  • Операционная система Windows. Стандартные программы Windows: диспетчер задач, проверка, очистка, дефрагментация, архивация диска, восстановление системы, таблица символов, калькулятор, блокнот, графический редактор - пакет - Paint, WordPad, буфер обмена.

    реферат [17,9 K], добавлен 07.11.2008

  • Механизмы взаимодействия драйвера режима ядра и пользовательского приложения: многослойная драйверная архитектура, алгоритм сокрытия данных, взаимодействие драйвера и приложения, пользовательский интерфейс программы фильтрации доступа к файлам.

    курсовая работа [1023,3 K], добавлен 23.06.2009

  • Использование драйвера режима ядра и управляющего приложения для создания системных потоков. Имитация обработки данных и организация задержек. Разработка драйвера на языке C++. Конфигурация тестового стенда. Точность изменения задержек и работы таймера.

    курсовая работа [182,4 K], добавлен 24.06.2009

  • Виды операционных систем. Графический пользовательский интерфейс операционной системы Linux и Mac OS. Функции устройства управления окнами (windows manager). Программа управления файлами, драйвера, модуль управления памятью - основные компоненты ядра.

    презентация [1,8 M], добавлен 14.10.2013

  • Описание работы элементов программы в виде блок-схем. Анализ структурной схемы модели домофона. Блок-схема работы открытия двери ключом. Моделирование в Proteus: принцип динамического опроса и индикации, внешний вид жидкокристаллического дисплея.

    курсовая работа [1,4 M], добавлен 12.04.2019

  • Общие сведения о микроконтроллерах AVR, их основные параметры. Функции термометра, реализованного на микроконтроллере AVR. Порядок программирования микроконтроллера с использованием программы на языке С. Передача данных сом-порт, вывод значений на ЖКИ.

    курсовая работа [35,8 K], добавлен 08.04.2010

  • Инициализация графического драйвера и режима. Функции доступа к видеопамяти. Подключение графической библиотеки. Инициализация графического режима. Включение драйвера, шрифтов в исполняемый файл. Рисование геометрических фигур. Вывод числовой информации.

    лабораторная работа [77,2 K], добавлен 06.07.2009

  • Характеристика операционной системы. История развития Windows. Сравнительная характеристика версий Windows. Элементы и инструменты Windows XP. Прикладные программы в Windows XP. Работа настольных и портативных компьютеров под управлением Windows.

    доклад [19,1 K], добавлен 16.10.2011

  • Программа для расчета полинома. Описание и схема алгоритма, распределение памяти под код программы, под данные и стек. Схема хранения операций ввода-вывода и их подключение. Изменения стека во время прогона программы. Листинг программы с комментариями.

    курсовая работа [59,0 K], добавлен 02.12.2009

  • Программа операционной системы. Перемещение и копирование объектов. Окна Windows, операционное меню, настройка свойств папки, вызов справки Windows. Работа с дисками, папками и файлами, с приложениями и документами. Стандартные программы Windows.

    контрольная работа [21,9 K], добавлен 29.01.2011

  • Microsoft Windows – одно из величайших изобретений человечества. Ознакомление с базовыми программами и навыками работы с Windows XP Professional: форматирование диска, архивация данных, файловые менеджеры, антивирусные программы, настройка Windows.

    отчет по практике [24,4 K], добавлен 22.12.2009

  • Сетевое подключение к компьютеру, настройка общей папки. Создание рабочей группы для всех ПК в сети. Использование окна "Управление сетями и общим доступом". Подключение сетевого диска. Аутентификация пользователей. Поиск объекта в системной базе.

    реферат [2,2 M], добавлен 27.11.2014

  • Память ПК. Назначение и виды памяти. Windows. Объекты пользовательского интерфейса и его настройка. Назначение и характеристки Windows. Многозадачность и архитектура Windows. Графический интерфейс Windows - его настройка, рабочие характеристики.

    контрольная работа [27,3 K], добавлен 06.06.2008

  • Проектирование микропроцессорного устройства, которое преобразует интерфейс RS-232 (COM-порт) в IEEE 1284 (LPT-порт). Структурная схема устройства. Преобразование последовательного интерфейса в параллельный интерфейс на микроконтроллере ATMega 8.

    курсовая работа [1,1 M], добавлен 07.04.2013

  • Применение персональных компьютеров различных классов. Работа со встроенными программами Windows. Характеристика распространенных операционных систем (Windows 3.Х, 9Х, NT, 2000, XP, Windows7, Vista). Виды антивирусных программ и защита данных от вирусов.

    контрольная работа [32,3 K], добавлен 23.01.2011

  • Понятия вычислительной системы, ее аппаратное обеспечение. Конфигурация и устройство компьютера. Элементы управления операционной системы Windows ХР. Стандартные и служебные приложения ОС. Архитектура фон Нейман. Работа в программе Microsoft Excel.

    шпаргалка [47,0 K], добавлен 29.12.2010

  • Задачи и особенности консоли управления Microsoft, ее преимущества и типы оснасток. Внешний вид пользовательского интерфейса консоли, порядок ее создания и установка опций. Настройка панели задач. Управление пользователями и группами в системе Windows XP.

    презентация [684,2 K], добавлен 20.12.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.