Разработка и моделирование сервисного устройства выборочного ограничения исходящей междугородной связи
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
на рис. 32.
Рис. 32 - Режим анализа данных с линии (экранная копия)
Устройство определяет уровень напряжения в телефонной линии и если трубка положена на базу, ждёт её поднятия. При поднятии трубки происходит падение напряжения в телефонной линии с 30 В до 8 В. При этом в точке соединения резисторов R1 и R2 согласно рис. 17, происходит падение напряжения с 2,2 В до 0,7 В. Это показано на рис. 33 верхней (жёлтой) линией. При этом спустя один такт работы микроконтроллера формируется сигнал с выхода внутреннего компаратора, обозначенный на том же рис. 33 нижней (синей) линией.
Рис. 33 - Формирование сигналов снятия трубки (экранная копия)
После того как трубка снята и абонент начинает набор первых цифр номера, в телефонной линии появляются посылки DTMF кода, соответствующего каждой набранной цифре. Форма сигнала посылок DTMF кода видна на рис. 34.
Рис. 34 - Форма сигналов посылок DTMF кода
При посылке каждого DTMF сигнала в линию, декодер DTMF производит распознавание посылки и затем, когда сигнал будет равен 40 мс, он подаётся на выход в виде двоичного четырёхразрядного кода. Сразу после правильного распознавания сигнала формируется сигнал готовности DSO, как управляющий сигнал для микроконтроллера. Это продемонстрировано верхней (жёлтой) линией на рис. 35.
Рис. 35 - Формирование сигнала управления DSO (экранная копия)
Непосредственно в процессе моделирования, имитация декодера DTMF в среде Proteus, согласно рис. 26, осуществляется набором блока переключателей DSW2. Им набирают двоичный код, а кнопкой SB4 формируется сигнал управления DSO. При совпадении набранного номера и номера телефона, находящегося в памяти макета устройства, формируется сигнал сброса, который поступает на коммутатор, осуществляющий временный сброс линии согласно рис. 17, а в среде Proteus порт PB2 микроконтроллера формирует секундный сигнал сброса и тем самым включает светодиод D1. Все последующие наборы различных номеров будут приводить либо к срабатыванию того же сигнала сброса на порту PB2, если номер опять совпадёт или устройство никак не будет влиять на набор номеров, не совпадающих с заданным по условиям алгоритма.
Сервисные возможности устройства расширяются за счёт его опциональной возможности связи с компьютером. В среде Proteus предусмотрен виртуальный терминал последовательного интерфейса. При каждом набранном номере, в соответствии с протоколом передачи RS232 формируется байтовая посылка данных вместе со стартовым битом и стоп-битом. Сигнал TxD, формируемый на выходе микроконтроллера U1, показан на рис. 36 верхней (синей) линией. Преобразователь интерфейса RS232 U2, непосредственно связанный с микроконтроллером ATmega8, получая сигнал RxD, преобразует и инвертирует его из сигналов ТТЛ логики в уровни напряжений COM порта, т. е. в +10 В и минус 10 В. Это показано на рис. 36 нижней (жёлтой) линией.
Рис. 36 - Сигналы интерфейса RS232 (экранная копия)
Сам терминал RS232 при моделировании процесса отображает окно, через которое возможно как просматривать выводимую информацию, так и осуществлять ввод. Мы используем только режим приёма данных на терминал. Окно терминала показано на рис. 37.
Рис. 37 - Окно терминала (экранная копия)
Перейдём к моделированию программного обеспечения микроконтроллера.
3.3 Моделирование работы программы в среде Bascom AVR
Моделирование процесса работы программы рассмотрим в среде разработки Bascom AVR. Тактовая частота МК - 11,0592 МГц [20]. Частота выбрана из-за возможности работы с COM портом компьютера, чтобы осуществлять обмен на скорости 9600 бод/с. Для этого в настройках программы выберем кварц с рабочей частотой 11,0592 МГц. Режим симуляции автоматически произведёт целочисленное деление на 1152 и тем самым будет определена единственная скорость последовательного интерфейса микроконтроллера 9600 бод/с.
Общий вид программы представлен на рис. 38.
Рис. 38 - Общий вид программы BASCOM AVR (экранная копия)
Cмоделируем две основные ситуации, которые могут возникнуть при работе устройства на линии:
Абонент снял телефонную трубку, произвел набор телефонного номера - номер не совпал;
Абонент снял телефонную трубку, произвел набор телефонного номера - номер совпал.
При старте программы происходит инициализация переменных процесса. При этом также устанавливается и программно подключается источник опорного напряжения ИОН к положительному выводу компаратора микроконтроллера.
Программируются выводы микроконтроллера:
Pind.2 Pind.3 Pind.4 Pind.5 Pinb.0 Pinb.1 Pinb.3 Pinb.5 = как входы;
Pinb.2 = как выход;
Acsr = &B01000000 (настройка внутреннего компаратора).
В режиме симуляции отображается окно конфигурации регистров. При этом выводы портов, которые запрограммированы на выход, подсвечены ярким красным цветом. Это окно приведено на рис. 39.
Рис. 39 - Окно состояния регистров (экранная копия)
Также в режиме симуляции доступно окно состояния регистров специальных функций, таких как регистр компаратора ACSR. На рис. 40 видно, что в этом регистре записано число 40h в шестнадцатеричной системе, что эквивалентно числу 01000000b, записанному в регистр при написании программы.
Рис. 40 - Окно состояния регистров специальных функций (экранная копия)
На рис. 41 приведено окно состояния рабочих регистров, которые при написании программы могут явно не использоваться. Но переменные, определённые в программе, используют эти регистры в ходе выполнения