5
Министерство общего и профессионального образования Российской Федерации
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ
(ТУСУР)
Кафедра промышленной электроники (ПрЭ)
УСТРОЙСТВО_КОНТРОЛЯ_ИНТЕНСИВНОСТИ
ДВИЖЕНИЯ
Пояснительная записка к курсовому проекту по дисциплине
«Микропроцессорные устройства и системы»
ФЭТ КП.ХХХХХХ.001 ПЗ
Студент группы 367-3
________ Д.А. Сахно
Руководитель проекта
аспирант кафедры ПрЭ
_______М.Ю. Шевелев
АННОТАЦИЯ
Дисциплина «Цифровая и микропроцессорная техника» (ЦиМПТ) является
одной из центральных фундаментальных дисциплин, изучаемых будущими
инженерами специальности «Промышленная электроника». Любая инженерная
деятельность без знания основ данной дисциплины является
несостоятельной. ЦиМПТ является дисциплиной жестко привязанной к
прикладным схемотехническим задачам.
Схемотехническая деятельность многогранна и предполагает умение решать
различные виды схемотехнических задач, в том числе задач синтеза
электронных схем, то есть проектирования электронных устройств заданного
функционального назначения.
Микропроцессоры являются основой совершенно нового поколения
интеллектуальных машин. Современные специалисты в области электронной
техники должны обладать знаниями о микропроцессорах и микропроцессорных
систем.
Данный курсовой проект позволит сделать первые серьезные шаги в
применении этих и других знаний для оптимального проектирования
электронных систем, так как процесс проектирования всегда связан с
выбором оптимального варианта из множества возможных.
Разработанное устройство контроля интенсивности движения машин через
мост позволяет наглядно на практике рассмотреть возможности применения
микропроцессорных систем в быту. Данное устройство воспроизводит таймер
и счетчик внешних событий в общем корпусе. Оно просто в использовании и
может применяться как в ГАИ, так и дорожными службами.
Министерство общего и профессионального образования Российской Федерации
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ
(ТУСУР)
Кафедра промышленной электроники (ПрЭ)
УТВЕРЖДАЮ
Зав. кафедрой ПрЭ
_______А. В. Кобзев
ЗАДАНИЕ
по курсовому проектированию
студенту Сахно Дмитрию Анатольевичу
группа №367-3 факультет электронной техники.
1. Тема проектирования: Разработка устройства контроля интенсивности
движения через мост.
2. Срок сдачи студентом законченного проекта:
3. Исходные данные к проекту: Устройство ведет подсчет количества
автомобилей, проехавших через мост, и по запросу внешнего устройства
выдает час-пик и количество автомобилей, проехавших в этот час.
4. Содержание пояснительной записки (перечень подлежащих разработке
вопросов): выбор микроконтроллера, обоснование функциональной схемы,
распределение функций между аппаратными и программными средствами,
разработка полной принципиальной схемы устройства с перечнем элементов,
алгоритм работы программы, листинг управляющей программы.
5. Перечень графического материала (с точным указанием обязательных
чертежей): функциональная схема устройства, схема алгоритма прикладной
программы, схема электрическая принципиальная.
6. Дата выдачи задания:
РУКОВОДИТЕЛЬ
аспирант кафедры ПрЭ Шевелев Михаил Юревич
______________
Задание принял к исполнению
Сахно Дмитрий Анатольевич
CОДЕРЖАНИЕ
1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . 6
2. Конкретизация технического задания . . . . . . . . . . . . . . . . .
. . .8
3. Разработка функциональной схемы устройства . . . . . . . . . . . . 9
4. Алгоритм работы устройства . . . . . . . . . . . . . . . . . . . . .
. . . . 11
5. Разработка управляющей программы . . . . . . . . . . . . . . . . . .
. . 13
6. Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .14
7. Список использованной литературы . . . . . . . . . . . . . . . . . .
. . . 15
Приложение А. Листинг управляющей программы . . . . . . . . . . 16
Приложение Б. Карта прошивки памяти программ . . . . . . . . . . 21
1. ВВЕДЕНИЕ.
Широкое внедрение во все сферы человеческой деятельности получила
микропроцессорная техника. Этот процесс неразрывно связан как с
развитием многочисленных сложных технических разработок, так и с уровнем
подготовки в этой области специалистов самого различного профиля.
Микропроцессоры, как основа совершенно нового поколения
интеллектуальных машин, встречаются повсюду. В настоящее время
микропроцессорные системы широко внедряются во все сферы учебной,
научной и производственной деятельности. Вследствие создания
программируемого элемента, называемого микропроцессором, можно
рассчитывать на ускорение разработок искусственного интеллекта.
Электронные вычислительные машины широко используются с 50-х годов.
Сначала это были ламповые и дорогие машины, предназначенные для
административно-управленческих целей, доступные только крупным
предприятиям. Из-за появления нового элемента – микропроцессора
структура и формы вычислительных машин изменились. Микропроцессор – это
интегральная схема (ИС), обладающая такой же производительностью при
переработке информации, что и большая ЭВМ. Более точно – это очень
сложное программируемое устройство малых размеров, представляющее собой
большую интегральную схему (БИС). Электронные вычислительные машины
работают в соответствии с загружаемой в них программой, микро-ЭВМ
действуют по такому же принципу, она содержит микропроцессор и, по
меньшей мере, один какой-либо либо тип полупроводниковой памяти.
Выполнение курсового проекта требует от будущего специалиста
промышленной электроники обязательных знаний не только о
микропроцессорах и микропроцессорных системах в общем, т. е. сведениями
об её аппаратной и программной частях, но и о различных аспектах
архитектуры, функционирования и применения микропроцессоров и
микропроцессорных систем. Курсовой проект позволит студентам укрепить
знания в области цифровой и микропроцессорной техники, почувствовать
себя специалистами в области разработки этой аппаратуры и её
программного обеспечения.
Кроме того, проектирование микропроцессорных систем наряду с
организацией центрального процессора, подключением памяти и устройств
ввода/вывода информации связано с разработкой прикладных программ на
языке ассемблера используемого микропроцессора. Для успешного и
эффективного построения микропроцессорных систем необходимо в
совершенстве знать их программные возможности и предоставляемые ими
средства. На этапе разработки прикладной программы используются
различные компьютерные средства поддержки проектирования:
кросс-трансляторы, эмуляторы, редакторы текстов, программаторы.
При выполнении курсового проекта прямые интересы проектировщика
электронного устройства замыкаются на решении специальных технических
проблем: моделирование технического объекта, его эксплуатация и
управление, разработки различных видов технологии и оборудования и т. д.
В проекте раскрываются сложные вопросы структуры, функционирования,
принципов построения аппаратных и программных средств микропроцессоров и
микропроцессорных систем.
В курсовом проекте по ЦиМПТ микропроцессор является основой для
построения электронного устройства с заданными в техническом – задании
функциональными свойствами. Применение однокристальных микроконтроллеров
в цифровых электронных устройствах обеспечивает достижение исключительно
высоких показателей эффективности при низкой стоимости.
2. КОНКРЕТИЗАЦИЯ ТЕХНИЧЕСКОГО ЗАДАНИЯ
Конструктивные особенности этого устройства: диапазон рабочих
температур, конструктивное исполнение, характеристики аналоговых узлов и
т. д.
Устройство ориентировано на установку на четырех полосах проезжей части
моста, оно работает в режиме таймера и одновременно счетчика внешних
импульсов с входа INТ0, которые создают автомобили, проезжающие по
дорожным пластинам (конструктивно они похожи на большие кнопки). По
уровню логической “1” входа INТ1 программа выдает на внешнее устройство
количество автомобилей в час-пик и час, в которое это количество
автомобилей было достигнуто. Контролируемое количество автомобилей не
должно превышать 9999 за час, иначе переполнение регистров может вызвать
некорректную работу устройства.
Применение микроконтроллера в данном устройстве вызвано задачами
подсчета внешних импульсов при параллельной работе часов и выводе нужной
информации на цифровые индикаторы и внешнее устройство.
Разработанный прибор по заданным характеристикам и выполняемым им
функциям должен выпускаться в специальном корпусе, обеспечивающем
температурный режим, не нарушающий работоспособность микропроцессорной
системы.
3. РАЗРАБОТКА ФУНКЦИОНАЛЬНОЙ СХЕМЫ УСТРОЙСТВА
Устройство можно спроектировать с применением однокристального
микроконтроллера семейства МК51. Микросхемы семейств МК48 и МК51
получили наибольшее распространение среди микросхем такого класса.
Использование микросхемы К1830ВЕ51 в данном случае – самый экономичный
вариант реализации устройства с удовлетворяющими требованиями
быстродействия. Функциональная схема устройства изображена на рисунке
3.1. Для подсчета количества автомобилей к линии пота Р3 (INT0)
микроконтроллера подключаем датчики с коммутатором импульсов, c которого
снимаем сигнал на вход INТ0 при проезде автомобиля. Датчик формирует
импульс с единичным уровнем в тот момент, когда автомобиль проезжает по
нему. Принципиальная схема датчика приведена на рисунке 3.2.
Датчик представляет собой гигантские кнопки шириной в половину полосы и
длинной 3м. При проезде автомобиля по двум частям полосы дорожного
покрытия формируется единичный импульс, который переключает счетный
триггер из “1” в “0” и наоборот. В результате на триггере сформируется
единичный импульс, соответствующий по длительности времени проезда
автомобиля.
Затем, после формирования сигналов с датчиков, информация поступает на
коммутатор.
Вывод информации о текущем времени осуществляется через порты Р1 и Р2 и
светодиодные семи-сегментные цифровые индикаторы HG1.. HG4, в качестве
которых можно использовать индикаторы типа АЛС324А. Индикаторы
подключаются к линиям портов микроконтроллера через дешифраторы
DD2..DD5, в качестве которых используются микросхемы 514ИД1,
преобразующие двоично-десятичное содержимое портов в коды управления
цифровыми индикаторами. Начальные установки таймера реального времени
задаются кнопками подключенными к линиям Т0 и T1 порта Р3, которые
обозначаются на функциональной схеме «час» и «мин». Сразу при включении
устройство переходит в режим счета.
Программно реализуется счетчик внешних событий на регистрах R4 и R6, а
таймер реального времени на таймере-счетчике Т/С1. Импульс, приходящий с
коммутатора вызывает увеличение содержимого счетчика, причем информация
о максимальном значении автомобилей и час-пике обновляется каждый час.
Время берется из таймера реального времени.
4. АЛГОРИТМ РАБОТЫ УСТРОЙСТВА
При включении устройства происходит обнуление информации и сброс
счетчика коммутатора единичным импульсом Urd. Почти одновременно с этим
производится сброс триггеров. Эпюры напряжений на основных элементах
устройства приведены на рисунке 4.1.
Рисунок 4.1. Эпюры напряжений на основных элементах схемы.
Рассмотрим наихудший случай для проектируемой системы: пусть по четырем
полосам через датчики одновременно проехали автомобили. Тогда коммутатор
будет распределять импульсы следующим образом: на счетчик поступают
тактирующие импульсы Uwr, формируется код номера датчика, линию которого
надо опросить. Этот код поступает на мультиплексор, который осуществляет
подключение соответствующего датчика к микропроцессору. На выходе
коммутатора будут информационные импульсы Uвых. При единичном состоянии
датчика триггер сбрасывается в “0” импульсом Urst для предотвращения
повторного учета “старой” информации.
При каждом приходе импульса по линии INТ0 порта Р3 содержимое регистров
R4 и R6 будет увеличиваться, при этом параллельно будет работать таймер
реального времени. Каждый час информация будет обновляться, будет
происходить сравнение количества автомобилей, проехавших за минувший час
через мост с максимальным количеством автомобилей, находящимся в памяти
МК.
При поступлении на вход INT1 положительного единичного импульса, через
последовательный порт, через регистр сдвига, дешифраторы на
семи-сегментные цифровые индикаторы внешнего устройства выводится
количество автомобилей, проехавших через мост в час-пик и сам час-пик.
5. РАЗРАБОТКА УПРАВЛЯЮЩЕЙ ПРОГРАММЫ.
Схема алгоритма работы управляющей программы изображена на рисунке 5.1.
После включения устройства производится операция обнуления и установки
начальных параметров. Разрешаются прерывания от таймера-счетчика и
запускается таймер реального времени, причем.
Счетчик внешних событий, реализованный на регистрах R4 и R6, будет
считать количество проехавших автомобилей, обнуляясь каждый час, а
информация будет сравниваться с хранимой в памяти и обновляться. Также
информация будет обновляться каждые сутки.
6. ЗАКЛЮЧЕНИЕ
Микропроцессоры и микропроцессорные системы являются основой построения
электронных устройств с заданными функциональными свойствами. Решающими
факторами при проектировании таких устройств являются удобство
практической эксплуатации и новый набор качественных характеристик
(более высокое быстродействие, точность, новые функциональные
возможности) по сравнению с домикропроцессорным вариантом реализации
подобного устройства. В таком варианте изделие функционирует автономно и
не требует постоянного вмешательства человека.
Данный курсовой проект позволил сделать серьёзные упражнения в
применении знаний, полученных в процессе изучения дисциплины
“Микропроцессорные устройства и системы”.
7. СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ.
ОС ТАСУР 6.1-97. Работы студенческие учебные и выпускные
квалификационные. Общие требования и правила оформления.
Шарапов А. В. Микропроцессорные устройства и системы. Методические
указания к выполнению курсового проекта. – Томск: ТУСУР, 1998. – 39 с.
Шарапов А. В. Примеры решения схемотехнических задач. Учебное пособие. –
Томск: ТИАСУР, 1994. – 141 с.
Шарапов А. В. Цифровая и микропроцессорная техника: Учебное пособие. 2-е
изд., перер. и доп. – Томск: Изд-во Том. Ун-та, 1997. – 108 с.
Токхайм Р. Микропроцессоры: Курс и упражнения/ Пер. С англ., под ред. В.
Н. Грасевича. – М.: Энергоатомиздат, 1988. – 336 с.
Приложение А
Листинг управляющей программы
Основная программа:
ORG 00H;начальный адрес программы
CLR A;очистка аккумулятора
;начальная загрузка счетчика часов
MOV R5,A;начальная загрузка
MOV R7,A;счетчика минут
MOV P2,A;начальная загрузка счетчика секунд
MOV R2,#1;загрузка
MOV R1,#1;счетчиков генератора
MOV TH1,#156;секундных импульсов
MOV TMOD,#20H;T/C1 в режиме 2
MOV IE,#8DH;разрешение прерываний от T/C1
SETB TR1;старт таймера T/C1
SJMP MAIN;Переход к основной программе
;—–====== П/п обслуживания прерывания от T/C1 =====——–
ORG 1BH;вектор прерывания
PUSH PSW;задержка
DJNZ R2,EXIT;в одну
MOV R2,#1;секунду
DJNZ R1,EXIT;
MOV R1,#1;
PUSH ACC;
JNB T0,M1;коррекция минут
JNB T1,M2;коррекция часов
MOV A,R7;счетчик секунд
ADD A,#1;
DA A;
MOV R7,A;
CJNE R7,#60H,M3;
MOV R7,#0;
M1:MOV A,R5;счетчик минут
ADD A,#1;
DA A;
MOV R5,A;
CJNE R5,#60H,M3;
MOV R5,#0;
M2:CALL COMP;Запуск п/п выявления мах кол-ва а/м.
MOV R4,#0 ;Обнуление количества а/м,
MOV R6,#0;проехавших через мост за час.
MOV A,R3;Счетчик часов.
ADD A,#1;
DA A;
MOV R3,A;
CJNE R3,#24H,M3;
MOV R3,#0;Установка 0 (24) часов.
MOV R4,#0;Обнуление количества а/м, проехавших
MOV R6,#0 ;через мост, с началом новых суток.
M3:MOV P1,R3;Вывод информации .
MOV P2,R5;индикаторы.
POP ACC;Восстановление аккумулятора.
EXIT:POP PSW;Восстановление регистра PSW.
RETI;Возврат из п/п.
;—–======== Основная программа. ========———-
MAIN:MOV R4,#0;Обнуление
MOV R6,#0;количества а/м.
MOV P0,#0FFH;Сброс триггеров
SETB RD;Сброс счетчика.
NOP ;Задержка в 1мкс (для срабатывания CT)
CLR RD;
MOV P0,#0;Восстановление работы триггеров.
SETB WR ;Импульс переключения линий с датчиков.
MOV SP,#100;Установка указателя стека.
BEGIN:MOV B,#4;Число датчиков.
MOV R0,#1;R0=1.
CYCLE:CLR WR;Импульс переключения линий с датчиков.
NOP;Задержка в 1мкс (для срабатывания CT и MS).
JNB INT0,J11;Опрос линии порта (проверка состояния датчиков).
MOV P0,R0;Сброс соответсвующего триггера датчика
CALL SUM;Вызов п/п суммипрвания.
MOV P0,#0;Восстановление счетнго режима триггера
J11:MOV A,R0;A=R0.
RL A;Пестановка сбрасывающего бита триггеров.
MOV R0,A;R0=A.
SETB WR;Импульс переключения линий с датчиков.
DJNZ B,CYCLE;B=B-1. If B<>0, то переход на новый цикл
;опроса датчиков.
JB INT1,J2;Если INT1=1, то J2,
CALL DSPLY; иначе вызов п/п вывода инф-ции на
;внешнее устройство.
J2:SJMP BEGIN;Переход на начало опроса датчиков.
;П/п суммирования количества прошедшего транспорта.
SUM:MOV A,R6;Суммирование десятков.
ADD A,#1;A=A+1.
DA A;Десятичная коррекция.
MOV R6,A;R6=A.
JNC S1;Если С<>1, то S1,
MOV A,R4; иначе прибавить 1 к сотням.
ADD A,#1;A=A+1.
DA A;Десятичная коррекция.
MOV R4,A;R4=A.
S1:RET;Возврат из п/п.
;——-===== П/п сравнения количесва а/м, прошедших ранее, ======—–
;с прошедшими в этот час.
COMP: MOV A,R0;Сохранение R0
PUSH ACC;в стеке.
MOV R0,#20H;Адрес хранения младшего байта максимального
;количеств а/м.
MOV A,R6;A=R6.
SUBB A,@R0;A=A-@R0.
JC C1;Если содержимое @R0>A, то переход к C1,
MOV A,R6;иначе записать
MOV @R0,A;в память мах. кол-во а/м.
C1:INC R0;Увеличение указателя памяти.
MOV A,R4;A=R4.
SUBB A,@R0;
JC C2;
MOV A,R4;
MOV @R0,A;
INC R0;
MOV A,R3;
MOV @R0,A;
POP ACC;Восстановление
MOV R0,A;R0 из стека.
C2:RET;Возврат из п/п
;———======= П/П ВЫВОДА ДАННЫХ НА ВНЕШ. УСТР-ВО ========——–
DSPLY:MOV R0,#20H;Начальный адрес данных.
MOV SBUF,@R0;Вывод данных ч/з последовательный порт
INC R0;Увеличение указателя памяти.
MOV SBUF,@R0;
INC R0;
MOV SBUF,@R0;
INC R0;
RET;Возврат из п/п.
END
Приложение Б
Карта прошивки памяти программ
0: 1: 2: 3: 4: 5: 6: 7: 8: 9: A: B: C: D: E: F:
0000: 99 00 9A 0FD5 0E 03 F0 A9 0D 47 A8 0C 68 A8 C5
0010: 26 10 27 A8 A9 AA AB AC AE BD05 36 1B 14 42 14
0020:53 FD 47 53 0F AD FE 47 53 F0 6DAD39 FE 53 F0
0030: 3A47 AED5 69 C5 F6 3E FD D5 68 C5 E6 40 14 6F
0040: 04 10 28 03 01 57 28 29 13 00 57 29 BF 2F EF4E
0050: 26 42 83 2A 68 57 2A 2B 79 57 2B 2C 13 00 57 B2
0060: 6E2C2D 03 01 57 2D 2E 13 00 57 2E 04 53 83 56
0070: 6F 23 FE 9F 46 74 23 01 8F 83 FF FF FF FF FF FF
0080: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
0090: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00A0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00B0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00C0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00D0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00E0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00F0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
Нашли опечатку? Выделите и нажмите CTRL+Enter