Задание на проектирование
Микроконтроллер системы управления.
Основные требования:
Контролируемые устройства – шесть двоичных датчиков, один переключатель.
Выходные устройства – одно исполнительное и одно устройства сигнализации. Рекомендуемый микропроцессорный комплект – К1816.
В данной курсовой работе требуется разработать устройство управления холодильника.
Содержание
Введение
Разработка схемы устройства
Описание работы прикладной программы
Программа устройства на Ассемблере
Список используемых источников
Приложение 1. Блок-схема основной программы
Приложение 2. Блок-схемы подпрограмм
Приложение 3. Функциональная схема устройства
Приложение 4. Схема электрическая принципиальная
Введение
Развитие микроэлектроники и широкое применение ее изделий в промышленном производстве, в устройствах и системах управления самыми разнообразными объектами и процессами является в настоящее время одним из основных направлений научно-технического прогресса.
Использование микроконтроллеров в изделиях производственного и культурно-бытового назначения не только приводит к повышению технико-экономических показателей изделий (стоимости, надёжности, потребляемой мощности, габаритных размеров) и позволяет многократно сократить сроки разработки и отодвинуть сроки морального старения изделий, но и придаёт им принципиально новые потребительские качества такие как расширенные функциональные возможности, модифицируемость, адаптивность и т.д.
За последние годы в микроэлектронике бурное развитие получило направление, связанное с выпуском однокристальных микроконтроллеров, которые предназначены для «интеллектуализации» оборудования различного назначения.
К настоящему времени более двух третей мирового рынка микропроцессорных средств составляют именно однокристальные микроконтроллеры.
В данной курсовой работе мы рассмотрим один из однокристальных микропроцессоров серии – КВ1816ВЕ51.
1. Разработка схемы устройства
Для решения поставленной задачи необходимо наличие специальных датчиков и исполнительного механизма. Требуются следующие датчики: четыре датчика температуры (по два датчика на камеру), два датчика двери (по одному датчику на камеру), один переключатель (вкл./выкл. на разморозку). В качестве исполнительного механизма используется компрессор, также предусмотрено звуковое сообщение при открытой двери.
Схема контроллера представлена в приложении 3, RC цепь требуется для формирования сигнала сброса при включении питания и кварцевый резонатор 12 МГц. Так как для хранения прикладной программы используется РПП, то на вход отключения РПП (ЕА) подается уровень логической «1».
Связь МК51 с датчиками и исполнительными механизмами обеспечивается через имеющиеся порты, а незадействованные порты могут быть в последствии использованы для расширения функциональных возможностей контроллера. Пример подключения датчика представлен на рис. 1.
Рис. 1. Подключение двоичного датчика
Из-за низкой нагрузочной способности выходов МК для всех исполнительных механизмов потребуются усилители мощности.
2. Описание работы прикладной программы
При включении холодильника на микроконтроллер подается питание, которое устанавливает его в исходное состояние. Затем микроконтроллер начинает поочередный опрос датчиков.
Первым опрашивается датчик двери (камера 1), в случае, когда дверь открыта дольше 30 секунд на устройство оповещения подается уровень логической «1» и устройство оповещения выдает звуковой сигнал с интервалом в одну секунду, который продолжает поступать пока не будет закрыта дверь. Затем опрашивается датчик двери (камера 2), в случае если дверь открыта на аналогичный промежуток времени, то выдается звуковой сигнал.
Опросив датчики дверей холодильника начинается опрос температурных датчиков. Сначала опрашиваются температурные датчики камеры 1, которые настроены на температурный интервал от +10С до +80С. В случаи несовпадения температуры с интервальной, подается уровень логической «1» на исполнительное устройство (компрессор) который доводит температуру до требуемых значений. При доведении температуры до требуемого значения происходит отключение компрессора. Далее опрашиваются температурные датчики камеры 2, эти датчики настроены на температурный интервал от -80С до –180С. В случае несовпадения температуры с интервальной, аналогично подается уровень логической «1» на исполнительное устройство (компрессор), который доводит температуру до требуемого значения и отключается.
Затем микроконтроллер проверяет состояние переключателя (вкл/выкл). Если переключатель находится в положении «вкл», включается режим «разморозки», т.е. происходит блокирование внешних устройств. В случае когда переключатель находится в положении «выкл», микроконтроллер заново начинает поочередный опрос датчиков.
3. Программа устройства на Ассемблере
; Определение символических имён
; Определение символических имён бит порта 1
C BIT P1.0; датчик температуры +1 (камера 1)
D BIT P1.1; датчик температуры +8 (камера 1)
E BIT P1.2; датчик двери (камера 1)
F BIT P1.3; компрессор
G BIT P1.4; сигнал
H BIT P1.5; датчик температуры -18 (камера 2)
I BIT P1.6; датчик температуры -8 (камера 2)
J BIT P1.7; датчик двери (камера 2)
; Определение символических имён бит порта 2
K BIT P2.0; вкл/выкл (разморозка)
; Программа
START: JB E, L1; перейти на метку L1 если бит равен 1
CALL PAUSE; вызов подпрограммы PAUSE
L0: JB E, L1; перейти на метку L1 если бит равен 1
CALL ALARM; вызов подпрограммы ALARM
CALL ONESEC; вызов подпрограммы ONESEC
JMP L0; перейти на метку L0
L1: JB J, L3; перейти на метку L3 если бит равен 1
CALL PAUSE; вызов подпрограммы PAUSE
L2: JB J, L3; перейти на метку L3 если бит равен 1
CALL ALARM; вызов подпрограммы ALARM
CALL ONESEC; вызов подпрограммы ONESEC
JMP L2; перейти на метку L2
L3: JNB D, L4; прейти на метку L4 если бит равен 0
SETB F; установка бита
L4: JNB C, L4; прейти на метку L4 если бит равен 0
CLR F; сброс бита
JB I, L5; прейти на метку L5 если бит равен 0
SETB F; установка бита
L5: JNB H, L5; прейти на метку L5 если бит равен 0
CLR F; сброс бита
L6: JNB K, START; прейти на метку START если бит равен 0
JMP L6; перейти на метку L6
; Подпрограммы
ALARM: SETB G; установка бита
CALL ONESEC; вызов подпрограммы ONESEC
CPL G; инвертировать бит G
RET; возврат
Подпрограмма задержки на 30 секунд
PAUSE: MOV R6,#30; загрузить в регистр R6 константу
CALL ONESEC; вызов подпрограммы ONESEC
DJNZ R6, PAUSE; декремент регистра R6 и переход если не 0
RET; возврат
; Подпрограмма задержки на 1 секунду
ONESEC: MOV R7,#20; загрузить в регистр R7 константу
SEC: CALL DELAY; вызов подпрограммы DELAY
DJNZ R7, SEC; декремент регистра R7 и переход если не 0
RET; возврат
; Подпрограмма задержки на 50 мс
DELAY: MOV TMOD,#0001B; установка таймера /счетчика в режим 1
MOV TH0,#65536; загрузить в регистр TH0 константу
MOV TL0,#15536; загрузить в регистр TL0 константу
SETB TCON.4; пуск таймера / счетчика
DEL: JNB TCON.5, DEL; ожидание переполнения таймера / счетчика
CPL TCON.4; остановка таймера / счетчика
CPL TCON.5; сброс флага
RET; возврат
Список используемых источников
Сташин В.В., Урсулов А.В., Мологонцева О.Ф. Проектирование цифровых устройств на одно-кристальных микроконтроллерах. М.: Энерго-атомиздат, 1990. 224 с.
Методические указания к лабораторной работе №2 по курсу «Цифровые устройства и микропроцессоры» В.А. Добряк, В.К. Рагозин. Екатеринбург: Изд-во УГТУ, 1999. 32 с.
Приложение 1. Блок-схема основной программы
Нет
Да
Нет
Да
Да
Нет
Да
Приложение 2. Блок-схема подпрограмы
Приложение 3. Функциональная схема устройства
Приложение 4. Схема электрическая принципиальная