Перейти к содержанию
    

ESN

Участник
  • Постов

    20
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о ESN

  • Звание
    Участник
    Участник

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Посетители профиля

1 069 просмотров профиля
  1. Вот, поисковик выдал: Скорость передачи в бодах - это число изменений состояния сигнала последовательной связи за одну секунду; состоянием сигнала может быть напряжение, частота или фаза. Если сигнал меняет состояние один раз для каждого бита данных, то один бит/с равен одному боду. Например, модем с быстродействием 300 бод меняет свое состояние 300 раз в секунду.
  2. Из современной тематики. Возьмем сигнал Caller_ID FSK из телефонии - импортный АОН. Его скорость передачи 1200 бод/c. и его формат - 1 start bod, 8 data bods, 1 stop bod. Сравним его с сигналом UART - 1 start bit, 8 data bits, 1 stop bit с такой же скоростью передачи 1200 бит/c. 1 бод информации по длительности равен 1 биту информации. Как из cигнала UART мысленно получить сигнал Caller_ID FSK? Там, где в сигнале UART присутствует 1, заполняем фрагментом синуса частотой 1200Hz/1300Hz. Соответственно, отрезки 0 - уровня сигнала в UART - это фрагмент синуса частотой 2200Hz/2100Hz. Терминология Bit против Bod - сводится к форме сигнала заполнения...? 😳
  3. CLIP для SIEMENS S150

    Разобрался с "непоняткой" - неправильно отсылал 18 байт $ff, соответствущих Mark Signal ( то что в литературе встречается, как ETSI 180+/-25 mark) Там ведь не должно быть Space -бод (никаких старт-бит), только Маrk-боды: 1 бод Mark, 8 информационных бод - 1, 1 бод Mark. В общем, на выходе HT9032C получил: 28 байт $55, 1 байт $f5 и Саller ID message, которое формировал посредством микроконтроллера AVR.
  4. CLIP для SIEMENS S150

    Тема старая, но ,на мой взгляд, не получившая логического завершения в части формирования сигнала caller FSK. Как частный случай, возьмем кварц частотой 3 686 400 Гц = 1200 (бит или бод -скорость передачи данных в формате FSK) *256 (ШИМ PWM 0-255) *12 (количество точек синуса при формировании бода Маrk или Space) и таблицу sin[] состоящую из 144 восьми разрядных значений. Для получения частот FSK используем ШИМ в который будут заноситься значения из таблицы sin с разными соответствующими частотам шагами: Шаг_Mark(1200)=12, Шаг_Mark(1300)=13, Шаг_Space(2100)=21, Шаг_Space(2200)=22. 12 последовательных значений с одинаковым шагом сформируют сигнал Mark или Space. Меняя значения кварца и длину таблицы sin[] можно сформировать эти сигналы более точно. Поправьте меня, если я где-то ошибся в своих "умозаключениях" по формированию cаller FSK. ;------------------------------------------------------------------ ; 1200(бод) * 12(точек синуса) * 256 (циклов ШИМ) = Кварц 3 686 400 Герц sinus_144: .db 128,133,139,144,150,155,160,166,171,176,181,186,191,196,201,205 .db 209,214,218,222,225,229,232,235,238,241,243,245,247,249,251,252 .db 253,254,255,255,255,255,255,254,253,252,251,249,247,245,243,241 .db 238,235,232,229,225,222,218,214,209,205,201,196,191,186,181,176 .db 171,166,160,155,150,144,139,133,128,122,116,111,105,100,95,89 .db 84,79,74,69,64,59,54,50,46,41,37,33,30,26,23,20 .db 17,14,12,10,8,6,4,3,2,1,0,0,0,0,0,1 .db 2,3,4,6,8,10,12,14,17,20,23,26,30,33,37,41 .db 46,50,54,59,64,69,74,79,84,89,95,100,105,111,116,122
  5. Mega48PA TQFP32

    Если установить в PRR бит PRSPI в программе или через фьюзы в Studio, то чип не будет соединяться с отладочным устройством через ISP интерфейс. Оживить чип можно только через HVP, сбросив этот фьюз.
  6. Мозги лучше иногда включить... После деления частоты кварца для экономии потребления камень начинает работать на 2457600/16=153600 Гц( если изначально ХТАL=2,457мГц) или 3579545/8=447443Гц (если ХТАL=3,579 мГц). После этого нужно сформировать одну из синусоид верхних частот: 1209Гц, 1336Гц,1477Гц или 1633Гц и сверху наложить с фазовой задержкой одну из синусоид нижних частот: 697Гц, 770Гц,852Гц,941Гц, чтобы получить сигнал DTMF. На эти операции уходит ровно 153600/1209=127, 153600/1336=115, 153600/1477=104, 153600/1633=94 машинных цикла при частоте 153600 Гц (в знаменателе генерируемая частота) или 447443/1209=370, 447443/1336=335, 447443/1477=303, 447443/1633=274 при частоте 447443Гц. Так формируется сигнал DTMF c помощью ЦАПа R/2R. При XTAL=2,457мГц DTMF-сигнал, содержащий частоту 1209 Гц, строится по 20 точкам, 1336Гц-18 точкам, 1447Гц-16 точкам, 1633Гц-14 точкам за период. И какие могут быть таймера при таком решении задачи, если команда возрата из прерываниея (таймерного в частности) reti съедает 4 машинных цикла + 2 цикла на сохранение и восстановление слова-состояния. Замечу, когда кнопка тастатуры нажата - сигнал формируется непрерывно! Все это ради экономии потребления тока. Частоты этих кварцов делятся на верхние частоты почти без остатка - нацело, поэтому погрешности при формировании сигналов DTMF таким способом - нет или 1 Гц. P.S. Лучше эту тему убрать или перенести.
  7. В первом случае, где упоминается I=0,45 mA речь шла о реализации программным путем 6-разрядного шима для DTMF набора на частоте вчетверо меньшей XTAL=3,579мГц. Конечно, что-то добавит периферия, возражений нет. Цифры 0,68mA и 0,8mA были получены на реальном образце в комбинации Atmega48+R/2R. Возможно, я сумбурно изложил предыдущее сообщение и это пояснение внесет ясность в его содержание.
  8. Нет смысла засыпать при ногомахании, т.к. CPU Atmega48 при 3V и XTAL=3579545/4 потребляет 0,45mA. В несколько иной парадигме ногомахания, имея Atmega48 и ЦАП R/2R шестиразрядный, удалось, деля частоту кварца, получить электрические характеристики аналогичные микросхемы KP1008ВЖ7 (номеронабиратель): ток потребления при непрерывном формировании сигнала DTMF при ХTAL=3,579/8 мГц I=0,8mA (при ХTAL=2,457/16 мГц I=0,68mA), импульсном наборе - I=0,05mA. Режим сна тоже использовался. Погрешности по частоте - нет. Надеюсь, что убедил Вас - имеется класс задач исключительно для ASMa. :rolleyes:
  9. Написание программы на ASMe не самоцель. Если частота процессора позволяет (потребление тока), то можно и поспать в перерывах между загрузками ШИМ-таймера, формируя DTMF-набор в частности. Иначе, бесконечный цикл из 64 фрагментов (6 разрядный ШИМ) каждый из которых отрабатывает 64 машинных цикла, в которых происходит смена 0 и 1, строго отслеживая по циклам их начало(0), конец(1),длительность импульса(0-1),плюс анализ критерий выхода из цикла. На Си написать такой цикл вряд ли получится: представляется,что будут проблемы с формированием начала импульса и собственно с формированием импульсов малой длительности. Т.е имея изначально XTAL=3,579 мГц, можно примерно тоже самое (погрешность 2 младших разряда) реализовать на частоте в 4 меньше.
  10. Если это был номеронабиратель, то результат работы был неубедительным. Некоторые задачи можно решить только на АSMе. Например, вместо 8-разрядного аппаратного ШИМа, можно написать программу на ASMe, реализующую 6-разрядный ШИМ. Этим самым достигается уменьшение потребление тока в 4 раза.
  11. Вот, если бы "Миландр" прикупил "Atmel", обреченности в заголовке темы не было бы. :bb-offtopic:
  12. UART в Xmega

    При F_PER =12 000 000 Гц и F_Baud=9600 bit/s чтобы минимизировать ошибки обмена следует положить регистр BSCALE=-3 , тогда BSEL станет равным $0269 - целым числом, что делает обмен стопроцентным. Вообще, следует сделать расчеты для всех значений BSCALE (от -7 до 7) и выбрать тот вариант, где BSEL имеет минимальную дробную часть. При записи в регистры управления вместо -3 следует писать $0d. Т.о получаем: USART_BAUDCTRLA=$69 и USART_BAUDCTRLB=$d2 - параметры задающие скорость.
  13. Добрый день. Вы делали контрольно-измерительную аппаратуру или обычный телефон? При ШИМе в 32кГц синусоида частотой 1633Гц будет строится по 20 точкам(выборкам), а сигналы более низкой частоты и того больше. Нет ли здесь избыточности? В справочнике "Интегральные микросхемы" издательство "Додека" приводятся картинки с сигналами частот DTMF, которые выдают номеронабиратели(UM91531,UM1260,UM1261): там (стр.57,64) количество выборок равно 10. Хочу повторить номеронабтратель КР1008ВЖ27 на Attiny2313, но чтобы "влезть" по энергопотреблению нужно частоту поделить на 4 и сделать ШИМ 6-разрядным. Тогда синус 1477Гц (1633Гц у этого номеронабирателя нет) "нарисуется ШИМом по 9,5 точкам. Вроде, должны получиться характеристики, как у серийных номеронабирателей...
  14. USART xmega

    В продолжении темы полезная ссылка:Калькулятор для BSCALE-value,BSCALE-bitmap
×
×
  • Создать...