Курсовая работа: Микроконтроллер системы управления (автосигнализация)
Программа контроллера позволяет, не выключая сигнализацию открыть багажник или капот. Эти возможности реализованы с помощью подпрограмм.
Первая подпрограмма позволяет открыть капот, не отключая всю сигнализацию. Для этого необходимо открыть капот и включить сигнализацию. Произойдет срабатывание датчика капота, контроллер издаст сигнал тревоги в течение одной секунды, за тем пауза одну секунду, за тем вновь сигнал тревоги и пауза - всего четыре секунды. В это время необходимо подать сигнал логического “0” на вход микроконтроллера подключенный к приемнику, если это было сделано, то контроллер переходит к обслуживанию подпрограммы.
В подпрограмме осуществляется опрос датчиков дверей и датчика багажника, а датчики удара и капота не опрашиваются. При срабатывании опрашиваемых датчиков производится десятикратное срабатывание сигнала тревоги.
Точно также можно открыть багажник, не отключая сигнализации.
Третья подпрограмма реализует сигнал тревоги. Используется таймер/счетчик Т/С0.
Объектные коды программы должны быть записаны в РПП, начиная с нулевой ячейки.
3. ПРОГРАММА УСТРОЙСТВА НА АССЕМБЛЕРЕ
;Определение символических имен бит портов 1 и 2
P bit P1.3 ;пульт
U bit P1.4 ;слабый удар
C bit P1.5 ;сильный удар
D bit P1.6 ;двери
E bit P1.7 ;капот
F bit P2.0 ;багажник
G bit P1.2 ;замки
H bit P1.1 ;габариты
I bit P2.0 ;клаксоны
ORG 0 ;начальный адрес программы
START: JB P,L0 ;перейти на метку L0 если бит равен 1
JMP START ;переход на начало программы
L0: CLR G ;сброс бита
L1: MOV R1,#0001h ;пересылка 1 в регистр R1
L2: CALL ALARM ;вызов подпрограммы сигнализации
L3: JB U,L6 ;перейти на метку L6 если бит равен 1
L4: JB C,L1 ;перейти на метку L1если бит равен 1
L5: MOV R1,#000Ah ;пересылка константы в регистр
JMP L2 ;перейти на метку L2
L6: JB D,L5 ;перейти на метку L5 если бит равен 1
JNB E,L7 ;прейти на метку L7 если бит равен 0
MOV R1,#0002h ;переслать константу в регистр R1