Рис. 4. Пример отображения на LED-индикаторе пункта меню настройки звонков
Ввод значений производится аналогично тому, как это делается в меню настройки даты и времени. При этом можно ввести до 30 звонков в память автомата. Длительность звонков вводится в секундах. Максимальное значение составляет 59 с.
ВНИМАНИЕ! При первом запуске автомата необходимо произвести настройку звонков, так как устройство не умеет предустановленной схемы. Обязательно нужно установить длительность звонков, иначе они не будут производиться (начальное значение длительности - 0).
Рис. 5. Отображение на LED-индикаторе режима ввода количества звонков
При переходе в режим ввода времени звонков пользователь попадает в меню выбора звонка, где число пунктов соответствует установленному количеству звонков.
Меню времени звонков содержит пункты
Обозначение пункта на индикаторе |
Расшифровка |
ЗВН 01 |
Переход в режим ввода звонка 1 |
ЗВН 02 |
Переход в режим ввода звонка 2 |
… |
… |
ЗВН N* |
Переход в режим ввода звонка N |
ВЫХОД |
Выход в меню настройки звонков |
Рис. 6. Пример отображения на LED-индикаторе пункта меню времени звонков
После нажатия кнопки ВВОД на одном из пунктов, пользователь последовательно вводит час и минуту звонка, аналогично тому, как это производится в режиме ввода времени, и автоматически возвращается в меню времени звонков.
Приложение 1
Схема устройства принципиальная
Приложение 2
микроконтроллер автомат звонок часы
Листинг текста программы
/*
Курсовой проект по дисциплине «Цифровые устройства и микроконтроллеры»
// заголовочный файл
#include <pic18.h>
// конфигурация контроллера
CONFIG (1, CPUDIV1 & INTIO);
CONFIG (2, PWRTDIS & BORDIS & WDTDIS);
CONFIG (3, PBDIGITAL & MCLREN);
CONFIG (4, LVPDIS);
CONFIG (5, UNPROTECT);
CONFIG (6, UNPROTECT);
CONFIG (7, UNPROTECT);
// -
// глобальные переменныеchar i=0, j, l; // вспомогательные счетные переменныеchar d, month, day, year; // вспомогательные вычислительные переменныеunsigned char CallDuration=5; // длительность звонка в секундахchar CallCount=0; // для временного хранения числа звонков (максимум 30)char Zvonok=0; // для хранения номера звонка, время которого изменяется в настоящий моментchar WDAY_Month; // переменнная для считывания текущего дня недели и месяца из часовchar Minutes; // переменнная для считывания текущего значения минут из часовchar Hours; // переменнная для считывания текущего значения часаchar Seconds; // переменнная для считывания текущего значения секундchar LedWork=0; // логическая переменная (режим настройки вкл/выкл) *дисплей работает только в режиме настройкиchar SymPlace=0x00; // 6 младших битов этой переменной определяют,
// на какие позиции дисплея необходимо выводить символыchar DotPlace=0x00; // на какие позиции ставаить точкиchar Symbols[12]; // массив символов, которые в данный момент должны выводиться на экран
// (каждый символ использует два байта для описания своей конфигурации на дисплее)char Mode; // определяет, в каком режиме находится система настройки
// 1 - главное меню
// 2 - режим установки времени и даты
// 3 - режим ввода года
// 4 - режим ввода месяца
// 5 - режим ввода числа
// 6 - режим ввода дня недели
// 7 - режим ввода часа
// 8 - режим ввода минуты
// 9 - меню настройки звонков
// 10 - настройка количесва звонков (до 30)
// 11 - выбор номера звонка для настройки времени срабатывания
// 12 - режим ввода часа выбранного звонка
// 13 - режим ввода минуты выбранного звонка
Анализ сигналов в радиотехнических цепях
Теоретическая
часть должна включать:
расчеты
спектральной плотности, амплитудного и фазового спектров сигнала и его
автокорреляционной фун ...
Расчет усилителя постоянного тока
электромагнитная головка
тип - ГЗМ-105
Диапазон частот - 31,5 - 18 кГц
Величина выходного напряжения (на НЧ) - 0,7 мВ
Величина выходног ...
Расчет многослойных просветляющих и отражающих покрытий
Для заданной марки оптического материала произвести расчёт
однослойного, двухслойного, трёхслойного и многослойного просветляющего
покрытия с мин ...