Разработка программы для устройства "Лампа хорошего настроения" на базе микроконтроллера - Программирование, компьютеры и кибернетика дипломная работа

Разработка программы для устройства "Лампа хорошего настроения" на базе микроконтроллера - Программирование, компьютеры и кибернетика дипломная работа




































Главная

Программирование, компьютеры и кибернетика
Разработка программы для устройства "Лампа хорошего настроения" на базе микроконтроллера

Описание области применения устройства релаксационного воздействия на человека "Лампа хорошего настроения". Выбор микроконтроллера устройства. Алгоритм функционирования программы, её тестирование. Правила и нормы охраны труда при работе с компьютером.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

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

1.1 Описание области применения устройства релаксационного воздействия на человека «Лампа хорошего настроения»
1.2 Базовая функциональная схема микропроцессорной системы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
1.3 Описание структуры системы управления устройства релаксационного воздействия на человека «Лампа хорошего настроения»
1.4 Обоснование выбора программного обеспечения микропроцессорной системы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
2.1 Выбор и описание микроконтроллера устройства релаксационного воздействия на человека «Лампа хорошего настроения»
2.2 Разработка алгоритма функционирования программы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
2.3 Реализация программы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
2.4 Провести тестирование программы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
3.1 Правила и нормы охраны труда при работе с персональным компьютером
3.2 Электробезопасность при работе с персональным компьютером
3.3 Противопожарная безопасность при работе с персональным компьютером
Микроконтроллеры (старое название -- однокристалльные микро-ЭВМ) в настоящее время имеют невероятно много областей применения. От промышленной автоматики до бытовых приборов, от управления ядерными станциями до детских игрушек, от секретных военных систем до переключения каналов в вашем радиоприемнике. Одним словом, проще перечислить, где они не применяются.
Изобретение и дальнейшее развитие микроконтроллеров произвело настоящую революцию в цифровой электронике. Изменились не только схемотехника и элементная база, но и сами принципы построения систем. Значительные изменения претерпел цикл разработки. Появились целые классы устройств, существование которых было бы невозможно без контроллеров.
При проектировании микроконтроллеров приходится соблюдать баланс между размерами и стоимостью с одной стороны и гибкостью и производительностью с другой. Для разных приложений оптимальное соотношение этих и других параметров может различаться очень сильно. Поэтому существует огромное количество типов микроконтроллеров, отличающихся архитектурой процессорного модуля, размером и типом встроенной памяти, набором периферийных устройств, типом корпуса и т. д. В отличие от обычных компьютерных микропроцессоров, в микроконтроллерах часто используется гарвардская архитектура памяти, то есть раздельное хранение данных и команд в ОЗУ и ПЗУ соответственно.
Целью дипломного проекта является разработка программы для устройства «Лампа хорошего настроения» на базе микроконтроллера.
Для достижения поставленной цели необходимо решить следующие задачи:
описать область применения будущей разработки;
описать базовую функциональную схему разработки;
обосновать выбор программного обеспечения;
аргументировать выбор микроконтроллера;
разработать алгоритм функционирования устройства;
провести тестирование разработанного программного продукта;
Лампа настроения - это светодиодный RGB светильник, плавно меняющий цвет свечения случайным образом. В Сети можно найти множество различных схем таких ламп, причем, как правило, на базе относительно мощных микроконтроллеров. В нашем дипломном проекте хотелось сделать лампу на основе самого примитивного AVR микроконтроллера ATTINY13.
1.1 Описание области применения устройства релаксационного воздействия на человека «Лампа хорошего настроения»
Широкое применение радиоэлектронной автоматики во всех сферах нашей жизни вызывает необходимость применения специальных устройств - микроконтроллеров. Практически каждый из бытовых приборов и машин, имеющих автоматическое управление, - телефон, телевизионный приемник, стиральная машина и другие содержат в своем составе микроконтроллер.
Светодиодные RGB лампы применяются для рекламной, ландшафтной, декоративной подсветки помещений и деталей интерьера. LED лампы RGB имеют патроны как у обычных ламп накаливания, это позволяет подключить их к имеющимся светильникам. Светодиодные RGB лампы долговечны, не мерцают, экономичны, безопасны для человека и природы. Все представленные сайте RGB лампы имеют напряжение 220 вольт. В комплекте предоставляет пульт-контроллер для управления лампой. Пульт дистанционного управления светодиодной RGB-лампы может включать-выключать, изменять цвета и регулировать яркость свечения светодиодной лампы.
Купить такие лампы возможно только по интернету. Минимальная цена лампы - 450 руб, максимальная - 2000 руб.
Технические характеристики LED лампы RGB с пультом:
материал корпуса: алюминий, пластик
время наработки на отказ: 50,000 часов
питание пульта: 1 аккумулятор типа CR2025
размеры лампочки: 59мм(диаметр) x 114мм(высота)
Лампа настроения (mood lamp) является RGB лампой, которая меняет цвет в случайном порядке. Была зеленая, плавно стала голубой, потом фиолетовой… какого цвета она станет в следующий момент времени не знает никто. Если использовать 3 светодиода, то возможно реализовать RGB-систему формирования цвета. Таким образом, изменяя яркость свечения светодиодов возможно получить более 2 млн цветов.
Данная лампа проста по устройству и станет отличным сувениром.
В качестве источника света использован мощный RGB светодиод. Мощность каждой цветовой составляющей 1Вт.
Таким образом получается, что аналогов данного устройства нет.
1.2 Базовая функциональная схема микропроцессорной системы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
В отличие от известных аналогов, схема реализована на самом маленьком и дешевом микроконтроллере из доступных - attiny13. В качестве ключевых транзисторов VT1...VT3 применяются IRLML2402, можно и другие аналогичные «логические». Резисторы R1...R3 ограничивают ток кристаллов мощного светодиода, их сопротивление зависит от напряжения питания и параметров самого светодиода. Надо подобрать их так, чтобы обеспечивался одинаковый ток через кристаллы (либо, если есть точные параметры светодиода, надо выбрать такие значения токов, чтобы обеспечивалась одинаковая яркость каждого кристалла). В данном случае для красного кристалла - 7.5 Ом, а для синего и зеленого по 5,6 Ом.
Питание на схему RGB-светильника подается на клеммы X5 (минус) и Х4(плюс). В схеме использовался китайский адаптер, который выдает как раз подходящее напряжение и имеет достаточную мощность. Однако, можно использовать отдельные источники для микроконтроллеров и светодиода, тогда следует обеспечить для микроконтроллера питание 5 вольт, а для светодиода - сколько требуется. Светодиод на схеме не указан, подключается он к катодами к клеммам Х1...Х3, а аноды к плюсу источника питания.
Конденсатор С1 может быть любым электролитическим, чем больше емкость, тем лучше, напряжение не менее 10 вольт. С2 - обязательно керамический, достаточно 0,1 мкФ. Оба конденсатора надо разместить как можно ближе к выводам питания микроконтроллера, и при разводке платы учесть пути протекания силовых токов, чтобы микроконтроллер не сбоил. Если что - соедините 1 вывод микроконтролллера с плюсом питания.
Особо следует отметить роль RC-фильтра R4-C3: если планируется использование дистанционного управления, эти элементы ставить обязательно. К сожалению, при разработке платы они не были учтены. Сопротивление R4 равно 100 Ом, а емкость C4 может быть от 47 до 220 мкФ.
В схеме лампы настроения имеется приемник ИК-излучения BQ1, однако в текущей версии программного обеспечения он не используется, заложен на перспективу, т.е. можно и не устанавливать его.
Рисунок 2 - Принципиальная схема устройства
При разработке электронной схемы возникла необходимость разработать плату к проектируемому устройству для размещения на ней деталей схемы. Для простых схем можно нарисовать от руки при помощи лака или другой нерастворимой в воде краски рисунок будущей платы на фольгированном стеклотекстолите и начать травление. Или же воспользоваться так называемым «сухим» способом изготовления плат - лишнюю фольгу с заготовки удалить резаком по линиям, разделяющим отдельные дорожки печатной платы. И тот, и другой способы полностью решают поставленную задачу, но при возрастании сложности схемы целесообразнее использовать персональный компьютер для трассировки платы по схеме. Для выполнения задач трассировки плат начинающему радиолюбителю в подавляющем большинстве случаев подойдет программа Sprint Layout 6, простая в освоении и использовании. При разработке печатной платы использовалась программа Sprint Layout 6.0.
Программное обеспечение Sprint Layout 6 - это простой, но в тоже время очень эффективный программный пакет для проектирования и ручной трассировки печатных плат малой и средней сложности. Разработан немецкой компанией ABACOM. Имеет простой интерфейс переведенный на русский язык. Сохранение документов происходит в файл с расширением *.lay6 (пятая версия программы сохраняла с расширением *.lay).
Форма и размеры печатной платы целиком определяются тем, какой именно светильник будет выбран за основу, как будет крепиться светодиод внутри него, какой будет радиатор и т.п. В приведенной схеме использовался светильник из магазина ИКЕА и подходящий радиатор, поэтому плата имеет форму тора.
1.3 Описание структуры системы управления устройства релаксационного воздействия на человека «Лампа хорошего настроения»
Алгоритм работы следующий. Генерируется случайным образом цвет (три char переменные). Если все три значения примерно одинаковы, то на выходе у нас будет белый цвет, что неинтересно, поэтому процесс случайного выбора цвета повторяется. Когда получен цвет с вероятностью 0,5 будет погашен один из каналов (что бы чаще появлялись чистые R, G или B цвета.) Затем вычисляется величина прибавки, что бы за 255 шагов прийти к заданному цвету. После этого случайным образом выясняется скорость ухода к новому цвету (от 5 до 10 сек). Ну а затем за счет приращения значения в регистрах ШИМ плавно приходим к сгенерированному цвету. Подержав цвет какое то время цикл повторяется. И так до бесконечности.
подключаем библиотеку ввода/вывода;
задержка - задаем скорость эффекта (зажигания/гашения)
повторять цикл, пока не вышло время задержки;
плавно гасить один цвет светодиода;
плавно загарается другой(ие) цвета;
выбираем яркость случайным образом;
зажигаем цвета по цепочке: R->RG->G->GB->B->BR->R
плавное зажигание зеленого светодиода
плавное гашение красного светодиода
плавное зажигание синего светодиода
плавное гашение зеленого светодиода
постепенное зажигание красного светодиода
красный светодиод продолжает гореть
Функционал, включенный в текущую версию прошивки:
софтовый 8-битный ШИМ на 200 Гц, 3 канала;
возможность использования таблицы коррекции гаммы (желательно перевести ШИМ на BAM 10-бит, иначе заметны переходы цвета);
программный таймер с шагом 0.1с (макс. время 1:49:13.5) для пауз и установки времени перехода;
переход от текущего до заданного цвета по RGB значениям за время таймера;
переход от текущего до заданного цвета по HSV значениям за время таймера;
вращение по HSV колесу; дополнительно: колебание по насыщенности и яркости;
цикл основных цветов; дополнительно: рандомное время перехода на каждый шаг;
фиксированный цвет; дополнительно: второй фиксированный цвет;
рандомный цвет по параметрам RGB; дополнительно: рандомный цвет по параметрам HSV;
предустановленный цикл цветов; дополнительно: -- (в будущем -- набор команд, загруженный с ПК);
(активируется с ПК)прямой вывод полученного с ПК цвета; дополнительно: плавное переход на новый цвет;
быстрое нажатие -- смена подпрограммы (либо сброс паузы);
продолжительное нажатие -- альтернативный режим;
длительное нажатие -- переход в сервисный режим(для перепрошивки)
таймер обратного отсчета (задается с ПК, макс. время 1:49:13.5);
оповещение о событиях (многократные и одноразовые), 6 каналов (по количеству основных цветов);
возможность изменить основные параметры каждой подпрограммы при помощи софта;
прием команд управления таймером обратного отсчета и оповещениями;
возможность прямого контроля цвета с ПК, что открывает путь к расширению функционала за счет софта.
1.4 Обоснование выбора программного обеспечения микропроцессорной системы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
лампа настроение программа микроконтроллер
Программа представляет собой интегрированную среду разработки ПО для AVR микроконтроллеров.
Из основных достоинств CodeVisionAVR можно отметить то, что он не слишком сложен для самостоятельного освоения, поддерживает все многочисленное семейство микроконтроллеров AVR (включая чипы с ядром ATxmega), формирует емкий и результативный программный код. Помимо компилирования среда разработки способна записать созданную программу в память микроконтроллера. Модуль прошивки может взаимодействовать со всеми популярными программаторами (AVR910, STK200/300 и многими другими). Редактор позволяет работать с двумя проектами одновременно, размещать закладки, настраивать время автоматического сохранения результатов
Рисунок 4 - Интерфейс CodeVisionAVR
Основными модулями, входящими в состав CodeVisionAVR являются:
трансляторы программ, составленных на Си-подобных языках или ассемблере, в машинный код для AVR;
элементы для инициализации периферийных устройств;
модуль для работы с платой отладки STK-500;
компоненты взаимодействия с внешними программаторами;
Результат работы в программе CodeVisionAVR может быть представлен в виде HEX, ROM или BIN-файла для прямой прошивки микроконтроллера путем использования стороннего программатора. Кроме этого, программа может быть передана в формате COFF (файл отладчика) или OBJ. Число библиотек CodeVisionAVR растет с каждой новой версией и включает в себя поддержку продукции от таких известных производителей как Philips, National Semiconductor, Maxim-Dallas Semiconductor и многих других.
Компилятор CodeVisionAVR отличается от AVR-GCC, который можно наблюдать в программе WinAVR, синтаксисом, количеством поддерживаемых микроконтроллеров и быстродействием конечного кода. Но больше всего по специфике работы, расположению команд и своим возможностям программа напоминает PonyProg.
При работе важно не забывать, что процедура прошивки самой программы, fuse битов и ПЗУ в CodeVisionAVR являются самостоятельными процедурами. Разработчик рекомендует сначала прописать пользовательский код, затем EEPROM-память, а в конце fuse'ы. Чтобы убедиться, что CodeVisionAVR обнаружил внешний программатор, который подключается к LPT порту рабочей станции, необходимо нажать кнопку «Reset Chip». При этом на программаторе обязаны загореться индикаторы чтения/записи.
Разработчик программы - компания HP InfoTech, расположенная в столице Румынии, городе Бухаресте. Работники фирмы постоянно трудятся над своим продуктом, улучшая оптимизатор кода и ускоряя работу компоновщика. Число пользователей, купивших данный софт, составляет более 13000 человек.
Существует две версии программы: CodeVisionAVR Evaluation - бесплатный ознакомительный вариант с ограничением до четырех килобайт размера программного кода и отсутствием ряда ключевых библиотек и CodeVisionAVR - платная коммерческая, защищенная от установки паролем.
Интерфейс CodeVisionAVR английский и русификатора к нему нет.
Требуемая платформа для установки - Windows 95, 98, 2000, XP, Vista и 7. Поддерживаются 32- и 64-разрядные операционные системы.
2.1 Выбор и описание микроконтроллера устройства релаксационного воздействия на человека «Лампа хорошего настроения»
ATtiny2313 - низкопотребляющий 8 битный микроконтроллер с AVR RISC архитектурой. Выполняя команды за один цикл, ATtiny2313 достигает производительности 1 MIPS при частоте задающего генератора 1 МГц, что позволяет разработчику оптимизировать отношение потребления к производительности.
AVR ядро объединяет богатую систему команд и 32 рабочих регистра общего назначения. Все 32 регистра непосредственно связаны с арифметико-логическим устройством (АЛУ), что позволяет получить доступ к двум независимым регистрам при выполнении одной команды. В результате эта архитектура позволяет обеспечить в десятки раз большую производительность, чем стандартная CISC архитектура.
Микроконтроллер наделен 18 выводами ввода - вывода, которые можно запрограммировать исходя из потребностей, возникающих при проектировании конкретного устройства. Выходные буферы данных портов выдерживают относительно высокую нагрузку. Port A (PA2 -- PA0) - 3 бита. Двунаправленный порт ввода-вывода с программируемыми подтягивающими резисторами. Port B (PB7 -- PB0) - 8 бит. Двунаправленный порт ввода-вывода с программируемыми подтягивающими резисторами. Port D (PD6 -- PD0) - 7 бит. Двунаправленный порт ввода-вывода с программируемыми подтягивающими резисторами.
ATtiny2313 имеет следующие характеристики: 2 КБ программируемой в системе Flash память программы, 128 байтную EEPROM память данных, 128 байтное SRAM (статическое ОЗУ), 18 линий ввода - вывода общего применения, 32 рабочих регистра общего назначения, однопроводный интерфейс для встроенного отладчика, два гибких таймера/счетчика со схемами сравнения, внутренние и внешние источники прерывания, последовательный программируемый USART, универсальный последовательный интерфейс с детектором стартового условия, программируемый сторожевой таймер со встроенным генератором и три программно инициализируемых режима пониженного потребления. В режиме Idle останавливается ядро, но ОЗУ, таймеры/счетчики и система прерываний продолжают функционировать. В режиме Power-down регистры сохраняют свое значение, но генератор останавливается, блокируя все функции прибора до следующего прерывания или аппаратного сброса. В Standby режиме задающий генератор работает, в то время как остальная часть прибора бездействует. Это позволяет очень быстро запустить микропроцессор, сохраняя при этом в режиме бездействия мощность.
Рисунок 6 - Расположение выводов ATtiny2313
Прибор изготовлен по высокоплотной энергонезависимой технологии изготовления памяти компании Atmel. Встроенная ISP Flash позволяет перепрограммировать память программы в системе через последовательный SPI интерфейс или обычным программатором энергонезависимой памяти. Объединив в одном кристалле 8- битное RISC ядро с самопрограммирующейся в системе Flash памятью, ATtiny2313 стал мощным микроконтроллером, который дает большую гибкость разработчика микропроцессорных систем.
Рисунок 7 - Микроконтроллер ATTiny2313
ATtiny2313 поддерживается различными программными средствами и интегрированными средствами разработки, такими как компиляторы C, макроассемблеры, программные отладчики/симуляторы, внутрисхемные эмуляторы и ознакомительные наборы.
RISC (Reduced Instruction Set Computer). Данная архитектура обладает большим набором инструкций, основное количество которых исполняются в 1 машинный цикл. Из этого следует, что по сравнению с предшествующими микроконтроллерами на базе CISC архитектуры (например, MCS51), у микроконтроллеров на RISC быстродействие в 12 раз быстрее. Или если взять за базу определенный уровень быстродействия, то для выполнения данного условия микроконтроллерам на базе RISC (Attiny2313) необходима в 12 раз меньше тактовая частота генератора, что приводит к значительному снижению энергопотребления. В связи с этим возникает возможность конструирование различных устройств на Attiny2313, с использованием батарейного питания.
Рисунок 8 - Блок-Диаграмма AVR-архитектуры
2.2 Разработка алгоритма функционирования программы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
//***********************************************************
// Description.: Управление RGB-светодиодом для создания эффекта
// лампы настроения (переливание цветов)
//***************************************************************
#include //подключаем библиотеку ввода/вывода
//************************************************************
// Порт, к которому подключен RGB-диод
// Пины порта, к которым подключены выводы RGB-диода
#define delval 1500 //Задержка - задаем скорость эффекта (зажигания/гашения)
//************************************************************
#define nop() {asm("nop");}//функция необходимая для реализации задержки
void delay_cycl(int delay) { for (int i=delay;i>0;i--) nop (); }
// функция включения одного цвета светодиода и задержка
void led_pin_off(int pin,int delay) { LED_PORT &= ~_BV(pin); delay_cycl(delay); }
// функция выключения одного цвета светодиода и задержка
void led_pin_on(int pin,int delay) { LED_PORT |= _BV(pin); delay_cycl(delay); }
//плавное зажигание одного цвета светодиода
//плавное гашение одного цвета светодиода
//************************************************************
//конфигурирование на вывод пинов порта LED_PORT
//включаем подтягивающие резисторы################
{//Зажигаем цвета по цепочке: R->RG->G->GB->B->BR->R
//плавное зажигание зеленого светодиода
//Зеленый светодиод остается гореть
//плавное гашение красного светодиода
//Зеленый светодиод остается гореть
//плавное зажигание синего светодиода
//Синий светодиод продолжает гореть
//Плавное гашение зеленого светодиода
//Синий светодиод продолжает гореть
//постепенное зажигание красного светодиода
//Красный светодиод продолжает гореть
2.3 Реализация программы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
Программа для микроконтроллера пишется на любом удобном языке программирования, компилируется в бинарный файл (или файл формата intel HEX) и помещается в микроконтроллер посредством программатора.
Программаторы бывают разные под разные семейства контроллеров существуют свои программаторы. Впрочем, бывают и универсальные. Более того, даже ту же простейшую AVR можно запрограммировать несколькими способами:
Внутрисхемное программирование (ISP) - самый популярный способ программировать современные контроллеры. Внутрисхемным данный метод называется потому, что микроконтроллер в этот момент находится в схеме целевого устройства -- он может быть даже туда впаян. Для нужд программатора в этом случае выделяется несколько выводов контроллера (обычно 3..5 в зависимости от контроллера).
Рисунок 8 - Схема подключения программатора
К этим выводам подключается прошивающий шнур программатора и происходит заливка программирования. После чего шнур отключается и контроллер начинает работу. У AVR программа помещается по интерфейсу SPI и для работы программатора нужно четыре линии и питание (достаточно только земли, чтобы уравнять потенциалы земель программатора и устройства):
MISO -- данные идущие от контроллера (Master-Input/Slave-Output)
MOSI -- данные идущие в контроллер (Master-Output/Slave-Input)
SCK -- тактовые импульсы интерфейса SPI
RESET -- сигналом на RESET программатор вводит контроллер в режим программирования
Сам же разъем внутрисхемного программирования представляет собой всего лишь несколько штырей.
Популярный стандарт SPI коннектора:
Для внутрисхемной программирования контроллеров AVR существует не один десяток разнообразных программаторов. Отличаются они в первую очередь по скорости работы и типу подключения к компьютеру (COM/LPT/USB). Программаторы без собственного чипа, как правило, дешевые, очень простые в изготовлении и наладке. Но при этом обычно работают исключительно через архаичные COM или LPT порты. Которые найти в современном компьютере целая проблема. А еще требуют прямого доступа к портам, что уже в Windows XP осуществляется с помощью API функций и зависят от тактовой частоты процессора компьютера.
Идеальный компьютер для работы с такими программаторами это какой-нибудь PIII-800Mhz с Windows98…XP.
Простейшая схема, работает через оболочку UniProf, но имеет ряд проблем. В частности тут COM порт используется нетрадиционно и на некоторых материнских платах может не заработать.
Надежная и удобная схема. Работает через LPT порт. Поддерживается многими программами, например avrdude. Требует прямого доступа к порту со стороны операционной системы и наличие LPT порта.
Очень надежный и быстрый программатор работающий через USB. C драйверами под разные операционные системы. И мощной оболочкой avrdude. Недостаток один -- содержит редкую и дорогую микросхему FTDI. Данный программатор встроен в демоплаты Pinboard
Рисунок 10 - Внешний вид демоплаты Pinboard
Программаторы с управляющим контроллером лишены многих проблем. Они без особых проблем работают через USB. Но у этих программаторов есть другая проблема -- для того чтобы сделать такой программатор нужен другой программатор, чтобы запрограммировать ему управляющий контроллер. Внутрисхемное программирование, несмотря на все его удобства, имеет ряд ограничений. Микроконтроллер должен быть запущен, иначе он не сможет ответить на сигнал программатора. Поэтому если неправильно выставить биты конфигурации (FUSE), например, переключить на внешний кварцевый резонатор, а сам кварц не поставить. То контроллер не сможет запуститься и запрограммировать его внутрисхемно будет уже нельзя. По крайней мере до тех пор, пока МК не будет запущен. Также в битах конфигурации можно отключить режим внутрисхемной программирования или превратить вывод RESET в обычный порт ввода-вывода (это справедливо для малых МК, у которых RESET совмещен с портом).
Параллельное высоковольтное программирование
Обычно применяется на поточном производстве при массовой (сотни штук) прошивке чипов в программаторе перед запайкой их в устройство.
Параллельное программирование во много раз быстрей последовательного (ISP), но требует подачи на RESET напряжения в 12 вольт. А также для параллельной зашивки требуется уже не три линии данных, а восемь, а также линии управления. Для программирования в этом режиме микроконтроллер вставляется в панельку программатора, а после программирования переставляется в целевое устройство.
Многие микроконтроллеры AVR имеют режим само программирования. Т.е. в микроконтроллер изначально, любым указанным выше способом, зашивается спец программка -- bootloader. Дальше для перешивки программатор не нужен. Достаточно выполнить сброс микроконтроллера и подать ему специальный сигнал. После чего он входит в режим программирования и через обычный последовательный интерфейс в него помещается программа.
Достоинство этого метода еще и в том, что работая через бутлоадер очень сложно сломать микроконтроллер настолько, что он не будет отвечать вообще. Т.к. настройки FUSE для бутлоадера недоступны.
AVR микроконтроллеры могут быть запрограммированы двумя способами - по параллельному интерфейсу и по последовательному. «Параллельное» программирование более сложное в плане реализации программатора и самого программирования, но зато имеет немного большие возможности (например, прошивка контроллера с отключенным ресетом). В виду ориентации блога на простоту и доступность «Параллельными» программаторами мы пользоваться не будем. Зато будем пользоваться «последовательными» программаторами. «Последовательное» программирование (SPI programming ) очень легко реализуется, не требует повышенного напряжения, работает даже если микроконтроллер уже впаян в рабочую схему - это и называется внутрисхемным программированием (ISP - In System Programmer).
Для реализации «последовательного» программирования необходимо:
подключить к программатору ножку сброса (RESET) и SPI интерфейс контроллера (ножки MOSI, MISO, SCK);
запитать микроконтроллер номинальным напряжением +5В (GRD, VCC).
Если у микроконтроллера есть АЦП желательно на ножку AVCC (отдельное питание для аналоговой части контроллера) также подать +5В.
С завода, по умолчанию, в микроконтроллерах включен внутренний задающий генератор при котором и происходит программирование. Но если контроллер перешит на внешний генератор, то для программирования понадобится внешний кварц на ножках XTAL1, XTAL2.
Для внутрисхемного программирования линиям SPI интерфейса не должно ничего мешать (большие емкости, сильные подтяжки к питанию или земле и т.д.).
2.4 Провести тестирование программы устройства релаксационного воздействия на человека «Лампа хорошего настроения»
HappyJTAG2 использует аппаратный JTAG-интерфейс микросхемы FT2232 на первом канале, второй канал используется под последовательный порт. Поддержка отладки с помощью gdb не реализована, в такой связке возможно лишь программирование FLASH-памяти микроконтроллера через порт JTAG. Механизм отладки с использованием программы HappyJTAG2 и адаптера FTDI JTAG выглядит следующим образом. FTDI JTAG подсоединяется с помощью кабеля к JTAG порту микроконтроллера. Для этого придется изготовить еще один кабельный переходник, поскольку распиновка разъема JTAG для микроконтроллеров AVR отличается. Возможно подсоединение как с использованием гальванической изоляции, так и без нее. В первом случае питание должно присутствовать на целевом устройстве. После опроса HappyJTAG2 автоматически определит адаптер и подсоединенный к нему микроконтроллер.
HappyJTAG2 не поддерживает драйвер для libusb, поэтому его придется удалить (для канала А ) и установить родной драйвер от FTDI. Этот факт делает невозможным использовать одновременно openocd и HappyJTAG2 для отладки ARM и AVR микроконтроллеров. Для этого необходимо применять версии openocd, которая не использует библиотеку libusb. Теперь можно запустить AVR Studio. FTDI JTAG адаптер в связке с HappyJTAG2 студией определяется как JTAG ICE mk II, именно этот адаптер необходимо выбирать при создании нового проекта.
Рисунок 13 - Создание проекта в AVR Studio
Рисунок 14 - Выбор микроконтроллера
После опроса AVR Studio в главном меню нужно выбрать «Tools -> Program AVR -> Connect… », в следующем окне все необходимые параметры уже будут установлены. После чего выполнить соединение с адаптером, нажав на кнопку «Connect».
Рисунок 15 - Подключение программатора-отладчика
Рисунок 17 - Настройки программатора
Программа HappyJTAG2 во время работы в AVR Studio должна быть все время запущена, поскольку все коммуникации с отлаживаемой системой происходят через нее. После определени
Разработка программы для устройства "Лампа хорошего настроения" на базе микроконтроллера дипломная работа. Программирование, компьютеры и кибернетика.
Контрольная работа: Анализ финансово-хозяйственной деятельности
Титульный Лист Реферата Кки Рук Казань
Отчет по практике по теме Анализ коммерческой деятельности ООО 'Мечта'
Реферат: Пенсійна реформа в Україні
Контрольная работа по теме Пособие по безработице. Порядок признания граждан инвалидами
Реферат: Микроэкономика 8
Виды Рефератов Пример
Реферат: Технологический процесс СТО
City Stars 4 Контрольная Работа Модуль 1
Дипломная работа по теме Электронный архив организации: типология, основные задачи и принципы деятельности
Доклад: Жемчуг.Происхождение жемчуга.Пресноводный жемчуг.Натуральный и культивированный жемчуг
Реферат по теме Цели и задачи таможенной службы
Дипломная работа по теме Приватизация жилых помещений
Западноевропейский И Русский Символизм Готовый Реферат
Реферат: Технология воспитания и обучения в современной педагогике
Сочинение Про Войну 9 Класс
Акционерное Общество Реферат По Праву
Практическая Работа Северная Америка
Реферат: Religion In Society Aplied To The Scarlet
Реферат по теме Ветеринария в послевоенный восстановительный период
Ремонтно-изоляционные работы на газовых скважинах - Геология, гидрология и геодезия шпаргалка
Романтизм в балетном театре - Культура и искусство курсовая работа
Учет безналичных расчетов - Бухгалтерский учет и аудит курсовая работа


Report Page