Разработка электронных часов на базе МК51

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    268,59 Кб
  • Опубликовано:
    2013-05-16
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка электронных часов на базе МК51

Содержание

Введение

. Конкретизация технического задания

.Разработка функциональной схемы

. Разработка управляющий программы

Заключение

Список использованных источников

Введение

Электро́нные часы́ - часы, в которых для отсчёта времени используются периодические колебания электронного генератора, преобразованные в дискретные сигналы, повторяющиеся через 1 с, 1 мин, 1 ч и т. д.; сигналы выводятся на цифровое табло, показывающее текущее время, а в некоторых моделях также число, месяц, год, день недели.

1. Конкретизация технического задания

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

В данном приборе предпочтительно использование однокристального микроконтроллера семейства МК51 т.к. система команд этих микроконтроллера более гибка и развита. В тоже время в корпусе данного микроконтроллера содержатся микросхемы параллельного интерфейса , программируемого таймера , ПЗУ для хранения основной программы и ОЗУ для организации стека . Наличие этих микросхем в одном корпусе микроконтроллера , так же решает проблему питания . В итоге для реализации проекта выберем микроконтроллер К1816ВЕ51 . Характеристика МК и функциональное назначение выводов микроконтроллера приведена ниже .


Микроконтроллер выполнен на основе высокоуровневой n-МОП технологии и выпускается в корпусе БИС, имеющем 40 внешних выводов. Цоколевка корпуса МК51 и наименования выводов показаны на рис. 3.1. Для работы MK51 требуется один источник электропитания +5 В. Через четыре программируемых порта ввода/вывода MK51 взаимодействует со средой в стандарте ТТЛ-схем с тремя состояниями выхода. Корпус МК51 имеет два вывода для подключения кварцевого резонатора, четыре вывода для сигналов, управляющих режимом работы МК, и восемь линий порта 3, которые могут быть запрограммированы пользователем на выполнение специализированных (альтернативных) функций обмена информацией со средой.

Таблица 2.1

МК

Аналог Intel

Объем РПП

Тип РПП

Объем РПД

Iп, мА

К1816ВЕ51

8051АН

4 Кбайт

ПЗУ

128 байт

12

150


Перед разработкой управляющей программы составим схему алгоритма прикладной программы . Схема приведенная на рис.1 описывает ход программы и основные проверки осуществляемые в ходе выполнения программы . На основе проанализированного технического задание можно вывести технические требования.

Технические требования:

четыре семи сегментных индикатора;

клавиатура состоящая из четырех кнопок;

напряжение питания устройства: 5 В:

потребляемая мощность: не более 1 Вт;

коммутируемое напряжение для звонка: 220 В .

2. Разработка функциональной схемы устройства

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

Блок клавиатуры. Для выбора типа организации клавиатуры (линейной или матричной) нужно определить, сколько кнопок нужно и какие функции они должны выполнять.

Функции, выполняемые клавиатурой:

корректировка времени.

кнопка «Часы+1». При нажатии кнопки устройство прибавляет 1 ед. часа. При достижении 23.00, следующее нажатие кнопки приведёт время в исходное положение.

кнопка «Часы-1». При нажатии кнопки устройство убавляет 1 ед. часа.

кнопка «Минуты+1». При нажатии кнопки устройство прибавляет 1 ед. минуты. При достижении 00.59, следующее нажатие кнопки приведёт время в исходное положение.

кнопка «Минуты-1». При нажатии кнопки устройство убавляет 1 ед. минуты.

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

Блок индикации. Объем информации, подлежащий отображению в обычном режиме и режиме коррекции: текущее время. Наиболее оптимальным вариантом будет являться семисегментный индикатор.

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

В обычном светодиодном индикаторе девять выводов: один идёт к катодам всех сегментов, и остальные восемь - к аноду каждого из сегментов. Эта схема называется «схема с общим катодом», существуют также схемы с общим анодом. Часто делают не один, а два общих вывода на разных концах цоколя - это упрощает разводку, не увеличивая габаритов.

Многоразрядные индикаторы часто работают по динамическому принципу: выводы одноимённых сегментов всех разрядов соединены вместе. Чтобы выводить информацию на такой индикатор, управляющая микросхема должна циклически подавать ток на общие выводы всех разрядов, в то время как на выводы сегментов ток подаётся в зависимости от того, зажжён ли данный сегмент в данном разряде. Таким образом, чтобы получить десятиразрядный экран микрокалькулятора, нужны всего восемнадцать выводов (8 анодов и 10 катодов) - а не 81. Сходным образом сканируется клавиатура калькулятора.

Существуют специальные микросхемы семисегментных дешифраторов, переводящие четырёхбитный код в его семисегментное представление. К примеру, отечественные (КР)514ид1 для индикаторов с общим катодом или (КР)514ид2 с общим анодом. Иногда дешифраторы встраивают прямо в индикатор. В настоящее время, в связи с широким распространением однокристальных микроконтроллеров с GPIO, семисегментные светодиодные индикаторы подключаются напрямую к выводам микроконтроллера.

Рис 1 - функциональная схема устройства.

Разработка алгоритма работы

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

Основные функции, которые будет выполнять микроконтроллер:

ежесекундно считывать текущее время из микросхемы часов реального времени и выводить на индикатор;

после вывода времени производить вычисление номера смены и также выводить их на индикатор;

ежеминутно проверять сетку расписания на совпадение времени и при совпадении давать звонок в течении 1 минуты;

непрерывно производить сканирование клавиатуры, т.е. производить проверку на нажатие какой-либо клавиши.

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

Микросхема часов настраивается таким образом, что каждую секунду выдает запрос прерывания на микроконтроллер. Соответствующая подпрограмма обработки прерывания считывает текущее значение времени из микросхемы часов и выводит эти значения на семисегментный индикатор. Затем сравнивает это значение с временной сеткой в EEPROM. Если значения совпадают, то на соответствующий вывод порта подается активный уровень для включения звонка и затем запускается таймер T0 для формирования временной задержки в 1 минуту (длительность звонка). Таймер Т0 переполняется определенное число раз и подается команда на выключение звонка и остановку таймера. Загрузку сетки расписания производим вручную.

Рис 2.Схема алгоритма прикладной программы

Рис 3.Схема алгоритма времени

3. Разработка управляющей программы

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

программа “ЧАСЫ” и дополнена до конечного вида . Листинг

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

Начальная установка и запуск часов в 00 00 00

         00H   MAIN ; Подпрограмма обслуживания прерывания от таймера00BH                    ; Вектор прерыванияR0,EXIT       ; Задержка в однуR0,#1        ; секундуR1,EXITR1,#2T0,M1        ; Коррекция минутT1,M2     ; Коррекция часовA,35H          ; Счетчик единиц секунд

INC   A       35H,AA,#10,EXIT35H,#0

MOV A,34H       ; Счетчик десятков секунд

INC   A       34H,AA,#6,EXIT34H,#0

M1:   MOV A,33H       ; Счетчик единиц минут

INC   A       33H,AA,#10,EXIT33H,#0

MOV A,32H       ; Счетчик десятков минут

INC   A       32H,AA,#6,EXIT32H,#0

M2: MOV A,31H       ; Счетчик единиц часов         A       31H,A        A,#4,M3              ; Проверка на совпадение

MOV A,30H                  ; 24 часа     A,#2,M3     31H,#0       30H,#0       EXIT:         CJNE A,#10,EXIT31H,#0 A,30H ; Счетчик десятков часов

MOV 30H,A

EXIT:        RETI          ; Возврат из п/п прерываний:                                    ; Начальная инициализация   30H,#0      ; Счетчик десятков часов      31H,#0      ; Счетчик единиц часов      32H,#0      ; Счетчик десятков минут     33H,#0      ; Счетчик единиц минут         34H,#0      ; Счетчик десятков секунд35H,#0           ; Счетчик единиц секунд         P1,#0FFH  P0,#0FFH  F0R0,#1    ; Начальная загрузкаR1,#2 ; счетчиков генератораTH0,#9CH          ; секундных импульсовTMOD,#02H      ; Т/С0 в режиме 2IE,#82H   ; Разрешение

; прерываний от Т/С0TR0             ; Старт таймера Т/С0

INDIC:       MOV DPTR,#200H      A,35H                  ;        A,@A+DPTR      ;        P0,A                   ;        P1.5            ;        P1.0            ;        A,34H                  ;        A,@A+DPTR         ;        P0,A           ;        P1.0            ;        P1.1            ;        A,33H                  ;         A,@A+DPTR      ;        P0,A           ;        P1.1            ;        P1.2            ;        A,32H                   ;        A,@A+DPTR      ;        P0,A           ;        P1.2            ;        P1.3            ;         A,31H                  ;        A,@A+DPTR      ;        P0,A           ;        P1.3            ;        P1.4                   ;        A,30H                  ;        A,@A+DPTR      ;        P0,A           ;       P1.4           ;        P1.5            ;        F0,M100              ;        OPROS                ;INDIC       ; Основная программа

M100:        CLR  P2.0  A,34H        A,#1,INDIC         F0     INDIC:       MOV R3,#24                   ;        DPTR,#210H      R5,#0:        MOV R6,#0         A,R5 A,R6 A,@A+DPTR         A,30H,M10         R6     A,R5 A,R6 A,@A+DPTR      A,31H,M10         R6     A,R5 A,R6         A,@A+DPTR      A,32H,M10         R6     A,R5 A,R6 A,@A+DPTR      A,33H,M10         F0:    INC   R5     R5     R5     R5:    DJNZ         R3,CIKL    200H         40H,78H,44H,30H,19H,22H,02H,58H,00H,10H        210H

DB    2,2,0,0

Заключение

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

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

1. Русанов В.В., Шевелев М.Ю. Микропроцессорные устройства и системы. Учебное пособие. Томск: ТУСУР, 2007 г.

. Шарапов А.В. Цифровая и микропроцессорная техника. Томск: Изд.ТГУ

. Шарапов А.В. Микропроцессорные устройства и системы. Методическое указания к выполнению курсового проекта. Томск: Изд.ТГУ

. Дж. Уитсон. 500 практических схем на ИС. Издательство МИР. 1992г.

. А.А. Мячев. Персональные ЭВМ и микроЭВМ. Основы организации. Москва “Радио и связь” 1991г.

Похожие работы на - Разработка электронных часов на базе МК51

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!