Разработка алгоритма работы МК — КиберПедия 

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

Разработка алгоритма работы МК

2017-12-09 196
Разработка алгоритма работы МК 0.00 из 5.00 0 оценок
Заказать работу

На начальном этапе организован процесс ожидания нажатия кнопки.

При нажатии кнопки переход в режим тревожной сигнализации.

 

Алгоритм работы сигнализатора

 

 


нет

 

Нет

 

 

да

 

Рис. 2.

 

Разработка блок-схемы алгоритма «SIGNAL»

Детализированная блок схема алгоритма «SIGNAL» приведена на рис.2.1она заключается в установке трехциклов, состоящих из включения / выключения на 1 сек сигнального светодиода с поочередной подачей звукового сигнала частотой 1кГц.

 

Блок-схема алгоритма «SIGNAL»

 
 


Счетчик

повторов=3

 

Светодиод

вкл

 
 

 


Пауза

1 сек

 
 


Светодиод

выкл

 
 

 


Звуковой сигнал

0.5 сек

       
   
 
 

 

 


Задержка
0.5 сек

 

нет

Сч=0

 

 
 


Рис.2.1.

 

Из условия формирования светового сигнала следует иметь подпрограмму задержки на 1мс

 

Последовательное исполнение включения и выключениясветодиода с одновременным включением звукового сигнала составит 2 сек. Следовательно, количество повторов такой комбинации три.

ТЕКСТ ИСХОДНОЙ ПРОГРАММЫ

После того, как мы разработали алгоритм работы МК, можно приступать собственно к написанию программы.

;=========================================

; SIGNALIZATION - Охранная сигнализация

;=========================================

; Кнопка S1 подключена к РОRТB<0>

;пьезоизлучатель к РОRТВ<1>

;светодиод к РОRТВ<2>

; определение рабочих регистров-----------------------------

CNT EQU 0CH; счетчик импульсного сигнала

CNT_2 EQU 20H;счетчик повторов сигнала

GOTO START

;********************************************

;ПОДПРОГРАММЫ

;********************************************

;задержка 10 мс------------------------------

DELAY_10

NOP

RETURN

;задержка 500 мкс----------------------------

DELAY

MOVLW.165

MOVWF CNT

LOOP

DECFSZ CNT,F

GOTO LOOP

RETURN

;Сигнализация -реакция на нажатие S1---------

SIGNAL

MOVLW.3;счетчик повторов

MOVWF 20H; сигнала

REPITE

BSF PORTB,2; зажечьсветодиод

CALL DELAY; на 500 мкс

CALL DELAY; на 500 мкс

BCF PORTB,2; погаситьсветодиод

BSF PORTB,1; импульс

CALL DELAY; длительность 500 мкс

BCF PORTB,1; пауза

CALL DELAY; длительность 500 мкс

DECFSZ 20H,F; повторить

GOTO REPITE; 3 раза

RETURN;

;***********************************************

;ОСНОВНАЯ ПРОГРАММА

;***********************************************

;инициализация--------------------------------

START

BSF STATUS,RP0;page 1

MOVLW B'00001'; RB0 - вход

MOVWFTRISB; остальные - -выходы

BCF STATUS,RP0; page 0

; Опрос_порта--------------------------------

BEGIN

BTFSC PORTB,0; есликнопка S1 нажата (=0),

GOTO ON_1; то обработать нажатие

GOTO BEGIN;иначе к опросу порта

;Обработка нажатия кнопки 1------------------

ON_1

CALL DELAY_10; устранение дребезга контактов

BTFSS PORTB,0; если кнопка 1 нажата (=1),

GOTO BEGIN; иначе к началу

CALL SIGNAL; товыполнить SIGNAL

; ожидание освобождения кнопки 1-------------

OFF_1

BTFSC PORTB,0; если кнопка 1 освобождена (=0),

GOTO OFF_1; ждать освобождения

GOTO BEGIN; то к опросу порта

; конецвсемкомандам-----------------------

END

 

 

При нажатии кнопки начинает выполняться подпрограмма сигнализации SIGNAL: формирование перемежающегося светового и звукового сигнала частотой 1 кГц и длительностью по 1сек в течение 6 сек.

Алгоритм ее работы представлен на рис.2. По включению контроллера программа выставит единицу на линию, к которой подключен светодиод, подождет 1сек, выставит нуль, затем выдаст импульсный сигнал на 0.5 сек на линию, к которой подключен пьезоизлучатель, а затем повторит все заново три раза.

Светодиод подключен к линии RB2 (через резистор), зажигать его будем единицей, а пьезоизлучатель - к линии RB1, подавать на него будем импульсный сигнал.

1. Программа формирования импульсного сигнала MULTIприведена в лаб.№4. В ней необходимо изменить лишь частоту следования импульсов.

Период следования Т = 1/F = 1/2*10E3 Гц = 500 мкс

Для формирования импульса и паузы нужна задержка 500

Используем для расчета загрузки счетчиков циклCNT, формирующих импульс и паузу формулу

Т = 4+3Х, мкс

Ти = (500 – 4)/3 = 165

2. Для формирования времени свечения светодиода 1с используем подпрограмму задержки на 500мкс программы MULTI, повторив ее два раза.

3. Для формирования повторов (3) сигнала сигнализации введем счетчик повторов CNT_2

 

 

ПРОВЕРКА РАБОТЫ ПРОГРАММЫ

Припроверке работы прoграммы использовался симулятор PICSimulatorIDE.

1. Текст программы был загружен в окно редактора исходного кода Assembler

2. После устранения синтаксических ошибок был создан исполнительный код программы – Assembler&Load

3. В программе был обнаружен и устранен ряд программных ошибок. Дляэтогоиспользовалисьокна [MicrocotrollerView], [Break Point Manager], [Oscilloscope].

4. Состояние окон рис.4.1 показывает работающую версию программы.

 

 

ЗАКЛЮЧЕНИЕ

В результате работы над заданием на тему Разработка сигнализации на PIC контроллере была разработана, отлажена ипроверена в симулятореPICSimulatorIDE программа охранной сигнализации.

Результат работы программы полностью соответствует заданию на работу.

 

Вывод: задание выполнено полностью.

 


Поделиться с друзьями:

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.089 с.