Микропроцессоры и микроконтроллеры

 
 
 
«PHP — это маленькое зло, созданное некомпетентными новичками, в то время как Perl — это большое и коварное зло, созданное умелыми, но извращёнными профессионалами.»
Jon Ribbens
Русский | Українська


Микропроцессоры и микроконтроллеры :: Статьи :: Современный автоответчик на базе ARM

Современный автоответчик на базе ARM

Наступило время автоответчиков нового поколения. Не будет больше ни трудноузнаваемых голосов, ни проблем с нехваткой памяти. Новая разработка Бернара Деббаша с выходом в Интернет является идеальным решением для дома и офиса. Она основана на микроконтроллере LPC2138 производства NXP Semiconductors.

Некоторое время назад я купил телефонный автоответчик последней модели. Несмотря на то, что это была привлекательная известная марка, сразу же после его подключения я столкнулся с рядом проблем. Во-первых, для экономии памяти сообщений в аппарате использовался такой сильный алгоритм сжатия, что качество записанного сообщения было отвратительным. Во-вторых, в аппарате в качестве интерфейса пользователя было использовано громоздкое голосовое меню. Я мог прослушивать сообщения удаленно, но мне приходилось разбираться с жуткими голосовыми приветствиями. В-третьих, конфигурация аппарата сохранялась только при питании от свежей 9-вольтовой батареи. И в заключение, я обнаружил, что объем памяти автоответчика чрезмерно мал.

Для решения всех этих проблем я сконструировал ТАМТАМ — телефонный автоответчик «Открытый дом». Я не стал заменять неудачный интерфейс исходного автоответчика на лучший. Я

телефонный автоответчик

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

В этой статье я объясню, как построить подобную систему автоответа на микроконтроллере NXP Semiconductors LPC2138. Прежде чем описывать схемотехнику, давайте рассмотрим основные режимы работы системы.

РЕЖИМЫ РАБОТЫ

Я изготовил систему ТАМТАМ, показанную на рис. 1, для семьи Смит. Имея только четыре основных режима работы, разработать систему можно было бы довольно легко.

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

При обнаружении первого импульса вызова система переходит в режим Интеллектуального Автоответчика (см. рис. 2). В начале активируется программа определения номера звонящего абонента. Программа обработки прерываний (ISR) управляет процессом демодуляции сигнала, программой ра-

боты с универсальным асинхронным приемопередатчиком (UART) и подсчетом контрольной суммы. Фоновая задача ожидает завершения процесса детектирования. Блокировка по превышению лимита времени позволяет прервать операцию в случае неудачного детектирования или несовпадения контрольной суммы. После предварительно запрограммированного количества звонков система снимает трубку. Еще один важный этап касается правильного подсчета звонков. Звонки от одного або-

Первый приемопередатчик FlexRay

Компания NXP, бывшая Philips Semiconductors, объявила о начале серийного производства первого в мире приемопередатчика стандарта FlexRay, TJA1080. Данная микросхема вместе с отказоустойчивой системой NXP используется сейчас в BMW Х5, первом серийно производимом автомобиле, оснащенном системой FlexRay.

TJA1080 совместим с широкой номенклатурой микроконтроллеров, включая семейство NXP SJA25xx, что обеспечивает интегрированное решение для FlexRay-приложений. В настоящий момент NXP — единс-твенныфй поставщик полупроводников, который может предложить законченное системное решение для FlexRay-приложений, состоящее из микроконтроллеров и приемопередатчиков.

TJA1080 может быть сконфигурирован как узловой приемопередатчик или как приемопередатчик схемы «активная звезда». В результате появилась возможность простой и быстрой разработки полной FlexRay-сети с устойчивой связью без электромагнитных помех, с функцией диагностики ошибок и механизмами защиты. Разработка приемопередатчика TJA1080 — результат сотрудничества NXP с ключевыми участниками консорциума FlexRay. Основателями консорциума и разработчиками спецификации стандарта стали NXP и корпорация BMW.

телефонный автоответчик

нента, раздавшиеся сначала в понедельник, а затем — во вторник, считаются за два звонка!

После снятия трубки автоответчик воспроизводит первый звуковой WAV-файл: «Привет, это семья Смит. Пожалуйста, нажмите 1, если вам нужен Джим, 2 — для Джулии, 3 — для детей, 0 — для общего сообщения». Эта фраза предлагает звонящему послать тональный сигнал, чтобы направить сообщение соответствующему виртуальному автоответчику. Если тональная посылка не определена, то через некоторое запрограммированное время воспроизводится общее сообщение. В противном случае может быть вызвано спе-

циальное сообщение. Если абонент нажимает кнопку 2, система воспроизводит запись Джулии: « Привет, это Джулия. Сейчас я в гостях у мамы. Пожалуйста, оставьте сообщение».