Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой Лысак Илья.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
749 Кб
Скачать

1.4 Программирование микроконтроллера aTtiny 2313

В настоящее время программирование и отладка чаще всего выполняются с помощью интегрированной среды развития. Программирование производится обычно с помощью кросс-средств, инсталлированных на инструментальном компьютере с мощной операционной системы. В качестве инструментальных компьютеров используются персональные компьютеры (чаще всего IBM-PK старших моделей, реже PS-2 и Macintosh) или рабочей станцией. Операционная система этих компьютеров служит различные версии Windows и UNIX.

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

Микроконтроллер ATtiny 2313 программируется в программе CodeVisionAVR.

  1. запускаем программу CodeVisionAVR ;

  2. настраиваем порт, для этого заходим в меню Settings -> Programmer;

  3. находим микроконтроллер ATtiny 2313;

  4. устанавливаем флаг в Program Fuse Bit(s).

2 Специальная часть

2.1 Принцип действия регулятора освещения

Регулятор освещения — один из вариантов микроконтроллерных регуляторов яркости ламп накаливания, конструкции которых можно найти во всемирной сети интернет и в радиолюбительской литературе. В подобных регуляторах обычно используется один из трёх способов управления: от собственного пульта; от любого пульта с запоминанием кода клавиши; от любого пульта при нажатии любой клавиши определенным образом. В данном случае выбран первый вариант, который я считаю наиболее удачным, несмотря на то, что требуется отдельный пульт управления. Немного поясню почему. Поскольку разные системы ИК управления имеют различную несущую частоту модуляции, то они также могут различаться в произвольно используемой паре ”пульт - регулятор”, вследствие чего дальность управления может сильно уменьшиться, что вызывает некоторые неудобства. Недостатком последнего способа так же является и то, что регулятор может реагировать на команды, которые ему вовсе не предназначены или же регулирование затруднено вследствие сложных манипуляций клавишей пульта. Управление предлагаемым регулятором осуществляется двумя кнопками любого пульта ДУ, работающего с широко распространённой системой команд RC-5. Пульты этой системы достаточно доступны и дешевы.

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

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

Регулятор освещения с ДУ нетрудно сделать самостоятельно, причем желательно использовать уже имеющийся в наличии ПДУ. Самый простой вариант — регулятор, одинаково реагирующий на любую команду, подаваемую с помощью любого ПДУ. Главный его недостаток — срабатывание от команд, подаваемых при использовании ПДУ по прямому назначению без всякого намерения изменить освещение. Введение задержки срабатывания мало помогает, так как, например, при регулировании громкости звука соответствующую кнопку ПДУ удерживают нажатой довольно долго.

Хороший результат можно получить, выбрав для каждой функции регулятора определенную кнопку ПДУ. Но для этого при разработке программы микроконтроллера необходимо точно знать формат команд, посылаемых ПДУ при нажатиях на эти кнопки. Хорошо, если ПДУ работает согласно известному протоколу RC5. Если же пульт другой системы, то тогда придется провести серьезную работу по изучению его ИК посылок.

Принцип регулирования яркости основан на отсечке с помощью симистора VS1 части периода питающего лампу переменного тока. МК AT90S2313 (DD1) выбран в качестве основы прибора исходя из того, что, имея небольшие габариты и стоимость, обладает достаточным объемом памяти и работает при минимальном напряжении питания 2,7 В. Именно такое напряжение поступает на МК, когда установлена максимальная яркость и падение напряжения на симисторе VS1 минимально. Частота внутреннего тактового генератора МК 4 МГц (максимально допустимая при напряжении 2,7 В) задана кварцевым резонатором ZQ1.

Местное управление ведут с помощью кнопок SB1 и SB2. Первой из них включают свет и увеличивают его яркость. Второй уменьшают яркость и выключают освещение.

Пользоваться регулятором просто. После подключения к сети он автоматически переходит в режим "хозяин дома" — мигают оба кристалла светодиода HL1, а в помещении каждые четыре часа на полчаса включается свет. В этот же режим регулятор можно перевести, одновременно нажав на кнопки SB1, SB2 и удерживая их в течение 5 с. Выход из такого режима — кратковременное нажатие на любую кнопку.

С ПДУ этот режим отменить нельзя. Если быстро нажать на кнопку SB1 восемь или более раз подряд, прибор на 10 с перейдет в режим программирования команды ПДУ, о чем сигнализирует мигающий зеленый светодиод. Принятая в это время команда будет сохранена в памяти МК как эквивалентная нажатию на кнопку SB1. После этого (или по истечении 10 с, если команды не было) регулятор вернется в ранее действовавший режим.

Аналогичным способом записывают в память команду ПДУ, эквивалентную нажатию на кнопку SB2. Очевидно, что выбирать нужно команды, редко требующиеся для управления устройством, для которого предназначен используемый пульт. Для того чтобы включить освещение, достаточно нажать на кнопку SB1 или на эквивалентную ей кнопку ПДУ. Яркость нарастает до максимальной приблизительно за 1 с. Это продлевает срок службы лампы. Выключают свет нажатием на кнопку SB2 или на эквивалентную ей кнопку ПДУ. Яркость сразу же уменьшится приблизительно на четверть, затем за 30 с сойдет на нет. Будет включен зеленый светодиод. Для того чтобы установить желаемую яркость света, некоторое время удерживайте соответствующую кнопку нажатой. В момент ее отпускания яркость будет зафиксирована.

Прием любого ИК сигнала регулятор отмечает миганием красного светодиода. Этим удобно пользоваться для проверки исправности ПДУ.