Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
14.07.2009, 08:59
|
|
Вид на жительство
Регистрация: 29.11.2006
Сообщений: 350
Сказал спасибо: 242
Сказали Спасибо 16 раз(а) в 14 сообщении(ях)
|
Определитель номера на AVRках
Здравствуйте, товарищи.
Разрабатываю интеллектуальное устройство (помните мой прошлый вопрос про декодирование DTMF сигнала? ) - часть сделал, но вот хотелось бы, чтобы устройство определяло номер телефона, с которого звонят. Устройство подключено к телефонной линии, т.е. необходимо декодировать сигнал, который приходит по телеонной линии, несущий в себе номер звонящего телефона.
Видел много реализаций на PICах, но я с ними ни разу не работал. Очччень хотелось бы сделать определитель номера на AVRке, если это возможно.
Подскажите, пожалуйста, возможные реализации и схемы (с прошивками - без них всё равно не пойму).
Надеюсь на понимание и Вашу доброту .
|
|
|
|
14.07.2009, 09:04
|
|
Вид на жительство
Регистрация: 29.11.2006
Сообщений: 350
Сказал спасибо: 242
Сказали Спасибо 16 раз(а) в 14 сообщении(ях)
|
P.S. И хотелось бы спросить - что это за сигнал передаётся для определения номера, его структура, на чём базируется (DTMF или нет)... Вобщем, что он из себя представляет?
|
|
|
|
14.07.2009, 12:50
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Ну ведь я ж тебе в предыдущем топике писал безинтервальный DTMF, т.е. без пауз между цифрами, длительность одной цифры около 40 мсек, есть кодовые комбинация начала и для замены одинаковых цифр. Выдается аппаратурой АОН, установленной на АТС по запросу с телефонной линии при установке соединения троекратно - запрос-тоновая посылка 500 Гц (если точно по правилам то еще и + по проводу b если память не изменяет - давно енто было и для бытовых АОН это не применяется). Нарой любую книжку по телефонии - лучше учебник для рабочих - попроще расписано.
Но есть еще одно существенное замечание. Если в сети стоят современные электронные АТС, то по прихоти телефонистов - с них Вы на абонентскую линию пакет АОН никогда не получите, т.е. номер определяться не будет.
Вот: http://phonefan.narod.ru/app-aon.htm
поподробнее расписано.
ЗЫ И еще: если не хочешь заморачиваться с преобразованиями Фурье, то проще всего сделать с использованием микросхемы кодового приемника - той что в предыдущем топике, ну или 1008ВЖ18 - наш аналог. Вся задача - при приходе с линии звонка - 25 Гц › 70V - автоматически поднять трубку (замкнуть линию через резюк) - выплюнуть в нее 500 Гц 100мсек, заполучить пакет и расшифровать с учетом комбинации начала и повтора цифры. Еще неплохо расшифровать не один, а два пакета и сравнить на отсутствие ошибок. Категорию абонента хороним, остальное выводим на индикацию. Можно еще подрезать старшие цифры в соответствии с принятой в городе нумерацией.
|
|
|
|
14.07.2009, 14:06
|
|
Вид на жительство
Регистрация: 29.11.2006
Сообщений: 350
Сказал спасибо: 242
Сказали Спасибо 16 раз(а) в 14 сообщении(ях)
|
Это всё прекрасно... Но различие частот - на лицо...
Например,
Цифра 1 700+900 Гц - Это в документации по АОН
Смотрим документацию по набору номера на DTMF
Цифра 1 697 Гц+1209 Гц
Да, думал на той же IL9060N или как её там, вобщем, дешифоратор DTMF, а вот как быть с разницей частот между наборным кодом и кодом, присылаемым от АТС? Поймёт ли микруха эти сочетания частот как те, которые выдаётся при обычном наборе?
|
|
|
|
14.07.2009, 15:49
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Сообщение от ArtUrl1986
|
Да, думал на той же IL9060N или как её там, вобщем, дешифоратор DTMF, а вот как быть с разницей частот между наборным кодом и кодом, присылаемым от АТС? Поймёт ли микруха эти сочетания частот как те, которые выдаётся при обычном наборе?
|
Нет ничего проще - используй две таблицы, одна из которых выбирается по прерыванию, которое в свою очередь ловится при входящем звонке на телефонной линии. Да и вообще вся программа АОН должна от него запускаться.
|
|
|
|
14.07.2009, 16:20
|
|
Вид на жительство
Регистрация: 29.11.2006
Сообщений: 350
Сказал спасибо: 242
Сказали Спасибо 16 раз(а) в 14 сообщении(ях)
|
Сообщение от Halex07
|
Сообщение от ArtUrl1986
|
Да, думал на той же IL9060N или как её там, вобщем, дешифоратор DTMF, а вот как быть с разницей частот между наборным кодом и кодом, присылаемым от АТС? Поймёт ли микруха эти сочетания частот как те, которые выдаётся при обычном наборе?
|
Нет ничего проще - используй две таблицы, одна из которых выбирается по прерыванию, которое в свою очередь ловится при входящем звонке на телефонной линии. Да и вообще вся программа АОН должна от него запускаться.
|
Это всё прекрасно, но Вы писали
Цитата:
|
ЗЫ И еще: если не хочешь заморачиваться с преобразованиями Фурье, то проще всего сделать с использованием микросхемы кодового приемника - той что в предыдущем топике, ну или 1008ВЖ18 - наш аналог.
|
Так вот - если я микруху поставлю скажем аналог 1008ВЖ18, сможет ли она принять и корректно декодировать сигнал от АТС? Частоты-то разные... Или ей без разницы и она понимает оба типа кодировки частотами?
|
|
|
|
14.07.2009, 19:36
|
|
Вид на жительство
Регистрация: 29.11.2006
Сообщений: 350
Сказал спасибо: 242
Сказали Спасибо 16 раз(а) в 14 сообщении(ях)
|
Опробовал вариант с IL9270N, послушал, что происходит в линии - да, сначала АОН выдаёт сигнал, а потом идёт переливчатый сигнал от АТС. Микруха не смогла продекодить этот сигнал.
Посоветуйте, пожалуйста, варианты...
|
|
|
|
14.07.2009, 21:26
|
|
Гражданин KAZUS.RU
Регистрация: 08.07.2006
Сообщений: 886
Сказал спасибо: 119
Сказали Спасибо 1,110 раз(а) в 177 сообщении(ях)
|
Ну тогда вам сюда: http://en.wikipedia.org/wiki/Goertzel_algorithm . Там и пример на C имеется.
Таблицу частот нужно подправить, возможно что-нибудь еще.
Алгоритм проще всего реализуется при использовании вещественной арифметики, но можно попытаться получить и целочисленную реализацию, если поджимает объем ПЗУ и скорость.
Также где-то видел реализацию корреляционного целочисленного алгоритма для АОН, но давно это было, ссылку не смог найти.
|
|
|
|
15.07.2009, 06:13
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
ArtUrl1986 Да, что-то я вчера с микрухой лоханулся - не катит это вариант. Давно видно телефонией не занимался, подзабыл уже. Ну в общем для АОН она не пойдет - в стандартном DTMF частоты берутся парно из разных диапазонов нижний/верхний. В АОН - коды цифирь отдаленно похожи на двоичный отсчет (если смотреть с единицы) и парные частоты берутся с подъемом от нижней до верхней:
Код:
|
F0=700Гц
F1=900Гц
F2=1100Гц
F4=1300Гц
F7=1500Гц
F11=1700Гц
---------------------------------------------
0 - F4 F7 6 - F2 F4
1 - F0 F1 7 - F0 F7
2 - F0 F2 8 - F1 F7
3 - F1 F2 9 - F2 F7
4 - F0 F4 "начало-конец" - F2 F11
5 - F1 F4 "повтор" - F4 F11 |
Тогда у Вас два пути: либо програмный метод декодирования как во всяких Русях ну и упоминаемом Вами 16F628 с переписыванием под AVR, ну или аппаратно выделять частоты фильтрами как вот здесь:
http://www.shemki.ru/readarticle.php?article_id=152
|
|
|
|
15.07.2009, 08:01
|
|
Вид на жительство
Регистрация: 29.11.2006
Сообщений: 350
Сказал спасибо: 242
Сказали Спасибо 16 раз(а) в 14 сообщении(ях)
|
Доброго дня.
Смотрел в инете - нашёл интересное кой-что:
АОН Палиха П-350 - процессор Atmega128. Есть у кого его схемка / прошивка? И как думаете, если к производителю обратиться, поделятся методикой декодирования сигнала?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:40.
|
|