- •Проектирование секундомера.
- •Экономические показатели
- •Требования к использованию автоматизации инженерного труда
- •Материалы, предоставляемые по окончанию работы
- •Введение
- •Разработка схемы электрической структурной
- •Разработка электрической принципиальной схемы
- •Разработка программы
- •Заключение
- •Список использованных источников
- •1 Шарапов а.В. Микроэлектроника: Учебное пособие [Электронный ресурс]/ а.В. Шарапов. – Томск: тусур, 2007. – 138с. – Режим доступа: https://edu.Tusur.Ru/publications/833.
Экономические показатели
Уточняются в процессе разработки. В себестоимость входит цена на материал, элементную базу, изготовление корпуса и изготовление печатных плат.
Требования к использованию автоматизации инженерного труда
Не предъявляются.
Материалы, предоставляемые по окончанию работы
8.1 Пояснительная записка, состоящая из:
Техническое задание;
Введение;
Разработка схемы электрической структурной;
Разработка схемы электрической принципиальной;
Разработка управляющей программы;
Заключение;
Список использованных источников.
8.2 Требования к предъявляемым материалам
Все предъявляемые материалы должны соответствовать требованиям действующих стандартов, методических указаний по дипломному проектированию и образовательному стандарту ОСТ ТУСУР 2013-01.
8.3 Макеты
Не предъявляются.
Оглавление
Введение 7
1. Разработка схемы электрической структурной 8
2. Разработка электрической принципиальной схемы 8
3. Разработка программы 9
Заключение 16
Список использованных источников 17
Введение
Секундомер – прибор для измерения промежутков времени (в секундах и долях секунды, минутах, часах); механические или электронные часы с кнопочно-рычажной системой для пуска и остановки механизма и возврата указателя (стрелки, цифрового индикатора) в исходное положение.
Разработка схемы электрической структурной
По результатам анализа технического задания построим структурную схему разрабатываемого устройства.
На рисунке 2.1 представлена схема электрическая структурная
Рисунок 1.1 – Схема электрическая структурная секундомера.
Разработка электрической принципиальной схемы
Блок управления состоит из четырех кнопок. С блока управления информация о нажатой кнопке подается на микроконтроллер PIC16F648A. Микроконтроллер обрабатывает полученный сигнал и начинает выполнять определенную последовательность действий, соответствующих нажатой клавише.
Микроконтроллер ведет отсчет времени, путем счета тактовых импульсов. Данные, полученные в процессе работы микроконтроллера, передаются на устройство отображения информации – трехразрядный семисегментный индикатор GNT-5631BUE-11.
При нажатии кнопки “Сброс” происходит сброс счетчика в ноль, при этом на индикаторах высвечиваются нули.
При нажатии кнопки “Старт” микроконтроллер начинает отсчет времени, при этом информация о текущем состоянии выводится на устройство отображения.
При нажатии кнопки “Стоп” происходит остановка счета, и вывод текущего времени на индикаторы.
При нажатии кнопки “Промежуточный результат” информация о моменте нажатия кнопки выводится на устройство отображения.
Рисунок 2.1. – Схема электрическая принципиальная секундомера.
Разработка программы
Алгоритм основной программы представлен на рисунке 3.1
Рисунок 3.1 – Блок-схема основной программы.
org 00h
jmp nachalo ;переход на инициализацию
org 0bh
sjmp int0 ;прерывание Т/С0
org 1bh
jmp int1 ;прерывание Т/С1
org 30h
;Объявление переменных
start equ p2.0
stop equ p2.1
sbros equ p2.2
pr_rez equ p2.3
st equ p3.2
sr equ p3.5
ml equ p3.1
vihod equ p1
doli equ 40h
sek equ 41h
nomer_ind equ 42h
chislo equ 43h
sch_doli equ 44h
sch_sek equ 45h
TH0_znach set 0DCh ;определение начальных значений
TL0_znach set 059h ;Т/С0 и Т/С1
TH1_znach set 0F4h
TL1_znach set 01Dh
ch0 set 11000000b
ch1 set 11111001b
ch2 set 10100100b
ch3 set 10110000b
ch4 set 10011001b
ch5 set 10010010b
ch6 set 10000010b
ch7 set 11111000b
ch8 set 10000000b
ch9 set 10010000b
;Основная программа
nachalo:
mov doli,#00h ;обнуление долей секунд
mov sek,#00h ;обнуление секунд
setb EA ;разрешение прерываний
setb ET0 ;разрешение прерывания от Т/С0
setb ET1 ;разрешение прерывания от Т/С1
mov TMOD,#00010001b ;задание режима работы Т/С0 и Т/С1
;как таймеров
setb TR1 ;разрешение счета Т/С1
mov TH0,#TH0_znach ;задание начальных значений
mov TL0,#TL0_znach ;Т/С0 и Т/С1
mov TH1,#TH1_znach
mov TL1,#TL1_znach
jmp schitiv ;переход на метку schitiv
;Подпрограмма обработки прерывания таймера-счетчика ТС0
int0:
mov TH0, #TH0_znach ;задание начального значения
mov TL0, #TL0_znach ;Т/С0
inc doli ;увеличение на сотую долю секунды
mov A,doli
cjne A,#100d,int0_end ;сравнение с максимальным
;значением, в случае неравенства
;переход на метку int0_end
mov doli,#00d ;иначе - обнуление
inc sek ;увеличение на 1 секунду
mov A,sek
cjne A,#60d,int0_end ;сравнение с максимальным
;значением, в случае неравенства
;переход на метку int0_end
mov sek,#00d ;иначе - обнуление
int0_end:
reti
;Подпрограмма обработки прерывания таймера-счетчика ТС1
int1:
mov TH1, #TH1_znach ;задание начального значения
mov TL1, #TL1_znach ;Т/С1
mov doli,sch_doli
mov sek,sch_sek
mov A,nomer_ind
rrc A
mov st,C
rrc A
mov sr,C
rrc A
mov ml,C
mov B,#10d
jb ml,viv_doli
jb sr,viv_sek
viv_sek:
mov A,sek
div AB
jnb st,viv_sek_dr
mov chislo,B
sjmp viv_end
viv_sek_dr:
mov chislo,A
sjmp viv_end
viv_doli:
mov A,doli
div AB
jnb st,viv_doli_dr
mov chislo,B
sjmp viv_end
viv_doli_dr:
mov chislo,A
sjmp viv_end
viv_end:
acall indicator
inc nomer_ind
mov A,nomer_ind
cjne A,#6d, int1_end
mov nomer_ind,#00d
int1_end:
reti
;Подпрограмма “indicator”
indicator:
mov A,chislo
n0: cjne A,#0d,n1 ;вывод на индикаторы цифры “0”
mov vihod,#ch0
sjmp end_ind
n1: cjne A,#1d,n2 ;вывод на индикаторы цифры “1”
mov vihod,#ch1
sjmp end_ind
n2: cjne A,#2d,n3 ;вывод на индикаторы цифры “2”
mov vihod,#ch2
sjmp end_ind
n3: cjne A,#3d,n4 ;вывод на индикаторы цифры “3”
mov vihod,#ch3
sjmp end_ind
n4: cjne A,#4d,n5 ;вывод на индикаторы цифры “4”
mov vihod,#ch4
sjmp end_ind
n5: cjne A,#5d,n6 ;вывод на индикаторы цифры “5”
mov vihod,#ch5
sjmp end_ind
n6: cjne A,#6d,n7 ;вывод на индикаторы цифры “6”
mov vihod,#ch6
sjmp end_ind
n7: cjne A,#7d,n8 ;вывод на индикаторы цифры “7”
mov vihod,#ch7
sjmp end_ind
n8: cjne A,#8d,n9 ;вывод на индикаторы цифры “8”
mov vihod,#ch8
sjmp end_ind
n9: mov vihod,#ch9 ;вывод на индикаторы цифры “9”
end_ind:
ret
;Считывание нажатой кнопки
schitiv:
mov p2,#00h
setb p2.4
mov A,p2
;START
cjne A,#10001000b, schitiv1
setb TR0
sjmp schitiv
schitiv1:
;STOP
cjne A,#01001000b, schitiv2
clr TR0
sjmp schitiv
schitiv2:
;SBROS
cjne A,#00101000b, schitiv3
sjmp nachalo
schitiv3:
;PR_REZ
cjne A,#00011000b, schitiv
mov sch_doli,doli
mov sch_sek,sek
mov sch_min,min
sjmp schitiv
end