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

При разработке программы использовался программный продукт MPLAB v.3.22 производства фирмы Microchip. Он представляет собой интегрированную среду, включающую в себя программный эмулятор, внутрисхемный эмулятор и встроенный текстовый редактор и распространяется свободно этой фирмой. Этот пакет поддерживает серии микроконтроллеров, начиная с PIC 16C5X и заканчивая PIC 17CXX. При разработке и отладке использовался программный эмулятор этого пакета.

Головная программа написана по алгоритму, схема которого приведена на рис.5.1.

; головная программа

list p=16c73a, f=inhx8m

#include 16c73a.inc

;-------------------------------------------------------------------------------

CC equ 20 ;присвоение символических имен

RPR equ 21 ;используемым регистрам

RPRTMR1 equ 22

SU equ 23

KK equ 24

SPER equ 25

SPOS equ 26

SPOP equ 27

SSIG equ 28

NK0 equ 29

NK1 equ 2A

NK2 equ 2B

NK3 equ 2C

VK0 equ 2D

VK1 equ 2E

VK2 equ 2F

VK3 equ 30

SN equ 31

BUK equ 32

KVER equ 33

SSBR equ 34

;--------------------------------------------------------------------------------

org 0

goto Begin ;переход к началу программы

org 4

call RZINT ;переход к обработчику прерываний

;------------------------------------------------------------------------------

Begin: bcf STATUS, RP0 ;переход к 0 банку памяти

clrf INTCON ;настройка регистров

clrf PIR2 ;специальных функций

movlw B’00111100’

movwf T!CON

bsf STATUS, RP0 ;переход к 1 банку памяти

movlw B’11000000’ ;настройка регистров

movwf OPTION ;специальных функций

clrf TRISA

movlw B’11100001’

movwf TRISB

movlw B’00110111’

movwf TRISC

clrf PCON

;----------------------------------------------------------------------------------

bcf STATUS, RP0 ;переход к 0 банку памяти

clrf PORTA ;настройка выходных портов

bcf PORTC, RC7

;----------------------------------------------------------------------------------

movlw 1

movwf CC ;начальная установка слова состояния

movlw 2

movwf SU ;начальная установка счетчика ударов

;-----------------------------------------------------------------------------------

Start: btfsc CC, 0 ;анализ слова состояния

btfss CC, 0

goto Trev

btfsc CC, 1

goto Og

call Ohrana ;вызов подпрограммы Ohrana

goto Start

Trev: call Trevoga ;вызов подпрограммы Trevoga

goto Start

Og: call Ogid ;вызов подпрограммы Ogid

goto Start

end

В состав головной программы входит подпрограмма режима охраны Ohrana. Согласно алгоритму, схема которого представлена на рис.5.2. была написана подпрограмма Ohrana. Текст ее приведен ниже.

; подпрограмма Ohrana

Ohrana:

bcf STATUS, RP0 ;переход к 0 банку памяти

bsf PORTA, RA1 ;блокирование зажигания

bsf PORTA, RA3 ;сигнал закрытия ЦЗ

call Del1 ;задержка 1 с

bcf PORTA, RA3

movlw B’10011000’ ;разрешение прерываний

movwf INTCON ;от датчиков

Mor: bsf PORTA, RA4 ;вкл. светодиода

call Del1 ;задержка 1 с

bcf PORTA, RA4 ;выкл. светодиода

call Del1 ;задержка 1 с

goto Mor

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

; подпрограмма RZINT

RZINT:

movf INTCON, 0 ;запоминание разрешенных

movwf RPR ;или запрещенных прерываний

movf PIE1, 0 ;

movwf RPRTMR1 ;

bcf INTCON, 7 ;запрет всех прерываний

bcf PIE1, 0 ;

btfsc INTCON, RBIF ;определение источника прерывания

goto AAA ;переход если прерывание от порта В

A11: btfsc PIR1, TMR1IF

goto BBB ;переход если прерывание от таймера

btfsc INTCON, INIF

goto CCC ;переход если прерывание от ДК

redfie ;возврат

AAA: btfss PORTB, RB5 ;определение источника прерывания

goto AA1 ;переход если прерывание от ДД

btfsc PORTB, RB6

goto BB1 ;переход если прерывание от УЛЗД

btfsc PORTB, RB7

goto CC1 ;переход если прерывание от ДУ

goto A11

AA1: movlw 2

movwf CC ;установка режима “Тревога”

goto Beg

BB1: movlw 2

movwf CC ;установка режима “Тревога”

goto Beg

CC1: call OPDU ;вызов подпрограммы OPDU

goto Beg

BBB: call OPTMR1 ;вызов подпрограммы OPTMR1

goto Beg

CCC: call OPPK ;вызов подпрограммы OPPK

goto Beg

Beg: movf RPR, 0 ;восстановление запомненных

movwf INTCON ;разрешенных или запрещенных

movf RPRTMR1, 0 ;прерываний

movwf PEI1 ;

goto Start

В состав подпрограммы обработки прерываний RZINT входит подпрограмма обработки прерывания от датчика ударов OPDU, текст которой приведен ниже а схема алгоритма на рис.5.4.

 

; подпрограмма OPDU

OPDU:

bsf INTCON, 7 ;разрешение прерываний от датчиков

bsf PORTA, RA5 ;включение сирены

call Del05 ;задержка на 0,5 с

bcf PORTA, RA5 ;выкл. сирены

decf SU, 1 ;декремент счетчика ударов

btfsc STATUS, Z

goto PPP ;переход если счетчик ударов равен 0

call Del3 ;задержка на 3с

movlw 2

movwf SU ;восстановление счетчика ударов

goto Start

PPP: movlw 2

movwf SU ;восстановление счетчика ударов

movwf CC ;установка режима “Тревога”

goto Start

Также в состав подпрограммы RZINT входит подпрограмма обработки прерывания от таймера TMR1. Ее текст приведен ниже, а схема алгоритма на рис.5.12.

; подпрограмма OPTMR1

OPTMR1:

decf SSBR, 1 ;декремент счетчика сбросов

btfsc STATUS, Z

goto FFF ;переход если счетчик сбросов равен 0

bcf PIR1, 0 ;сброс флага прерывания от таймера

bsf T1CON, 0 ;запуск таймера

return ;возврат

FFF: bcf PIE1, 0 ;запрет прерывания от таймера

goto MET1



Информация о работе «Микропроцессорная система охранной сигнализации автомобиля»
Раздел: Коммуникации и связь
Количество знаков с пробелами: 109723
Количество таблиц: 12
Количество изображений: 32

Похожие работы

Скачать
122653
9
15

... ставкам. 7.2. Локальная смета Таблица 5. Наименование стройки – музей Г.Р. Державина по адресу: наб. р.Фонтанки, 118. ЛОКАЛЬНАЯ СМЕТА на приобретение, монтаж и пусконаладочные работы системы охранной сигнализации Сметная стоимость - 1365,059 тыс.руб Нормативная трудоемкость - 6652,87 чел-ч Сметная заработная плата - 415,896 тыс.руб Составлена в ценах 2005 г. № ...

Скачать
98975
2
0

... информации о количестве полученной потребителем или выработанной производителем тепловой энергии, температуре, давлении, объеме (массе) теплоносителя и о времени работы в открытых и закрытых водяных системах теплоснабжения при давлениях до 1,6 МПА (16 кгсм2) и температурах до +150 °С. Область применения - теплоэнергетика, системы коммерческого учета расхода горячей воды и тепловой энергии, ...

Скачать
56862
6
17

... настройки процесса работы МП. - микроконтроллер – ядро всего устройства, содержащее необходимую информацию в виде программного кода, записанного во встроенное ПЗУ, в котором прописан алгоритм работы системы. - считыватель ключей – устройство, с помощью которого система сигнализации ставится/снимается в режим охрана. 8)  Конструкторские требования (габариты, установочные, присоединительные ...

Скачать
167649
57
1

... сигналами времени. Ядро предлагает интерфейс для программирования приложения с целью получения функций в виде отдельных программ. 1.2 Разработка автоматизированной системы управления электроснабжением КС «Ухтинская» 1.2.1 Цель создания АСУ-ЭС Целью разработки является создание интегрированной АСУ ТП, объединяющей в единое целое АСУ электрической и теплотехнической частей электростанции, ...

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


Наверх