Типовая микропроцессорная система охраны и сигнализации
Теоретические принципы разработки микропроцессорной системы охраны и сигнализации. Разработка графа и таблицы переходов состояний МПСО, его аппаратного и программного интерфейса, управляющих программ режимов и специального программного обеспечения.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 12.05.2012 |
Размер файла | 37,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Введение
Системы охраны и сигнализации на основе микропроцессорного управления в настоящее время являются наиболее распространенным типом охранных устройств автомобилей. Причиной этому служит большая гибкость управления и лёгкая адаптация к внешним условиям благодаря возможности замены управляющей программы. При этом аппаратная часть систем охраны, выполняемая на основе микроконтроллера, является неизменяемой компонентой. В настоящее время в качестве микроконтроллеров систем охраны используются однокристальные микроконтроллеры фирм Intel, Atmel, MicroChip и др. В данном курсовом проекте в качестве ядра МПС используется микропроцессор Intel 80386.
1. Теоретические принципы разработки МПС охраны и сигнализации
микропроцессорный интерфейс сигнализация программа
Микропроцессорная система охраны и сигнализации содержит аппаратную часть, представленную микропроцессором, соединённым через интерфейсные схемы с датчиками и исполнительными устройствами, и программную часть, реализующую логику работы системы охраны и сигнализации. Управляющая программа включает в себя подпрограмму взаимодействия с датчиками и исполнительными устройствами и подпрограмму распознавания ситуации на основе логической обработки информации от датчиков. Основными исходными данными для проектирования и / или модернизации системы охраны и сигнализации являются перечень датчиков, их адреса в адресном пространстве микропроцессора, разрядность, способ подключения к МПС, протокол обмена данными. Основным средством для проектирования и отладки программной части является среда AFD. Датчики и радиобрелок системы охраны заменяются программным эмулятором.
Основные этапы разработки МПС охраны и сигнализации:
1. Выбор типа интерфейса для подключения датчиков и радиобрелка к МПС (интерфейс с общей шиной или интерфейс с изолированной шиной).
2. Определение режимов работы МПС, кодирование состояний.
3. Разработка графа и таблицы переходов состояний МПС.
4. Разработка аппаратного интерфейса МПС с датчиками и радиобрелком.
5. Разработка клавиатурного эмулятора датчика и эмулятора радиобрелка (при необходимости).
6. Выделение памяти для хранения текущих значений.
7. Кодирование состояний датчиков.
8. Разработка программ инициализации режимов работы МПС.
9. Разработка управляющих программ для всех режимов функционирования МПС.
10. Проведение тестовых испытаний.
Основными датчиками являются: контактные датчики закрытия дверей, капота, багажника; датчик включения зажигания; двухуровневый датчик удара, двухзонный датчик объёма, датчики обрыва питания, осадков и движения. Возможно также подключение дополнительных датчиков, вырабатывающих сигналы, аналогичные сигналам основных датчиков.
Опрос датчиков реализуется либо по прерыванию, либо программным методом. Анализ состояния датчиков осуществляется в конце каждого цикла опроса. Переход из одного режима работы МПС в другой осуществляется либо по сигналам от датчиков, либо по командам от радиобрелка. Логика функционирования МПС в каждом режиме определяется согласно типовой схеме работы системы охраны и сигнализации.
2. Разработка графа и таблицы переходов состояния МПС
Блок управления МПС функционирует в одном из трех режимов:
охрана;
сброс;
тревога,
которые задаются нажатием назначенных для этих режимов кнопок.
При подаче питания микропроцессорная система охраны и сигнализации находится в режиме «сброс» до нажатия кнопки «Р» на радиобрелке. При нажатии на кнопку «Р» происходит переход в режим охраны, в котором система находится до тех пор, пока датчики в норме. При срабатывании какого-либо датчика либо группы датчиков система охраны переходит в режим тревоги и находится в этом режиме до нажатия кнопки «О», т.е. осуществления сброса с радиобрелка. На рисунке 1 изображён граф переходов состояний МПС.
Рисунок 1 - Граф переходов состояний МПС
В таблице 1 изображены переходы состояний МПС, крестиками указаны запрещённые переходы.
Таблица 1 - Таблица переходов состояний МПС
Сброс |
Охрана |
Тревога |
||
Сброс |
Подача питания |
Кнопка «Р» на радиобрелке |
|
|
Охрана |
Кнопка «О» на радиобрелке |
«Норма» датчиков |
«Не норма» датчиков |
|
Тревога |
Кнопка «О» на радиобрелке |
|
«Не норма» датчиков |
Выделение памяти для хранения признаков:
X BYTE
Y BYTE программный интерфейс с датчиками;
Z BYTE
R BYTE - байт для хранения кодов режимов.
Логика функционирования МПСО формализована следующими правилами:
1. Сигнал от контактного датчика «Тревога».
2. Обрыв питания «Тревога».
3. Высокий уровень сигнала от датчика осадков отключение первой зоны датчика объёма.
4. Низкий уровень сигнала от датчика осадков включение первой зоны датчика объёма.
5. Превышение порога удара или порога вторжения в охраняемый объём «Тревога».
В таблице 2 приведено кодирование состояний МПС в зависимости от управляющих команд с радиобрелка. Перевод МПС в режим «Тревога» посредством радиобрелка не предусмотрен.
Таблица 2 - Кодирование состояний МПС
Адрес байта для хранения состояния |
Состояние |
Клавиша радиобрелка |
Код состояния |
|
D |
Режим «Охрана» |
«Р» |
1 |
|
L |
Режим «Сброс» |
«О» |
2 |
|
G |
Режим «Тревога» |
- |
- |
3. Разработка аппаратного интерфейса МПС
При аппаратной реализации МПСО был использован микропроцессор Intel 8086. Основными элементами блока управления являются однокристальный микропроцессор (МП), и радиобрелок. Микропроцессор соединяется с датчиками через аппаратный интерфейс. Контакты разъёма интерфейса приведены в таблице 3.
Таблица 3 - Контакты разъёма аппаратного интерфейса МПС
Контакт |
Датчики |
|
1 |
Контактный. Дверь левая передняя. |
|
2 |
Контактный. Дверь правая передняя. |
|
3 |
Контактный. Дверь левая задняя. |
|
4 |
Контактный. Дверь правая задняя. |
|
5 |
Контактный. Капот. |
|
6 |
Контактный. Багажник. |
|
7 |
Датчик битого стекла. Дверь левая передняя. |
|
8 |
Датчик битого стекла. Дверь правая передняя. |
|
9 |
Датчик битого стекла. Дверь левая задняя. |
|
10 |
Датчик битого стекла. Дверь правая задняя. |
|
11 |
Датчик битого стекла. Капот. |
|
12 |
Датчик битого стекла. Багажник. |
|
13 |
Датчики удара (вибрации). Контакт №1. |
|
14 |
Датчики удара (вибрации). Контакт №2. |
|
15 |
Датчики удара (вибрации). Контакт №3. |
|
16 |
Датчик обрыва питания. |
|
17 |
Датчик осадков. |
|
18 |
Датчик движения. |
|
19 |
Первая зона датчика объема (внешняя). |
|
20 |
Первая зона датчика объема (внешняя). |
|
21 |
Первая зона датчика объема (внешняя). |
|
22 |
Вторая зона датчика объема (внутренняя). |
|
23 |
Вторая зона датчика объема (внутренняя). |
|
24 |
Вторая зона датчика объема (внутренняя). |
В таблице 4 описано подключение датчиков к интерфейсному разъёму. Для двоичных датчиков назначено по одной клавише программного эмулятора, нажатие которой соответствует срабатыванию определённого датчика. Для датчиков вибрации и объёма, имеющих несколько порогов срабатывания, выделен ряд клавиш программного эмулятора. Взаимодействие МПС с эмуляторами датчиков и клавиш радиобрелка осуществляется по интерфейсной схеме с общей шиной. В качестве портов ввода информации от датчиков используются ячейки памяти с указанными в таблице 4 адресами.
Таблица 4 - Перечень датчиков МПСО
Контакт разъёма |
Адрес байта памяти |
Номер бита |
Клавиша эмулятора датчика |
Команда чтения ячейки памяти |
|
1 |
X |
1 |
A |
mоv al, X |
|
2 |
2 |
S |
|||
3 |
3 |
D |
|||
4 |
4 |
F |
|||
5 |
5 |
G |
|||
6 |
6 |
H |
|||
7 |
7 |
Z |
|||
8 |
8 |
X |
|||
9 |
Y |
1 |
C |
mov al, Y |
|
10 |
2 |
V |
|||
11 |
3 |
B |
|||
12 |
4 |
N |
|||
13 |
5 |
QWERTYUI |
|||
14 |
6 |
||||
15 |
7 |
||||
16 |
8 |
J |
|||
17 |
Z |
1 |
K |
mov al, Z |
|
18 |
2 |
L |
|||
19 |
3 |
q, w, e,r, t, y,u, i |
|||
20 |
4 |
||||
21 |
5 |
||||
22 |
6 |
1,2,3,4,5,6,7,8 |
|||
23 |
7 |
||||
24 |
8 |
Кодирование состояний трёхразрядного двухзонного датчика объёма приведено в таблице 5.
Таблица 5 - Кодировка состояний двухзонного датчика объёма
Контакты первой (внешней) зоны |
Клавиша эмулятора |
Контакты второй (внутренней) зоны |
||||||
19 |
20 |
21 |
1-я зона |
2-я зона |
22 |
23 |
24 |
|
0 |
0 |
0 |
q |
1 |
0 |
0 |
0 |
|
0 |
0 |
1 |
w |
2 |
0 |
0 |
1 |
|
0 |
1 |
0 |
e |
3 |
0 |
1 |
0 |
|
0 |
1 |
1 |
r |
4 |
0 |
1 |
1 |
|
1 |
0 |
0 |
t |
5 |
1 |
0 |
0 |
|
1 |
0 |
1 |
y |
6 |
1 |
0 |
1 |
|
1 |
1 |
0 |
u |
7 |
1 |
1 |
0 |
|
1 |
1 |
1 |
i |
8 |
1 |
1 |
1 |
Кодирование состояний трёхразрядного датчика удара (вибрации) приведено в таблице 6.
Таблица 6 - Кодировка состояний датчиков удара (вибрации)
Биты |
Клавиша |
|||
13 |
14 |
15 |
||
0 |
0 |
0 |
Q |
|
0 |
0 |
1 |
W |
|
0 |
1 |
0 |
E |
|
0 |
1 |
1 |
R |
|
1 |
0 |
0 |
T |
|
1 |
0 |
1 |
Y |
|
1 |
1 |
0 |
U |
|
1 |
1 |
1 |
I |
4. Разработка программного интерфейса
Для включения или отключения сигнализации необходимо подать сигнал от радиобрелка микропроцессорной системе. Клавиша «Р» переводит сигнализацию в режим охраны, а клавиша «О» - в режим сброса. Перевод осуществляется следующим образом.
Перевод в режимы охраны и сброса:
cmp InBuffer, 'O'
jnz R2
mov R, 1 ; Перевод в режим Сброс
ret
R2: cmp InBuffer, 'P'
jnz EndSensors
mov R, 2 ; Перевод в режим Охрана.
При этом если программа переводится в режим «Охрана», то в байт памяти по адресу R помещается цифра 1, если в режим «Сброс», то помещается цифра 2:
mov R, 1 ; Перевод в режим Сброс
mov R, 2 ; Перевод в режим Охрана.
На рисунке 2 изображена схема взаимодействия периферийных уст-ройств с центральным блоком.
Рисунок 2 - Схема взаимодействия периферийных устройств с центральным блоком
5. Разработка управляющих программ режимов МПСО
Режим «Сброс»
Переход в режим «Сброс» осуществляется после запуска программы или по нажатию клавиши «О». При этом в байт памяти по адресу R помещается число 1, опрос датчиков не производится. Схема перевода в режим «Сброс» изображена на рисунке 3.
Рисунок 3 - Схема перевода МПС в режим «Сброс»
Режим «Охрана»
При нажатии на клавишу «Р» происходит переход из режима «Сброс» в режим «Охрана», при этом в байт памяти по адресу R помещается шестнадцатеричная цифра 2, а на экран выводится сообщение «Охрана». В режиме «Охрана» производится опрос датчиков и клавиши «О». В случае нажатия клавиши «О» производится перевод МПСО в режим «Сброс». Пока клавиша «О» не нажата, производится циклический опрос всех датчиков. В случае получения сигнала от одного или нескольких датчиков МПСО анализирует полученные сигналы и при интерпретации их как вторжение на охраняемый объект, МПСО переходит в режим «Тревога». Схема работы в режиме «Охрана» изображена на рисунке 4.
Рисунок 4 - Схема работы МПС в режиме «Охрана»
Режим «Тревога»
При срабатывании в режиме охраны одного либо группы датчиков система сигнализации переходит в режим тревоги: на экран выводится слово «тревога!» и посылает сигнал beep. Причем этот режим работает до тех пор, пока владелец автомобиля не отключит его нажатием на клавишу «О», т.е. переведет систему в режим «сброс». Схема работы в режиме «Тревога» изображена на рисунке 5.
Рисунок 5 - Схема работы МПС в режиме «Тревога»
Опрос датчиков
Опрос датчиков осуществляется в порядке, описанном на рисунке 6.
mov al, X
and al, 00111110B
jnz ALARM
mov al, Y
and al, 01110000B
cmp al, 00110000B
jg ALARM
1-я зона датчика объема:
mov al, Z
and al, 00011100B
cmp al, 00010100B
jg ALARM
2-я зона датчика объема:
DAT2:
mov al, Z
and al, 11100000B
cmp al, 01000000B
jg ALARM
Рисунок 6 - Порядок опроса датчиков
Для опроса датчиков накладываем маски на регистры, в которые поступают данные от датчиков, и сравниваем их с необходимым признаком (срабатывание какого-либо датчика или превышение порога чувствительности), в случае совпадения с заданным признаком система переходит в режим тревоги. Причем 1-я зона датчика объема (внешняя) отключается в случае срабатывания датчика осадков.
6. Разработка специального программного обеспечения
386
model flat, stdcall
option casemap: none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\user32.inc; здесь объявление MessageBox
include \masm32\include\masm32.inc
include \masm32\include\debug.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib
includelib \masm32\lib\debug.lib
includelib \masm32\lib\user32.lib; здесь API-функция MessageBox
data
X byte 0 ; 8-пиновый разъём 1
Y byte 0 ; 8-пиновый разъём 2
Z byte 0; 8-пиновый разъём 3
R byte 1; кнопки брелка (сброс-1, охрана-2)
OutHandle DWORD 0 ; дескриптор стандартного устройства вывода
InHandle DWORD 0 ; дескриптор стандартного устройства ввода
BytesWritten DWORD? ; число выведенных байтов
BytesRead DWORD? ; число введённых байтов
InBuffer BYTE? ; однобайтовый буфер ввода
Mode DWORD? ; режим работы клавиатуры
M byte?
L byte «SBROS»
D byte «Protect»
G byte «ALARM»
dwFreq DWORD 100h; частота звука в герцах (от 25h до 7FFFh)
dwDuration DWORD 3E8h; продолжительность звука в миллисекундах (1 сек. = 3E8h)
code
start:
; - Определение дескрипторов -
INVOKE GetStdHandle, STD_OUTPUT_HANDLE
mov OutHandle, eax
INVOKE GetStdHandle, STD_INPUT_HANDLE
mov InHandle, eax
; - Вывод на экран начального состония при запуске -
BEGIN:
mov eax, 000C0027h
INVOKE SetConsoleCursorPosition, OutHandle, eax ; установка курсора
INVOKE WriteConsole, OutHandle, offset L, lengthof L, offset BytesWritten, 0
invoke Beep, 900h, 3E8h/6
invoke Beep, 24h, 3E8h/32
invoke Beep, 950h, 3E8h/6
invoke Beep, 24h, 3E8h/32
invoke Beep, 530h, 3E8h/6
invoke Beep, 24h, 3E8h/8
invoke Beep, 100h, 3E8h/6
invoke Beep, 24h, 3E8h/32
invoke Beep, 200h, 3E8h/6
invoke Beep, 24h, 3E8h/32
invoke Beep, 400h, 3E8h/6
invoke Beep, 24h, 3E8h/32
; - Управляющий алгоритм -
Opros:
Call ReadSensors
; - Вывод на экран слова «Сброс»-
; - Проверка нажата ли клавиша «О»-
cmp R, 1
jne PROTECT
;-
mov eax, 000C0027h
INVOKE SetConsoleCursorPosition, OutHandle, eax ; установка курсора
INVOKE WriteConsole, OutHandle, offset L, lengthof L, offset BytesWritten, 0
mov X, 0
mov Y, 0
mov Z, 0
invoke Beep, 930h, 3E8h/6
invoke Beep, 24h, 3E8h/16
invoke Beep, 950h, 3E8h/6
jmp Opros
; - Вывод на экран слова «Protect»-
PROTECT:
mov eax, 000C0027h
INVOKE SetConsoleCursorPosition, OutHandle, eax ; установка курсора
INVOKE WriteConsole, OutHandle, offset D, lengthof D, offset BytesWritten, 0
invoke Beep, 130h, 3E8h/6
invoke Beep, 24h, 3E8h/32
invoke Beep, 150h, 3E8h/6
invoke Beep, 24h, 3E8h/32
invoke Beep, 70h, 3E8h/6
; invoke Beep, 24h, 3E8h/8
; invoke Beep, 250h, 3E8h/6
; invoke Beep, 24h, 3E8h/32
; invoke Beep, 300h, 3E8h/6
; invoke Beep, 24h, 3E8h/32
; invoke Beep, 200h, 3E8h/6
; invoke Beep, 24h, 3E8h/32
; - ОПРОС ДАТЧИКОВ-
Oprosd:
; проверка датчиков передних дверей, капота и багажника
mov al, X
and al, 00111110B
jnz ALARM
; проверка датчика удара P>3
mov al, Y
and al, 01110000B
cmp al, 00110000B
jg ALARM
; проверяем датчик осадков
mov al, Z
and al, 00000001B
jnz DAT2
; проверка датчиков объёма первого уровня P>5
mov al, Z
and al, 00011100B
cmp al, 00010100B
jg ALARM
; проверка датчиков объёма второго уровня P>2
DAT2:
mov al, Z
and al, 11100000B
cmp al, 01000000B
jg ALARM
jmp Opros
ALARM:
mov eax, 000C0027h
INVOKE SetConsoleCursorPosition, OutHandle, eax ; установка курсора
INVOKE WriteConsole, OutHandle, offset G, lengthof G, offset BytesWritten, 0
; - СИГНАЛ-
mov ecx, 0
mov ecx, 2h
Met:
invoke Beep, 900h, 3E8h/8
invoke Beep, 910h, 3E8h/16
invoke Beep, 920h, 3E8h/32
invoke Beep, 930h, 3E8h/64
invoke Beep, 940h, 3E8h/128
invoke Beep, 950h, 3E8h/264
invoke Beep, 960h, 3E8h/32
invoke Beep, 970h, 3E8h/32
invoke Beep, 980h, 3E8h/32
invoke Beep, 990h, 3E8h/32
invoke Beep, 1000h, 3E8h/32
invoke Beep, 1010h, 3E8h/32
invoke Beep, 1020h, 3E8h/32
invoke Beep, 1030h, 3E8h/32
invoke Beep, 1040h, 3E8h/32
invoke Beep, 1050h, 3E8h/32
invoke Beep, 1060h, 3E8h/32
invoke Beep, 1070h, 3E8h/32
invoke Beep, 1080h, 3E8h/32
invoke Beep, 1090h, 3E8h/32
invoke Beep, 1100h, 3E8h/32
invoke Beep, 900h, 3E8h/8
invoke Beep, 910h, 3E8h/16
invoke Beep, 920h, 3E8h/32
invoke Beep, 930h, 3E8h/64
invoke Beep, 940h, 3E8h/128
invoke Beep, 950h, 3E8h/264
invoke Beep, 960h, 3E8h/32
invoke Beep, 970h, 3E8h/32
invoke Beep, 980h, 3E8h/32
invoke Beep, 990h, 3E8h/32
invoke Beep, 1000h, 3E8h/32
invoke Beep, 1010h, 3E8h/32
invoke Beep, 1020h, 3E8h/32
invoke Beep, 1030h, 3E8h/32
invoke Beep, 1040h, 3E8h/32
invoke Beep, 1050h, 3E8h/32
invoke Beep, 1060h, 3E8h/32
invoke Beep, 1070h, 3E8h/32
invoke Beep, 1080h, 3E8h/32
invoke Beep, 1090h, 3E8h/32
invoke Beep, 1100h, 3E8h/32
invoke Beep, 900h, 3E8h/8
invoke Beep, 910h, 3E8h/16
invoke Beep, 920h, 3E8h/32
invoke Beep, 930h, 3E8h/64
invoke Beep, 940h, 3E8h/128
invoke Beep, 950h, 3E8h/264
invoke Beep, 960h, 3E8h/32
invoke Beep, 970h, 3E8h/32
invoke Beep, 980h, 3E8h/32
invoke Beep, 990h, 3E8h/32
invoke Beep, 1000h, 3E8h/32
invoke Beep, 1010h, 3E8h/32
invoke Beep, 1020h, 3E8h/32
invoke Beep, 1030h, 3E8h/32
invoke Beep, 1040h, 3E8h/32
invoke Beep, 1050h, 3E8h/32
invoke Beep, 1060h, 3E8h/32
invoke Beep, 1070h, 3E8h/32
invoke Beep, 1080h, 3E8h/32
invoke Beep, 1090h, 3E8h/32
invoke Beep, 1100h, 3E8h/32
invoke Beep, 900h, 3E8h/8
invoke Beep, 910h, 3E8h/16
invoke Beep, 920h, 3E8h/32
invoke Beep, 930h, 3E8h/64
invoke Beep, 940h, 3E8h/128
invoke Beep, 950h, 3E8h/264
invoke Beep, 960h, 3E8h/32
invoke Beep, 970h, 3E8h/32
invoke Beep, 980h, 3E8h/32
invoke Beep, 990h, 3E8h/32
invoke Beep, 1000h, 3E8h/32
invoke Beep, 1010h, 3E8h/32
invoke Beep, 1020h, 3E8h/32
invoke Beep, 1030h, 3E8h/32
invoke Beep, 1040h, 3E8h/32
invoke Beep, 1050h, 3E8h/32
invoke Beep, 1060h, 3E8h/32
invoke Beep, 1070h, 3E8h/32
invoke Beep, 1080h, 3E8h/32
invoke Beep, 1090h, 3E8h/32
invoke Beep, 1100h, 3E8h/32
invoke Beep, 900h, 3E8h/8
invoke Beep, 910h, 3E8h/16
invoke Beep, 920h, 3E8h/32
invoke Beep, 930h, 3E8h/64
invoke Beep, 940h, 3E8h/128
invoke Beep, 950h, 3E8h/264
invoke Beep, 960h, 3E8h/32
invoke Beep, 970h, 3E8h/32
invoke Beep, 980h, 3E8h/32
invoke Beep, 990h, 3E8h/32
invoke Beep, 1000h, 3E8h/32
invoke Beep, 1010h, 3E8h/32
invoke Beep, 1020h, 3E8h/32
invoke Beep, 1030h, 3E8h/32
invoke Beep, 1040h, 3E8h/32
invoke Beep, 1050h, 3E8h/32
invoke Beep, 1060h, 3E8h/32
invoke Beep, 1070h, 3E8h/32
invoke Beep, 1080h, 3E8h/32
invoke Beep, 1090h, 3E8h/32
invoke Beep, 1100h, 3E8h/32
mov R, 0
jmp Opros
; - Ввод одного символа без эха -
InputChar:
INVOKE GetConsoleMode, InHandle, offset Mode; сохранение флагов
INVOKE SetConsoleMode, InHandle, 0; отмена режима эхо-вывода
INVOKE ReadConsole, InHandle, offset InBuffer, 1, offset BytesRead, 0
INVOKE SetConsoleMode, InHandle, Mode ; восстановление режима
ret
; - Эмулятор датчиков -
ReadSensors:
Call InputChar
; - Контактные датчики -
cmp InBuffer, 'A'
jnz X1
or X, 00000001b
ret
X1: cmp InBuffer, 'S'
jnz X2
or X, 00000010b
ret
X2: cmp InBuffer, 'D'
jnz X3
or X, 00000100b
ret
X3: cmp InBuffer, 'F'
jnz X4
or X, 00001000b
ret
X4: cmp InBuffer, 'G'
jnz X5
or X, 00010000b
ret
X5: cmp InBuffer, 'H'
jnz X6
or X, 00100000b
ret
; - Датчики битого стекла -
X6: cmp InBuffer, 'Z'
jnz X7
or X, 01000000b
ret
X7: cmp InBuffer, 'X'
jnz Y0
or X, 10000000b
ret
Y0: cmp InBuffer, 'C'
jnz Y1
or Y, 00000001b
ret
Y1: cmp InBuffer, 'V'
jnz Y2
or Y, 00000010b
ret
Y2: cmp InBuffer, 'B'
jnz Y3
or Y, 00000100b
ret
Y3: cmp InBuffer, 'N'
jnz Y4
or Y, 00001000b
ret
; - Датчик удара -
Y4: cmp InBuffer, 'Q'
jnz Y5
and Y, 10001111b; Удар = 0
ret
Y5: cmp InBuffer, 'W'
jnz Y6
and Y, 10001111b
or Y, 00010000b; Удар = 1
ret
Y6: cmp InBuffer, 'E'
jnz Y7
and Y, 10001111b
or Y, 00100000b; Удар = 2
ret
Y7: cmp InBuffer, 'R'
jnz Y8
and Y, 10001111b
or Y, 00110000b; Удар = 3
ret
Y8: cmp InBuffer, 'T'
jnz Y9
and Y, 10001111b
or Y, 01000000b; Удар = 4
ret
Y9: cmp InBuffer, 'Y'
jnz Y10
and Y, 10001111b
or Y, 01010000b; Удар = 5
ret
Y10: cmp InBuffer, 'U'
jnz Y11
and Y, 10001111b
or Y, 01100000b; Удар = 6
ret
Y11: cmp InBuffer, 'I'
jnz Y12
or Y, 01110000b; Удар = 7
ret
; - Датчик обрыва питания -
Y12: cmp InBuffer, 'J'
jnz Z0
or Y, 10000000b
ret
; - Датчик осадков -
Z0: cmp InBuffer, 'K'
jnz Z1
or Z, 00000001b
ret
; - Датчик движения -
Z1: cmp InBuffer, 'L'
jnz Z2
or Z, 00000010b
ret
; - Внешняя зона датчика объёма -
Z2: cmp InBuffer, 'q'
jnz Z3
and Z, 11100011b; Уровень = 0
ret
Z3: cmp InBuffer, 'w'
jnz Z4
and Z, 11100011b
or Z, 00000100b; Уровень = 1
ret
Z4: cmp InBuffer, 'e'
jnz Z5
and Z, 11100011b
or Z, 00001000b; Уровень = 2
ret
Z5: cmp InBuffer, 'r'
jnz Z6
and Z, 11100011b
or Z, 00001100b; Уровень = 3
ret
Z6: cmp InBuffer, 't'
jnz Z7
and Z, 11100011b
or Z, 00010000b; Уровень = 4
ret
Z7: cmp InBuffer, 'y'
jnz Z8
and Z, 11100011b
or Z, 00010100b; Уровень = 5
ret
Z8: cmp InBuffer, 'u'
jnz Z9
and Z, 11100011b
or Z, 00011000b; Уровень = 6
ret
Z9: cmp InBuffer, 'i'
jnz Z10
or Z, 00011100b; Уровень = 7
ret
; - Внутренняя зона датчика объёма -
Z10: cmp InBuffer, '1'
jnz Z11
and Z, 00011111b; Уровень = 0
ret
Z11: cmp InBuffer, '2'
jnz Z12
and Z, 00011111b
or Z, 00100000b; Уровень = 1
ret
Z12: cmp InBuffer, '3'
jnz Z13
and Z, 00011111b
or Z, 01000000b; Уровень = 2
ret
Z13: cmp InBuffer, '4'
jnz Z14
and Z, 00011111b
or Z, 01100000b; Уровень = 3
ret
Z14: cmp InBuffer, '5'
jnz Z15
and Z, 00011111b
or Z, 10000000b; Уровень = 4
ret
Z15: cmp InBuffer, '6'
jnz Z16
and Z, 00011111b
or Z, 10100000b; Уровень = 5
ret
Z16: cmp InBuffer, '7'
jnz Z17
and Z, 00011111b
or Z, 11000000b; Уровень = 6
ret
Z17: cmp InBuffer, '8'
jnz R1
or Z, 11100000b; Уровень = 7
ret
; - Кнопки брелка -
R1: cmp InBuffer, 'O'
jnz R2
mov R, 1; Откл.
ret
R2: cmp InBuffer, 'P'
jnz EndSensors
mov R, 2; Охрана.
EndSensors:
ret
end start
Заключение
При выполнении курсового проекта на тему «Типовая микропроцессорная система охраны и сигнализации» была разработана МПС охраны и сигнализации на основе типового набора датчиков и исполнительных устройств в соответствии с выданным заданием. Особенностью управляющей программы является высокое быстродействие и малый размер занимаемой памяти. Необходимо подчеркнуть, что программа реализована с помощью 32 разрядной версии ассемблера в среде ассемблера MASM32.
Список литературы
микропроцессорный интерфейс сигнализация программа
1. Андрианов В.И. Охранные устройства для автомобилей. Справочное пособие: / Андрианов В.И., Соколов А.В. - М.: ООО «Фирма «Издательство АСТ»; СПб.: ООО «Издательство Полигон», 2002. - 320 с.
2. Асмаков С.В., Пахомов С.О. Железо 2009. КомпьютерПресс рекомендует. - СПб.: Питер, 2009. - 432 с.: ил.
3. Ирвин Кип. Язык ассемблера для процессоров Intel, 4-е издание.: Пер с англ. - М.: Издательский дом «Вильямс», 2005. - 912 с.: ил. - Парал. тит. англ.
4. Корнеев В.В., Киселёв А.В. Современные микропроцессоры. - 3-е изд., перераб. и доп. - СПб.: БХВ-Перербург, 2003. - 448 с.: ил.
5. Микропроцессорные системы: Учебное пособие для вузов по напр. «Информатика и вычислительная техника». / Под ред. Д.В. Пузанкова - СПб.: Политехника, 2002. - 935 с.
6. Организация ЭВМ. 5-е изд./ К. Хамахер, З. Вранешич, С. Заки. - СПб.: Питер; Киев: Издательская группа ИРМб 2003. - 848 с.: ил. - (Серия «Классика computer science»).
7. Пухальский Г.И. Проектирование микропроцессорных систем: Учебное пособие для вузов. - СПб.: Политехника, 2001. - 554 с.
Размещено на Allbest.ru
Подобные документы
Виды и интерфейсы измерительных информационных систем. Принципы функционирования автоматической локомотивной сигнализации и системы "Контроль". Разработка программного обеспечения для обработки информации о работе устройств сигнализации и рельсовых цепей.
дипломная работа [1011,1 K], добавлен 30.05.2013Анализ возможных способов применения автоматических систем охраны объектов связи различного назначения. Сравнительная оценка технических способов охраны военных объектов. Разработка структурной схемы системы охранной сигнализации приемного радиоцентра.
дипломная работа [2,2 M], добавлен 20.11.2013Разработка современной системы охранно-пожарной сигнализации. Интегрированная система охраны "Орион". Цифровая адресная охранно-пожарная система "Гриф-2000". Проектирование ОПС на основе системы с аналоговыми шлейфами, расчет стоимости монтажных работ.
дипломная работа [2,2 M], добавлен 08.06.2013Принципиальные схемы вычислительного канала, устройств сравнения и контроля, безопасного ввода информации. Разработка алгоритма управления состоянием переезда, передачи и программного обеспечения. Расчет показателей безотказности и безопасности системы.
курсовая работа [822,8 K], добавлен 08.02.2014Разработка структурной функциональной схемы устройства, его аппаратного обеспечения: выбор микроконтроллера, внешней памяти программ, устройства индикации, IGBT транзистора и драйвера IGBT, стабилизатора напряжения. Разработка программного обеспечения.
курсовая работа [495,1 K], добавлен 23.09.2011Разработка система охраны трансформаторного завода, включающая в себя подсистему охранной сигнализации, подсистему контроля доступа и видеонаблюдения. Настройка системы контроля. Расчёт себестоимости создания системы физической безопасности электрозавода.
дипломная работа [3,8 M], добавлен 18.06.2010Система охраны и технические средства объектов (имущества). Виды извещателей, формирующих сигналы тревоги и приемо-контрольный прибор. Расчет экономической эффективности от внедрения средств охранной сигнализации. Техника безопасности при эксплуатации.
дипломная работа [375,1 K], добавлен 27.04.2009Характеристики технических средств охранной, пожарной и охранно-пожарной сигнализации, разрешенных к применению в настоящее время ГУ ВО МВД России и применяемых ранее. Классификация и виды извещателей. Организация охраны объектов с помощью сигнализации.
контрольная работа [37,2 K], добавлен 29.05.2010Алгоритм работы охранной сигнализаций. Датчик движения, звуковая сирена, реле, транзистор, резистор, конденсатор, цифровой сегментный индикатор. Изготовка домашней охранной сигнализации. Определение зон установки датчиков для обеспечения охраны объекта.
дипломная работа [1,7 M], добавлен 22.07.2013Выбор программного обеспечения. Построение функциональной модели. Тестирование программного описания автомата. Проектирование общей схемы сборки проекта из отдельных фрагментов. Нормы затрат на проектирование и внедрение микропроцессорной системы.
дипломная работа [348,1 K], добавлен 05.05.2015