TechShape.ru

Информационные технологии

Основные разделы

Программное обеспечение

Листинг

принципиальный схема инкубатор контроллер

Метка

Код на языке Assembler

Комментарий

clrp2.4

подача на буфер активного сигнала

movxa,@dptr

запись в аккумулятор кода нажатой клавиши

movx @r6,a

запись кода в регистр R6 из аккумулятора

clrp2.3

подача на ацп активного сигнала

m11:

movdptr,#0031h

инициализация 1 отсека

mov @dptr,a

определение реальной температуры

movr3,a

хранение значения температуры в регистре R3

clrp1.6

подача на индикаторы активного сигнала

clrp1.5

подача на индикаторы активного сигнала

movr6,a

инициализация регистра R6

movxdptr,@a

вывод значения из аккумулятора на индикаторы

//сравнение температуры

clr с

subba,#01h

из значения, хранимого в регистре R6 вычитаем 1

jcm7

переход если реальная температура меньше

clrp1.0

выключаем отопление, если реальная температура больше

m7:

setbp1.0

включаем отопление

//сравнение температуры

clr с

addca,#01h

к значению, хранимого в регистре R6 прибавляем 1

jcm9

переход если реальная температура меньше

clrp1.0

выключаем отопление, если реальная температура больше

m9:

setbp1.0

включаем отопление

clrp2.3

подача на ацп активного сигнала

//инициализация 2 отсека

movdptr,# 0032h

инициализация 2 отсека

mova,@r6

инициализация регистра R6

mov @dptr,a

определение реальной температуры

movr3,a

хранение значения температуры в регистре R3

clrp1.4

подача на индикаторы активного сигнала

clrp1.3

подача на индикаторы активного сигнала

movxdptr,@a

вывод значения из аккумулятора на индикаторы

//сравнение температуры

clr с

subba,#01h

из значения, хранимого в регистре R6 вычитаем 1

jcm8

переход если реальная температура меньше

clrp1.0

выключаем отопление, если реальная температура больше

m8:

setbp1.0

включаем отопление

//сравнение температуры

clr с

addca,#01h

к значению, хранимого в регистре R6 прибавляем 1

jcm10

переход если реальная температура меньше

clrp1.0

выключаем отопление, если реальная температура больше

m10:

setbp1.0

включаем отопление

//timer

movtmod,#02h

нулевой таймер работает во 2 режиме

movth0,#3Ch

запись коэффициента пересчета в старший байт

movtl0,#0AFh

запись коэффициента пересчета в младший байт

tcon #33h

включение таймера

lcall #000Вh

разрешение прерываний

movr1,#00h

обнуление r1, где считаются переполнения

incr2

инкремент r2, где отсчитывается час

movth0,#3Ch

запись коэффициента пересчета в старший байт

movtl0,#0AFh

запись коэффициента пересчета в младший байт

reti

выход из подпрограммы обработки прерываний

movr1,a

инициализация r1

cjner1,#14h,m11

Переход, если содержимое r1 не равно 20

movr2,a

инициализация r2

cjner2,#0E10h,m11

Переход, если содержимое r2 не равно часу

setbp1.1

включение поворота ячейки яиц на 45 градусов

ljmp m11

Безусловный переход на начало основной программы

Перейти на страницу: 1 2

Еще статьи

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

Все права защищены! 2020 - www.techshape.ru