Dalrate.ru

Построение рабочей локальной сети

Подпрограмма двоично-десятичной коррекции

;- PORTB, 6 ; НАЖАТА КНОПКА «+1» M11 ; НЕТ - ПЕРЕХОД К ПРОВЕРКЕ НАЖАТИЯ КНОПКИ «- 1»

; СЧЕТЧИКИ ЧАСОВ STOP_HL, F ; ИНКРЕМЕНТИРОВАТЬ МЛАДШИЙ СЧЕТЧИК ЧАСОВ STATUS, Z STOP_HH, W ; СТАРШИЙ СЧЕТЧИК ДОСЧИТАЛ ДО 2 0x02 STATUS, Z M12 ; НЕТ - ПЕРЕХОД НА ПРОВЕРКУ МЛАДШЕГО СЧЕТЧИКА

BCF STATUS, Z STOP_HL, W 0x04 STATUS, Z M12 STATUS, Z STOP_HL ; ДА - ОЧИСТИТЬ МЛАДШИЙ СЧЕТЧИК ЧАСОВ

CLRF STOP_HH SET_REG_LCD1; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ВРЕМЕНИ ВЫКЛЮЧЕНИЯ НА ИНДИКАЦИЮ STOP_HL, W 0x0A ; СЧЕТЧИК ДОСЧИТАЛ ДО 10 STATUS, Z SET_REG_LCD1; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ВРЕМЕНИ ВЫКЛЮЧЕНИЯ НА ИНДИКАЦИЮ STOP_HL ; ДА - ОЧИСТИТЬ МЛАДШИЙ СЧЕТЧИК ЧАСОВ STOP_HH ; ИНКРЕМЕНТИРОВАТЬ СТАРШИЙ СЧЕТЧИК ЧАСОВ SET_REG_LCD1; ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ВРЕМЕНИ ВЫКЛЮЧЕНИЯ НА ИНДИКАЦИЮ

;- PORTB, 6 ; НАЖАТА КНОПКА «- 1» STOP_TMR2_3 ; ПЕРЕХОД НА ПОДПРОГРАММУ ОСТАНОВКИ ТАЙМЕРА TMR2

; СЧЕТЧИК ЕДИНИЦ ЧАСОВ STATUS, C STOP_HL, F ; ДЕКРЕМЕНТИРОВАТЬ МЛАДШИЙ СЧЕТЧИК ЧАСОВ STATUS, C ; ПРОИЗОШЕЛ ЗАЕМ SET_REG_LCD1; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ВРЕМЕНИ ВЫКЛЮЧЕНИЯ НА ИНДИКАЦИЮ STATUS, C 0x09 ; ДА - ЗАГРУЗИТЬ НАЧАЛЬНОЕ ЗНАЧЕНИЕ STOP_HL

;-

; СЧЕТЧИК ДЕСЯТКОВ ЧАСОВ STOP_HH, F ; ДЕКРЕМЕНТИРОВАТЬ СТАРШИЙ СЧЕТЧИК ЧАСОВ STATUS, C ; ПРОИЗОШЕЛ ЗАЕМ SET_REG_LCD1; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ВРЕМЕНИ ВЫКЛЮЧЕНИЯ НА ИНДИКАЦИЮ STATUS, C 0x02 ; ДА - ЗАГРУЗИТЬ НАЧАЛЬНЫЕ ЗНАЧЕНИЯ В СЧЕТЧИКИ

MOVWF STOP_HH 0x04

MOVWF STOP_HL SET_REG_LCD1; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ВРЕМЕНИ ВЫКЛЮЧЕНИЯ НА ИНДИКАЦИЮ

;-_TMR2_3 T2CON, TMR2ON; ОСТАНОВКА ТАЙМЕРА TMR2

SET_REG_LCD1 STOP_ML, W IND_0 STOP_MH, W IND_1 STOP_HL, W IND_2 STOP_HH, W

MOVWF IND_3 POINT, 2 ; ВЫКЛЮЧИТЬ ТОЧКУ ВО 2-М РАЗРЯДЕ POINT, 1 ; ВКЛЮЧИТЬ ТОЧКУ В 1-М РАЗРЯДЕ INT_SOURCE ; ВЕРНУТЬСЯ К ПОИСКУ ИСТОЧНИКОВ ПРЕРЫВАНИЙ

;-

; ПОДПРОГРАММА УСТАНОВКИ ТЕКУЩЕГО ВРЕМЕНИ_TIME ; УСТАНОВКА ТЕКУЩЕГО ВРЕМЕНИ FLAG_R, 2 ; РЕЖИМ УСТАНОВКИ ТЕКУЩЕГО ВРЕМЕНИ ВКЛЮЧЕН INT_SOURCE ; ВЕРНУТЬСЯ К ПОИСКУ ИСТОЧНИКОВ ПРЕРЫВАНИЙ

FLAG_R, 5 ; РЕЖИМ УСТАНОВКИ МИНУТ ВКЛЮЧЕН SET_HOUR ; НЕТ - ПЕРЕХОД К УСТАНОВКЕ ЧАСОВ

PORTB, 6 ; НАЖАТА КНОПКА «+1» M13 ; НЕТ - ПЕРЕХОД К ПРОВЕРКЕ НАЖАТИЯ КНОПКИ «- 1»

;-

; СЧЕТЧИК ЕДИНИЦ МИНУТ MIN_L, F ; ИНКРЕМЕНТИРОВАТЬ МЛАДШИЙ СЧЕТЧИК МИНУТ STATUS, Z MIN_L, W ; СЧЕТЧИК ДОСЧИТАЛ ДО 10 0x0A STATUS, Z SET_REG_LCD2; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ТЕКУЩЕГО ВРЕМЕНИ НА ИНДИКАЦИЮ MIN_L ; ДА - ОЧИСТИТЬ МЛАДШИЙ СЧЕТЧИК МИНУТ

;-

; СЧЕТЧИК ДЕСЯТКОВ МИНУТ MIN_H, F ; ИНКРЕМЕНТИРОВАТЬ СТАРШИЙ СЧЕТЧИК МИНУТ STATUS, Z MIN_H, W ; СЧЕТЧИК ДОСЧИТАЛ ДО 6

XORLW 0x06 STATUS, Z

GOTO SET_REG_LCD2; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ТЕКУЩЕГО ВРЕМЕНИ НА ИНДИКАЦИЮ MIN_H ; ДА - ОЧИСТИТЬ СТАРШИЙ СЧЕТЧИК МИНУТ SET_REG_LCD2; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ТЕКУЩЕГО ВРЕМЕНИ НА ИНДИКАЦИЮ

;-

PORTB, 7 ; НАЖАТА КНОПКА «- 1» STOP_TMR2_4 ; ПЕРЕХОД НА ПОДПРОГРАММУ ОСТАНОВКИ ТАЙМЕРА TMR2

;-

; СЧЕТЧИК ЕДИНИЦ МИНУТ STATUS, C MIN_L, F ; ДЕКРЕМЕНТИРОВАТЬ МЛАДШИЙ СЧЕТЧИК МИНУТ STATUS, C ; ПРОИЗОШЕЛ ЗАЕМ SET_REG_LCD2; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ТЕКУЩЕГО ВРЕМЕНИ НА ИНДИКАЦИЮ STATUS, C 0x09 ; ДА - ЗАГРУЗКА НАЧАЛЬНОГО ЗНАЧЕНИЯ MIN_L

;-

; СЧЕТЧИК ДЕСЯТКОВ МИНУТ MIN_H, F ; ДЕКРЕМЕНТИРОВАТЬ СТАРШИЙ СЧЕТЧИК МИНУТ STATUS, C ; ПРОИЗОШЕЛ ЗАЕМ SET_REG_LCD2; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ ВЫВОДОМ

; ТЕКУЩЕГО ВРЕМЕНИ НА ИНДИКАЦИЮ STATUS, C 0x05 ; ДА - ЗАПИСАТЬ НАЧАЛЬНОЕ ЗНАЧЕНИЕ MIN_H SET_REG_LCD2; НЕТ - ПЕРЕХОД НА ПОДПРОГРАММУ УПРАВЛЕНИЯ

; ВЫВОДОМ ВРЕМЕНИ ВКЛЮЧЕНИЯ НА ИНДИКАЦИЮ

;-

FLAG_R, 4 ; РЕЖИМ УСТАНОВКИ ЧАСОВ ВКЛЮЧЕН STOP_TMR2_4 ; ПЕРЕХОД НА ПОДПРОГРАММУ ОСТАНОВКИ ТАЙМЕРА TMR2

;- PORTB, 6 ; НАЖАТА КНОПКА «+1» M14 ; НЕТ - ПЕРЕХОД К ПРОВЕРКЕ НАЖАТИЯ КНОПКИ «- 1»

_HOUR

; СЧЕТЧИКИ ЧАСОВ HOUR_L, F ; ИНКРЕМЕНТИРОВАТЬ МЛАДШИЙ СЧЕТЧИК ЧАСОВ STATUS, Z HOUR_H, W ; СТАРШИЙ СЧЕТЧИК ДОСЧИТАЛ ДО 2 0x02 STATUS, Z M15 ; НЕТ - ПЕРЕХОД НА ПРОВЕРКУ МЛАДШЕГО СЧЕТЧИКА Перейти на страницу: 1 2 3 4 5 6 7 8

Популярное:

Информационно-вычислительная сеть на основе архитектуры клиент-сервер, предметная область Магазин бытовой техники Компьютерная сеть обозначает наборы связанных между собой автономных компьютеров. Два компьютера называются связанными между собой, если они могут обмениваться информацией. Связь не обязательно должна осуществляться при помощи медного провода. Могут использоваться самые разнообразные средства связи, включая волоконную оптику, ...