Смекни!
smekni.com

Разработка микропроцессорной системы климат-контроля (стр. 6 из 6)

Рисунок 3.4 – Блок-схема управления DS 1820

Программа для управляющего контроллера PIC 16 F877.

#INCLUDE PIС 16F877.IN

OPTIONREQU81H ; OPTION {RP0=l).

PCEQU02H ; счетчик команд

PORTAEQU05H; порт А

PORTBEQU06H; порт В

TRISAEQU85H ; направления порта А

TRISBEQU8 6H ; направления порта В

INTCONEQU0BH ; флагов прерываний

; Регистры общего назначения

TEMPEQU21H ; временный

ZANEQU22H ; счетчик паузы

COUNEQU23H ; счетчик битов

LSBEQU 24Н ; мл. регистр приема отDS

LSBHEQU25H ; ст. регистр приема отDS

; Регистры измеренных температур

EDIEQU2 6H; единицы.

DESEQU27H ; десятки.

LSBZEQU2 АН ; двоичное

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

; Инициализация DS

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

INIDS

CALLHYL ; посылка импульса обнуления

MOVLWOxCC ; пропуск номера

CALLPOSIL ; посылка

MOVLW0x4E ; разрешение измерения до градуса

CALLPOSIL ; посылка

MOVLW0x7D ; верхней предел +125.

CALLPOSIL ; посылка

MOVLW0x77 ; нижний предел -55

CALLPOSIL ; посылка

MOVLW 0x7F ; конфигурация 11 до градуса

CALLPOSIL ; посылка

CALLHYL ; посылка импульса обнуления

MOVLWOxCC ; пропуск посылки номера DS

CALLPOSIL ; посылка

MOVLW0x4 4 ; разрешение преобразования

CALLP.OSIL ; посылка

BTFSCFLAG,0 ; если > 30,

BSFPORTС,0 ; то включим двигатель

MOVLW.3 ; пауза 750 мс

MOVWFCOUN ; счетчик паузы
SPLU

MOVLW.255

MOVWFZAN
РLUS

MOVLW.255

NOP

NOP

NOP

NOP

NOP

NOP

ADDLW-1

BTFSSSTATUS,2

GOTO$-2

DECFSZ ZAN, 1

GOTO PLUS

DECFSZ COUN,1

GOTO SPLU

BTFSCFLAG,0 ;если больше 30,

BCFPORTС, 0 ; включение кондиционера

GOTOPRIEM ; на прием температуры.
HUL

CALLWUX ; выход нуля,

MOVLV .125 ; нулевой импульс

ADDLW-1 ; =500мкс

BTFSSSTATUS,2

GOTOS-2

CALLWXO ; выход единицы

MOVLW.125 ; импульс =

ADDLW -1 ; 500мкс

BTFSSSTATUS,2

GOTO$-2
RETURN

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

; Изменение входа на прием/передачу

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

WUX

BCF PORTA,DS ; Импульс запроса

BSF STATUS,5 ; переход в банк 1

BCF TRISA,DS ; на выход

BCF ' STATUSES ; переход в банк 0

RETURN

WXO

BSF STATUS,5 ; переход в банк 1

BSF TRISA,DS ; на вход

BCF STATUS,5 ; переход в банк 0

RETURN

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

; Прием 16 бит из DS

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

PRIEM

CALL HYL ; посылка импульса обнуления

MOVLW 0хСС ; пропуск номера

CALLPOSIL ; посылка

MOVLW 0xBE ; чтение температуры из блокнота

CALL POSIL ; посылка

CALL PRIE ; наприем

MOVFW LSBH ; переписать в ст. байт

CALL PRIE ; на прием

MOVWF LSB ; в мл. регистр

GOTO CXET ; на пересчет
PRIE

MOVLW .8

MOVWF COUN ; счетчик = 8 бит

CLRF LSBH ; обнуление регистра приема

PRI

CALL WUX ; короткий ноль и ждать отклика

CALL WXO ; на прием

MOVLW .2 ; задержка

CALL X4 ; 8 мкс.

MOVFW PORTA ; скопировать

MOVWF TEMP ; во временный регистр

BTFSS TEMP,DS

BCF STATUS,0 ; установка бита приема в ноль

BTFSC TEMP,DS ;

BSF STATUS,0 ; или 1

RRF- LSBH,1 ; запись в регистр

MOVLW .12 ; пауза 60 мкс

CALL X4

DECFSZ COUN,1 ; уменьшение счетчика

GOTO PRI ; повтор приема

RETURN

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

; Посылка команды в DS

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

POSIL

MOVWF TEMP ; переписать во временный

MOVLW .8 ; запишем число бит

MOVWF COUN

POSI

RRF TEMP,1 ; выталкивание мл. бита

BTFSS STATUS,0 ; если он нулевой

GOTO W0 ; посылка импульса 0

GOTOW1 ; или 1
POS

DECFSZ С0UN,1 ; уменьшение счетчика

GOTO POSI ; на след. бит

RETURN
W0

CALL WUX ; установка выхода в ноль

MOVLW .15 ; задержка 60 мкс

CALL Х4

CALL WXO ; на вход = 1 на выходе

GOTO POS ; повтор
W1

CALL WUX ; короткий нулевой импульс

CALL WXO ; на вход = 1 на выходе

MOVLW .15 ; удерживаем 60 мкс

CALLX4

GOTOPOS ; повтор

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

; СЧЕТ

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

СХЕТ

BTFSC КОР,4 ; если знак минус

GOTO $ + 6 ; идти на минус

MOVFW КОР I . ; если плюс

ADDWFLSB,1 ; прибавить 1

BTFSCSTATUS, 0 ; если есть перенос

INCF LSBH,1 ; увеличить старший байт

GOTO $+6 ;

BCF КОР,4 ; сброс бита знака

MOVFW КОР ; вычитание из младшего

SUBWFLSB,1 ; байта

BTFSSSTATUS,0 ' ; если нет переноса

DECF LSBH,1 ; уменьшить старший байт

CALL DESATI ; кодировка с округлением

MOVLW .4 ; сдвигом вправо на 4 разряда

MOVWF COUN

BCF STATUS,0 ; выделение целой части

RRFLSBH,1

RRF LSB,1

DECFSZ COUN,1

GOTO $-4

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

; Сравнение с допуском = 25 градусов

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

СОМР1

MOVLW .25 ; если температура

SUBWF LSB,0 ; больше 25о

BTFSC STATUS,0 ; то

GOTO ОТК ; включение кондиционера

BSFPORTA, 4

GOTOCOMP2

OTK

BSFPORTC, 0 ; включение двигателя на открытие

GOTOPRIEM

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

; Сравнение с допуском = 20 градусов

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

COMP2

MOVW .20 ; если температура меньше

SUBWFLSB, 0 ; 20 градусов

GOTOIND ; идти на ЖКИ

ZAK

BSFPORTC, 1 ; включение на закрытие окон

GOTOPRIEM

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

; Задержка мкс, умноженная на 4

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

X4

ADDLW -1

BTFSS STATUS, 2

GOTO $-2

RETURN

ЗАКЛЮЧЕНИЕ

В процессе разработки курсовой работы получены следующие результаты:

- разработана структурная схема системы климат-контроля;

- осуществлен выбор микроконтроллерного термодатчика DS на основе заданных технических условиях эксплуатации;

- разработана оригинальная схема питания системы без использования понижающего трансформатора;

- разработана принципиальная электрическая схема управления системы климат-контроля;

- разработана схема управления LGD;

- разработаны программы управления термодатчиком, кондиционером и LCD на языке Ассемблер;

- рассмотрены вопросы по охране труда обслуживающего персонала;

Таким образом, спроектированная система климат-контроля полностью отвечает заданным требованиям и условиям технической эксплуатации, обладая при этом относительной дешевизной и простотой реализации.

СПИСОК ЛИТЕРАТУРЫ

1. Брей Б. Микропроцессоры INTEL. – СПб.: БХВ – Петербург, 2005. – 1028 с.

2. Вальпа О. Полезные схемы с применением микроконтроллеров и ПЛИС(+СД).- М.: Изд.дом «Додэка-ХХ1», 2006. – 416 с.

3. Казначеев В. Микросхемы для управления электродвигателями. – М.:Додэка, 1999. – 288 с.

4. Костров Б.В. Микропроцессорные системы и микроконтроллеры. – М.: «ТехБук», 2007. – 320 с.

5. Тавернье К. PIC-микроконтроллеры. – М.: ДМК Пресс, 2003. – 272 с.

6. Терехов В.М. Системы управления электроприводов. – М.: Изд. центр «Академия», 2006. – 304 с.

7. Угрюмов Е. Цифровая схемотехника. – СПб.: БХВ – Петербург, 2002. – 528 с.

8. Юров В.И. Assembler.- СПб.: Питер, 2007. – 637 с.

9. MPASM: Руководство пользователя // электронная версия на сайте http://www.microchip.ru

10. MPLABIDE: Интегрированная среда разработки для микроконтроллеров PICmicro компании TechnologyIncorporated // электронная версия на сайте http://www.microchip.ru

11.Однокристальные 8-разрядные FLASHCMOS микроконтроллеры //

электронная версия на сайте http://microchip.ru.