Имитатор телефонной линииРефераты >> Коммуникации и связь >> Имитатор телефонной линии
Рис. 3.
Схема межмодульных связей программы
Разработанная по вышеизложенной спецификации программа для микроконтроллера приведена в приложении 3 настоящей работы и может служить для выполнения задачи, поставленной в техническом задании.
5. Временные диаграммы работы устройства
6. Описание составных элементов схемы
Выбор элементов для составления принципиальной схемы устройства будет заключаться в выборе микроконтроллера, микросхем для индикации номера, а также микросхем для обслуживания линий подачи сигналов и анализа наличия постоянного тока в выходной цепи.
В качестве микроконтроллера для работы в устройстве можно использовать однокристальную вычислительную машину ОВМ 51. Она обладает приемлемой ценой и производительностью и вполне может быть использована в качестве микроконтроллера в разрабатываемом устройстве. Кроме того, у разработчика имеется возможность протестировать программу именно для этой ОВМ с использованием персонального компьютера, при помощи эмулятора AVSim51, для устранения синтаксических и некоторых логических ошибок возникших в процессе написания программы.
Номиналы резисторов R1-R3 выберем равными 1,5 КОм, для ограничения входного тока на вход микроконтроллера.
В качестве задающего кварцевого генератора для ОВМ будем использовать кварцевый генератор на 12 МГц ( для обеспечения такта в 1 мкс)
Схему индикации разумно выполнить следующим образом. Для индикации восьми разрядов номера необходимо использование динамического способа индикации. Поэтому используем для вывода двоичного кода цифры четыре первых разряда порта P0, а для указания знакоместа – все выводы порта P1. При таком построении индикации остаются неиспользованными четыре линии порта P0. Их можно считать зарезервированными для последующей модернизации устройства. Для преобразования двоичного кода на выходе ОВМ в код семисегментного индикатора необходима установка специального дешифратора. В качестве подобного дешифратора можно использовать микросхему КР514ИД1. данный дешифратор содержит внутренние токоограничивающие резисторы (IВЫХ=5 мА), что позволяет подключать индикаторы с общим катодом АЛ304А непосредственно к выходам дешифратора [1]. Данные микросхемы и будем использовать для обслуживания индикации в разрабатываемом устройстве.
Рассмотрим теперь линии, подающие различные сигналы на выход устройства. Это линия подачи питания для телефонного аппарата, а также линии подачи сигналов АТС и подачи звонковых импульсов. На выходе устройства все эти линии объединяются в одну, которая и является линией, имитирующей линию АТС.
Напряжение питания 60 В должно подаваться на выход устройства постоянно, поэтому эту линию можно подключить к выходу устройства напрямую. Напряжение с сигнальной линии может включаться последовательно с напряжением питания (напряжение будет суммироваться с напряжением питания). Импульсы напряжения, подаваемые на выход устройства должны быть достаточно мощными, поэтому для их подачи выделяется отдельная линия, в которую ставится инвертор сигнала с открытым коллектором на выходе, а также транзистор КТ502Е. Номиналы резисторов выберем равными R4=7КОм, R5=1 КОм, выбор осуществим исходя из условия, что транзистор должен находится в режиме насыщения в открытом состоянии и в режиме отсечки в закрытом. Такое построение выходных линий позволяет получить на выходе устройства сигналы идентичные по своим параметрам сигналам телефонной линии.
Для анализа наличия тока в выходной цепи целесообразно будет использовать резистор 0,5 КОм (номинал выбран исходя из уровня напряжения на входе порогового устройства), установленный в выходную цепь, а также пороговое устройство (для увеличения помехозащищенности устройства). В качестве порогового устройства можно использовать микросхему КР100ВИ6. Сигнал с выхода этой микросхемы подадим на вход P3.2 микроконтроллера. Таким образом, всегда, когда в выходной цепи устройства есть ток, на этот вывод микросхемы будет подан высокий уровень напряжения.
Исходя из вышеизложенного описания узлов, можно составить принципиальную схему устройства (см. прил.2) , которую и принять, в совокупности с программой (см. прил.3) в качестве реализации технического задания на курсовую работу.
7. Описание процесса работы устройства
Сразу после включения питания микроконтроллер получает команду Reset, и сразу начинает выполнение микропрограммы. Микропрограмма начинается с вызова подпрограммы опроса клавиатуры. Комбинация нажатых клавиш заносится в соответствующие ячейки памяти контроллера, и управление передается основной программе.
После этого происходит вызов подпрограммы обслуживания порта индикации. Данная подпрограмма производит последовательное подключение индикаторов DD.3-DD.11 через порт P1, с одновременным выставлением кода соответствующей цифры. Этот код поступает на вход дешифратора DD.2, где преобразуется в коды семисегментного индикатора, и поступает затем на соответствующие входы индикаторов DD.3-DD.11.
После обслуживания клавиатуры и индикации программа передает управление основной подпрограмме, которая и выполняет роль генератора сигналов.
Вначале данная подпрограмма проверяет наличие тока в выходной цепи устройства. Сигнал поступает на вход P3.2 микроконтроллера с порогового устройства DD.13, которое переключается под действием падения напряжения на резисторе R6. Если тока нет, то делается предположение о том, что разрыв вызван тоновым набором номера. Запускается соответствующая программа обслуживания набора номера. Если длительность разрыва превышает 0,6 с. то делается вывод, что разрыв вызван тем, что трубка лежит на аппарате, и управление передается основной программе. Если же длительность разрыва меньше, то программа переходит в режим анализа набора номера (сигналы в этом режиме не генерируются) и считается число разрывов, с последующим занесением этого числа в соответствующие ячейки памяти.
Если трубка положена, то делается проверка на нажатие кнопки “Звонок”, и если она нажата, то микроконтроллер генерирует импульсы звонковой частоты соответствующими пачками и делает это, пока не поднимется трубка на аппарате, или не будет отпущена кнопка звонка. Данные импульсы поступают на инвертор DD.12.1. с открытым коллектором, а затем на усилительный транзистор VT1, складываясь затем с напряжением питания.
Если же кнопка не нажата, то программа возвращается к своему началу.
Если же трубка снята, то программа проверяет состояние кнопок “Вызов” и “Контроль вызова”. И в зависимости от состояния этих кнопок генерируется сигнал, выдаваемый в линию P3.2. Это или непрерывный гудок, либо короткие гудки (сигнал “занято”), либо длинные гудки (сигнал “контроль вызова”).
Непрерывный гудок генерируется следующим образом. Каждый цикл основной программы генерируется импульс длительностью 10 мс. Все вычисления и обслуживания портов программа проводит в момент паузы.
Остальные сигналы генерируются пачками, и программа не меняет своего режима до конца пачки.