Система управления микроволновой печью

Содержание

Введение

    Постановка задачи

    Описание системы

    Выбор микроконтроллера

    Описание структуры системы

    Спецификация элементов

    Характеристики элементов

6.1 Стабилизатор на КР142ЕН5

6.2 Дешифратор К155ИД13

6.3 Индикаторы

    Программа

7.1 Структура

7.2 Текст

Заключение

Введение

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

Современный микропроцессор – довольно сложное устройство, работу которого нельзя описать в деталях вне связи с системой, в составе которой он функционирует (в отличие от других более простых электронных приборов). Поэтому в данном курсовом проекте описывается система, обеспечивающая работу микроволновой печи, как пример простейшей микропроцессорной системы.

Контроллер для микроволновой печи представляет собой устройство, которое:

    обрабатывает сигналы, поступающие с панели управления;

    обеспечивает заданный режим работы в течение заданного времени;

    обеспечивает индикацию оставшегося времени работы печи и мощность.

Это достигается с помощью простых схемотехнических решений и программных средств.

1. Постановка задачи

Задачей данного проекта является создание системы управления микроволновой печью. Мощность печи составляет 600 Вт. Пользователь задает один из 5-ти режимов работы (600 Вт, 480 Вт, 360 Вт, 240 и 120 Вт), затем выставляет необходимое время работы печи (от 10 с до 40 мин) с шагом по 10 с. После он должен нажать кнопку «Старт». Во время работы печи включается подсветка, вращается подставка, для лучшего распределения энергии и включается вентиляция печи. В случае необходимости пользователь может менять мощность по ходу работы печи, также временно приостановить работу (с последующей возможностью увеличения времени работы печи) или остановить ее совсем. По окончании времени работы печь автоматически отключается. На лицевой панели печи отображается установленная мощность и время, оставшееся до конца работы печи.

2. Описание системы

Структурная схема системы представлена на рисунке 1.

Рис. 1.

1 – установка времени работы и мощности, а также пуск/останов.

2 – отображение установленной мощности и времени, оставшегося до конца работы.

3 – основной прибор комплекса, обрабатывающий поступающую информацию и управляющий внешними устройствами.

4 – микроволновый излучатель.

5 – служит для вентиляции печи во время приготовления пищи.

6 – двигатель вращает подставку, на которую ставиться приготавливаемая пища, для лучшего распределения энергии.

7 – подсветка позволяет следить за процессом приготовления пищи.

Вид клавиатуры.

Кнопки «+ мощность» и «- мощность» для изменения мощности работы печи.

«+ 10 с.» увеличивает время работы на 10 с.

«Старт» - включение печи.

«Стоп/Сброс» выключение печи, а если она выключена, то сброс времени

При подаче питания устанавливается режим работы ожидания, т.е. время сброшено, печь выключена, начальная мощность 360 Вт. С клавиатуры можно ввести время работы, изменить мощность, включить и выключить печь.

Таким образом, можно регулировать режимы приготовления/разогрева пищи.

На дисплее, в зависимости от установленного времени и мощности будут отображаться соответствующие параметры.

3. Выбор микроконтроллера

Центральное место в схеме занимает микроконтроллер, который выполняет арифметические и логические операции, осуществляет программное управление процессом обработки информации, организует взаимодействие всех устройств, входящих в систему. Работа МК происходит под воздействием сигналов схемы синхронизации и начальной установки.

Я остановил свой выбор на микроконтроллере семейства АТ89 фирмы Atmel.

Фирма Atmel Corporation - один из крупнейших мировых производителей микросхем энергонезависимой памяти. Фирма поставляет микросхемы энергонезависимой памяти практически всех видов: EEPROM с параллельным интерфейсом объемом до 4-х Мбит и несколькими типами последовательных интерфейсов объемом до 1-го Мбит, Flash EEPROM одноблочного и многоблочного типа с 8-ми и 16-ти разрядным параллельным интерфейсом объемом до 16-ми Мбит, многоблочные Flash EEPROM с последовательным интерфейсом объемом до 32-ти Мбит, 8-ми и 16-ти разрядные однократно программируемые EPROM cерии 27ххх до 8 Мбит, EEPROM для загрузки микросхем FPGA.

Богатый опыт производства электрически перепрограммируемой памяти позволил фирме Atmel выйти на рынок с недорогими микроконтроллерами семейства MCS-51 (AT89Cxx), оснащенными Flash EEPROM для хранения программ. Будучи 100% совместимыми как программно, так и аппаратно со стандартными микросхемами семейства MCS-51 и обладающими очень выгодной ценой, микроконтроллеры серии AT89Cxx становятся отличным выбором в условиях снижения или прекращения их производства такими традиционными производителями, как Intel. Кроме того, эти микроконтроллеры значительно более удобны и экономически выгодны на этапе разработки устройства, так как не требуют специальных отладочных вариантов микроконтроллеров и исключают процесс стирания с помощью источника ультрафиолетового излучения. Микроконтроллеры изготавливаются по КМОП (CMOS) технологии и имеют полностью статическую структуру. Микроконтроллер разработан с применением статической логики, которая не требует непрерывной синхронизации. Поэтому частота тактового генератора может быть уменьшена или же он может быть остановлен в ожидании события, требующего обработки. Это также способствует снижению потребления по питанию. В состав семейства входят микроконтроллеры 15-ти типов (май 1998). [2]

Основными элементами базовой архитектуры семейства (архитектуры микроконтроллера 8051) являются:

- 8-разрядное АЛУ;

- 4 банка регистров, по 8 в каждом;

- внутренняя (резидентная) память программ 4 Кбайт, имеющая тип ROM или EPROM (8751);

- внутренняя (резидентная) память данных 128 байт;

- 21 регистр специальных функций;

- булевый процессор;

- два 16-разрядных таймера/счетчика;

- контроллер последовательного порта (UART);

- контроллер обработки прерываний с двумя уровнями приоритетов;

- четыре 8-разрядных порта ввода/вывода, два из которых используются в качестве шины адреса/данных для доступа к внешней памяти программ и данных;

- встроенный тактовый генератор. [1]

Кроме стандартных микроконтроллеров из семейства MCS-51 (80C51, 80C52) фирма Atmel создала также несколько собственных модификаций. Прежде всего, это сокращенные микроконтроллеры, выполненные в 20-ти выводных корпусах, AT89C1051, AT89C2051 и AT89C4051, обладающие различным объемом памяти и имеющие меньшее число линий ввода/вывода, чем их 40-ка выводные собратья, тем не менее являющиеся полностью программно и аппаратно с ними совместимыми в рамках доступных ресурсов. Мы используем в своем проекте микроконтроллер AT89C1051 из-за малого объема памяти используемой в данной работе.

Базовая структура микроконтроллеров совпадает с базовой структурой микроконтроллеров семейства MCS-51 и отечественных микроконтроллеров серий 1816/51 и 1830/51, однако микроконтроллеры многих типов содержат новые запоминающие и периферийные устройства, а некоторые устройства базовой структуры имеют иные характеристики

Микроконтроллеры семейства AT89 выпускаются для работы при разных значениях напряжения питания и тактовой частоты, определяемой частотой подключенного к микроконтроллеру кварцевого резонатора. Диапазоны значений напряжения питания (Vcc) и тактовой частоты (Fosc) у микроконтроллера указаны в Таблице 1. Ток потребления зависит от величины напряжения питания и тактовой частоты. В Таблице 1 приведены значения тока потребления в рабочем режиме (Icc) при максимальном значении напряжения питания и Fosc=12 МГц.

Таблица 1

Тип МК

Vcc (В)

Fosc (МГц)

Icc (мА)

N

АТ89С1051

2,7-6,0

0-24

15

20

Кроме рабочего режима в микроконтроллере может быть переведен в энергосберегающие режимы работы - режим холостого хода (Idle Mode) и режим пониженного энергопотребления (Power Down Mode).

В режиме холостого хода процессор остановлен, периферийные устройства продолжают работать, коды в IRAM сохраняются. Ток потребления уменьшается в 4-5 раз. Перевод в режим холостого хода выполняется по команде в программе, выход из режима - по сигналу сброса или при поступлении любого разрешенного запроса прерывания.

Микроконтроллеры выпускаются в корпусах разных типов с разным числом выводов, при этом число выводов, используемых для подключения микроконтроллера к схеме устройства, может отличаться от числа выводов корпуса. В Таблице 1 указано число выводов (N), используемых для подключения микроконтроллера к схеме устройства.

Микроконтроллеры, имеющие N=20, выпускаются в корпусах PDIP20 и SOIC20. Все микроконтроллеры семейства АТ89 программируются и перепрограммируются пользователем. [2]

Стандартно микроконтроллеры имеют 5 источников прерываний: 2 внешних прерывания, 2 прерывания по таймеру и прерывание от последовательного порта. Прерывание по каждому источнику может быть индивидуально разрешено или запрещено путем установки или сброса в соответствующих битов в регистре разрешения прерываний IE, расположенном в пространстве SFR. Для каждого из источников прерываний может быть запрограммирован один из двух уровней приоритета путем установки или сброса соответствующего бита в регистре приоритетов прерываний IP. [3]

4. Описание структуры системы

Принципиальная электрическая схема приведена на рисунке 2.

Центральное место в схеме занимает выбранный выше микроконтроллер. К нему подключаются периферийные устройства.

В нашем случае, периферийными устройствами будут служить: клавиатура, семисегментные индикаторы, излучатель, двигатель, вентилятор и лампочка.

Рис.2

При реализации клавиатуры и индикации были применены дешифраторы К155ИД13 и два индикатора: трехсегментный E1-3040APR3 и четырехсегментный E3-4040APR2. При питании схемы использовался стабилизатор напряжения КР142ЕН5А. Все характеристики этих элементов приведены ниже.

Логическая блок-схема приведена на рисунках 3, 4, 5, 6.

Рис.3

Прерывание по таймеру 0

Рис. 4

Прерывание по таймеру 1

Рис.5

5. Спецификация элементов системы

Спецификация элементов используемых в системе приведена в таблице 3.

Таблица 3

Обозначение элемента

Название элемента

Тип элемента

DD0,DD1

Дешифратор

К155ИД13

HG0

Трехсегментный индикатор

Е1-3040APR3

HG1

Четырехсегментный индикатор

Е3-4040APR2

R3…R9

Резистор

3 кОм

R2

Резистор

5 кОм

R0,R1

Резистор

1.5 кОм

R10

Резистор

5.1 кОм

DA1

Стабилизатор

КР142ЕН5А

SW1…SW5

Ключи

K0,K1

Реле

РЭС-6

VT0, VT1

Транзистор

КТ315Б

VT2…VT8

Транзистор

КТ361Б

VD0,VD1,VD3, VD4

Диод

VD522

VD2, VD5

Стабилитрон

1N5240C

C0, C1

Конденсатор

0,33 мкФ

C3, C4

Конденсатор

30 пФ

С5

Конденсатор

10мФ

С2

Конденсатор

100мФ

ZQ

Кварцевый резонатор

12 МГц

6. Характеристики элементов

6.1 Стабилизатор фиксированного напряжения 5 вольт КР142ЕН5А

Микросхема КР142ЕН5А трехвыводной стабилизатор с фиксированным выходным напряжением 5 вольт могут найти применение в широком спектре радиоэлектронных устройств в качестве источниках питания логических систем, измерительной технике, устройств высококачественного воспроизведения и других радиоэлектронных устройств. Внешние компоненты могут быть использованы для ускорения переходных процессов. Входной конденсатор необходим только в том случае, если регулятор находиться на расстоянии более 5 см от фильтрующего конденсатора источника питания.

Существует четыре разновидности таких приборов - на это указывают буквы в конце маркировки: А, Б, В или Г. Чтобы обеспечить нормальную работу чипа, параллельно его входу подключают конденсатор не менее 1 мкФ, а параллельно выходу не менее 2,2 мкФ. Выходное стабилизированное напряжение для чипа с маркировкой А составляет 5±0,1 В, Б - 6±0,12 В, В - 5±0,18 В, Г - 6±0,21 В.

Номинальное входное напряжение - 15 В, минимальное для КР142ЕН5(А, В) - 7,5 В, для КР142ЕН5(Б, Г) - 8,5 В. Максимальный выходной ток для чипов с индексами А и Б - 3 А, для В и Г - 2 А. Собственный потребляемый ток - 10 мА. Рассеиваемая теплоотводом мощность - 10 Вт. Температура окружающей среды, при которых чипы сохраняют работоспособность - от -45°С до +100°С. [4], [5].

Основные характеристики

Допустимый выходной ток 1А

Не требуются внешние компоненты

Внутренняя термозащита

Защита выходного транзистора

Внутреннее ограничение тока КЗ

Рис. 6

Расположение выводов

1 Вход

2 Земля

3 Выход

Электрические характеристики

Все параметры преведены в таблице 4 при Vin=10В, Iout=500mA, 0°C<Tj<125°C, Cin=0.33mF, Cout=0.1mF если не оговорено другое.

Таблица 4

Наименование

Обозначение

Условия измерения

Мин.

Тип.

Макс.

Единица измерения

Выходное напряжение

Vout

Tj=25°C

4.9

5.0

5.1

B

7B<Vin<20B

5mA<Iout<1.0A

Pt<15Вт

4.75

-

5.25

B

Нестабильность по

входному напряжению

Voline

Tj=25°C

7B<Vin<25B

-

3

100

mB

8B<Vin<12B

-

1

50

mB

Нестабильность потоку нагрузки

Vo

load

Tj=25°C

5mA<Iout<1.5A

-

15

100

mB

250mA<

Iout<750mA

-

5

50

mB

Ток покоя

Iq

Tj=25°C,Iout=0

-

4.2

8.0

mA

Нестабильность тока покоя

Iq

7B<Vin<25B

-

-

1.3

mA

5mA<Iout<1.0A

-

-

0.5

mA

Выходное напряжение шума

Vn

Ta=25°C, 10Гц<f<100кГц

-

40

-

mkB

Коэффициент подавления пульсации

Rrej

f=120Гц

62

78

-

дБ

Падение напряжения

Vdrop

Iout=1.0A, Tj=25°C

-

2.0

-

B

Выходное сопротивление

Rout

f=1 кГц

-

17

-

мОм

Ток КЗ

Ios

Tj=25°C

-

750

-

mA

Максимальный выходной ток

Io peak

Tj=25°C

-

2.2

-

A

Температурная нестабильность

выходного напряжения

Vout

Tj

Iout=5mA, 0°C<Tj<125°C

-

1.1

-

мВ/°C

Типовая схема включения

Рис. 7

Чертёж корпуса

Рис. 8Таблица 5

6.2 Дешифратор К155ИД13

Микросхема представляет собой дешифратор на 3 входа и 8 выходов для управления шкалой со сдвигом двух точек. Содержит 119 интегральных элементов. Корпус К155ИД13 типа 238.16-1, КМ155ИД13 типа 201.16-5. [4], [5].

Корпус ИМС К155ИД13

Рис. 9

Условное графическое обозначение ИМС К155ИД13

Рис. 10 1 - выход 7; 2 - выход 6; 3 - выход 5; 4 - выход 4; 5 - выход 3; 6 - выход 2; 7 - выход 1; 8 - общий; 9 - выход 0; 10 - "перенос"; 11 - вход 1; 12 - вход 2; 13 - вход 3; 14 - вход "запрет"; 15 - вход "перенос"; 16 - напряжение питания;

Электрические параметры

Параметры представлены в таблице 6.

Таблица 6

1

Номинальное напряжение питания

5 В 5 %

2

Выходное напряжение низкого уровня

не более 0,4 В

3

Выходное напряжение высокого уровня

1,4...2,2 В

4

Входной ток низкого уровня

не более -1,6 мА

5

Входной ток высокого уровня

не более 0,04 мА

6

Напряжение на антизвонном диоде

не менее -1,5 В

7

Ток потребления

не более 70 мА

8

Входной пробивной ток

не более 1 мА

9

Ток утечки на выходе

не более -0,3 мА

10

Потребляемая статическая мощность

не более 367,5 мВт

6.3 Индикаторы

Трехсигментный индикатор E1-3040APR3. [4]

10.16 мм, 3 разряда. Характеристики в таблице 7.

Таблица 7

Цвет свечения

Кристалл

Vf(V)

Сила света Iv (ucd)

Материал

Длина волны (nm)

Раб.

Макс.

Мин.

Раб.

Красный

GaP

700

5.0

5.2

360

600

Четырехсигментный индикатор E3-4040APR2. [4]

10.16 мм, 4разряда. Характеристики в таблице 8.

Таблица 8

Цвет свечения

Кристалл

Vf(V)

Сила света Iv (ucd)

Материал

Длина волны (nm)

Раб.

Макс.

Мин.

Раб.

Красный

GaP

700

5.0

5.2

360

600

7. Программа

7.1 Структура программы

Написание и отладка программы производились в программе ProView фирмы Franklin Software Inc.

ProView фирмы Franklin Software Inc. – интегрированная среда разработки программного обеспечения для однокристальных микроконтроллеров семейства Intel 8051 и его клонов. Она включает в себя всё, что нужно для создания, редактирования, компиляции, трансляции, компоновки, загрузки и отладки программ:

    - стандартный интерфейс Windows,

    - полнофункциональный редактор исходных текстов с выделением синтаксических элементов цветом,

    - организатор проекта,

    - транслятор с языка C,

    - ассемблер,

    - отладчик,

    - встроенную справочную систему.

Среда разработки подобна Visual C++ Microsoft и Borland C++ для Windows.

ProView объединяет все этапы разработки прикладной программы в единый рекурсивный процесс, когда в любой момент времени возможен быстрый возврат к любому предыдущему этапу.

Программу можно поделить на 4 блока:

    Инициализация данных.

    Основной бесконечный цикл.

    Обработка прерывания по таймеру Т/С 0.

    Обработка прерывания по таймеру Т/С 1.

В 1-м блоке инициализируются данные и запускается таймер Т/С 0, отвечающий за обновление индикаторов и опрос клавиатуры.

Основной бесконечный цикл отвечает за обновление 3-х байтов, в которых содержится визуальное значение мощности.

Главная же часть программы содержится в 3-м блоке. Прерывание вызывается с частотой 700 Гц, чтобы обеспечить своевременное обновление значений на 7-ми индикаторах (3 индикатора отвечают за мощность, остальные отображают время), не заметное для человеческого глаза.

Параллельно с обновлением значений производится опрос клавиатуры. Если клавиша была нажата, то определяется, какая и допустимо ли действие, которое должно быть вызвано нажатием данной кнопки (например, нельзя увеличить максимальную мощность). Если действие допустимо, то оно производится. Возможные действия: увеличение/уменьшение мощности, увеличение времени, включение микроволновой печи, выключение, сброс времени. В случае включения печи, происходит запуск таймера Т/С 1, который отвечает за обратный отсчет времени, в течение работы микроволновой печи.

4-й блок занимается непосредственно режимом работы. В нем происходит обратный отсчет, регулировка выходной мощности печи. А также изменение визуального значения времени.

7.2 Исходный текст программы

При написании программы использовалась учебная литература. [6].

NAME Microwave

PROGSEGMENTCODE

CONSTSEGMENTCODE

VAR1SEGMENTDATA

BITVARSEGMENTBIT

STACKSEGMENTIDATA

RSEG STACK

DS 10H ; 16 Bytes Stack

CSEG AT 0

USING0 ; Register-Bank 0

JMP START

CSEG AT 03h

reti

CSEG AT 0Bh

ljmpm_TF0

CSEG AT 13h

reti

CSEG AT 1Bh

ljmpm_TF1

CSEG AT 23h

reti

RSEG PROG

START:MOV SP,#STACK-1

; инициализация данных

mov R3, #0h

mov 21h, #00000111b ; задаем начальную мощность

mov 22h, #00010000b ; задаем байт шага (изменяется сдвигом от 10000 до 00001)

mov 30h, #3h ; задаем визуальные начальные значения мощности

mov 31h, #6h

mov 32h, #0h

mov 33h, #0h ; задаем визуальные начальные значения времени

mov 34h, #0h

mov 35h, #0h

mov 36h, #0h

mov 40h, #00111111b ; задаем матрицу цифр, для вывода на индикатор

mov 41h, #00000110b

mov 42h, #01011011b

mov 43h, #01001111b

mov 44h, #01100110b

mov 45h, #01101101b

mov 46h, #01111101b

mov 47h, #00000111b

mov 48h, #01111111b

mov 49h, #01101111b ; задали матрицу цифр, для вывода на индикатор

; 50h код кнопки

mov 55h, #0h ; байт периодов по 10с

mov 56h, #0h ; байт отсчета 10с

mov 57h, #40 ; байт отсчета 2-х секунд (40*0,05)

; инициализация и пуск таймеров

mov TMOD, #00010001b

mov TL0, #LOW(NOT(1428))

mov TH0, #HIGH(NOT(1428))

setb PT0

setb PT1

setb EA

setb ET0

setb ET1

setb TR0

mm:

mov R7, 21h

cjne R7, #1Fh, v_4

mov 30h, #6

mov 31h, #0

mov 32h, #0

sjmp mm

v_4:

mov R7, 21h

cjne R7, #0Fh, v_3

mov 30h, #4

mov 31h, #8

mov 32h, #0

sjmp mm

v_3:

mov R7, 21h

cjne R7, #7, v_2

mov 30h, #3

mov 31h, #6

mov 32h, #0

sjmp mm

v_2:

mov R7, 21h

cjne R7, #3, v_1

mov 30h, #2

mov 31h, #4

mov 32h, #0

sjmp mm

v_1:

mov R7, 21h

cjne R7, #1, mm

mov 30h, #1

mov 31h, #2

mov 32h, #0

sjmp mm

; R3-номер текущего отображаемого индикатора

m_TF0: ;обработка прерывания по 1-му таймеру

mov TH0, #HIGH(NOT(1428))

mov TL0, #LOW(NOT(1428))

;изменение визуальных значений мощности и времени

mov23h, R3

movC, 18h

movP3.3, C

movC, 19h

movP3.4, C

movC, 1Ah

movP3.5, C

cjneR3, #0, m_1; если она не 0, то переходим на m_1

movA, 30h ;вывод цифры на соответствующий индикатор

addA, #40h

movR0, A

movP1, @R0

sjmpm_end

m_1:cjneR3, #1, m_2

movA, 31h

addA, #40h

movR0, A

movP1, @R0

sjmpm_end

m_2:cjneR3, #2, m_3

movA, 32h

addA, #40h

movR0, A

movP1, @R0

sjmpm_end

m_3:cjneR3, #3, m_4

movA, 33h

addA, #40h

movR0, A

movP1, @R0

sjmpm_end

m_4:cjneR3, #4, m_5

movA, 34h

addA, #40h

movR0, A

movP1, @R0

sjmpm_end

m_5:cjneR3, #5, m_6

movA, 35h

addA, #40h

movR0, A

movP1, @R0

sjmpm_end

m_6:movA, 36h

addA, #40h

movR0, A

movP1, @R0

m_end:

jbP3.2, key ;

mov 50h, R3 ; Опрос клавиатуры

sjmpm_13 ; в 50h - код полученной кнопки

key: mov 50h, #80h

m_13:

movR6, 50h

cjne R6, #80h, m_20

ljmp m_11

m_20:

movR6, 50h

cjneR6, #0h, m_21 ;обработка кнопки + время

jbTR1, m_11

movR6, 55h

cjneR6, #240, m_30

sjmpm_11

m_30:

movR6, 56h

cjneR6, #10, mw

inc55h

sjmpm_11

mw:

mov56h, #10

sjmpm_11

m_21:

movR6, 50h

cjneR6, #1h, m_22 ;обработка кнопки + мощность

movA, 21h ; проверка тек. состояния мощности

anlA, #00010000b ; если максимальное,

cjneA, #10000b, m_31 ; то игнорируем

sjmpm_11

m_31:setbC

movA, 21h

RLCA

mov21h, A

sjmpm_11

m_22:

movR6, 50h

cjneR6, #2h, m_23 ; обработка кнопки - мощность

movR6, 21h

cjneR6, #1h, m_32 ; тек. мощность минимальна?

sjmpm_11

m_32:clrC

movA, 21h

RRCA

mov21h, A

sjmpm_11

m_23:

movR6, 50h

cjneR6, #3h, m_24 ; обработка кнопки старт

jbTR1, m_11

movR6, 55h

cjneR6, #0, m_33

movR6, 56h

cjneR6, #0, m_33

sjmpm_11

m_33: movTL1, #LOW(NOT(50000))

movTH2, #HIGH(NOT(50000))

setbTR1

clrP3.0

sjmpm_11

m_24: ; Обработка кнопки стоп

jbTR1, m_34

mov55h, #0h

mov56h, #0h

mov57h, #40

mov22h, #00010000b

sjmpm_11

m_34: clrTR1

setbP3.0

m_11:incR3

cjneR3, #7, m_12

movR3, #0

m_12:reti

m_TF1:

movTH2, #HIGH(NOT(50000))

movTL1, #LOW(NOT(50000))

movA, 21h

anlA, 22h

cjneA, #0, iz_0

setbP3.1

sjmpdc

iz_0:clrP3.1

dc:dec57h ;декремент байта осчета 2-х секунд

movR5, 57h

cjneR5, #20, t_1 ;если 20 то надо -1с

dec56h

sjmpt_end

t_1:

movR5, 57h

cjneR5, #0, t_end ;если 0 то смена шага + проверка на окончание работы и пр.

dec56h

movR5, 22h

cjneR5, #1, t_10

mov22h, #00010000b

movR5, 55h

cjneR5, #0, t_2 ; проверка на 0 интервалов по 10 с

clrTR1

mov22h, #00010000b

setbP3.0

setbP3.1

sjmpt_end

t_2:dec55h

mov56h, #10

sjmpt_11

t_10:movA, 22h ;

RRA

mov22h, A

t_11:mov57h, #40

t_end:

movA, 55h

movR5, 56h

cjneR5, #10, d__

incA

mov36h, #0

sjmpd_1

d__:mov36h, 56h

d_1:movB, #6

divAB

mov35h, B

movB, #6

divAB

mov34h, B

mov33h, A

reti

END

Заключение

В результате разработки была создана система управления микроволновой печью, удовлетворяющая поставленной задаче. В процессе разработки были использованы программы CorelDRAW и ProView фирмы Franklin Software Inc.