[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Jamy  
Форум » Общий форум » Приемники ,сканеры » Сканирующий приемник P-45
Сканирующий приемник P-45
agnДата: Суббота, 28.11.2015, 23:58 | Сообщение # 301
Джа-Джа Бинкс
Группа: Проверенные
Сообщений: 32
Статус: Offline
Цитата Jamy ()
Есть у кого нибудь приемник с установленной 24c32 ?
Мелкосхема есть, несколько проводков подпаять не проблема.
Приемник настроен. Готов протестировать.


Сообщение отредактировал agn - Воскресенье, 29.11.2015, 14:53
 
JamyДата: Понедельник, 30.11.2015, 01:45 | Сообщение # 302
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
agn, скину на почту.

alexr171, может натолкнет на какие то мысли -



alexr171, принципе наверно разобрался, в процедуре тюнера при выводе последнего бита данных, если он был (1) то не сбрасывается линия SDA в (0) для формирования ACK. Интересно еще знать, что при этом думает себе тюнер.
 
dadigorДата: Понедельник, 30.11.2015, 12:00 | Сообщение # 303
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline
В этом случае тюнер может отбросить всю посылку, как сбитую, обычно так делается. Считается, что есть коллизии на шине, значит ошибка.
 
JamyДата: Понедельник, 30.11.2015, 12:28 | Сообщение # 304
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата dadigor ()
В этом случае тюнер может отбросить всю посылку, как сбитую, обычно так делается. Считается, что есть коллизии на шине, значит ошибка.

По идее да, но многие устройства имеют очень упрощенную реализацию I2C , может tda не обращает на это внимания (в циклах где гарантировано может быть только ACK), надо посмотреть даташит если там есть об этом. Но если иначе, то мы действительно теряем некоторые посылки.
В принципе думаю ошибка найдена, осталось поправить.
 
dadigorДата: Понедельник, 30.11.2015, 12:57 | Сообщение # 305
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline
TDA столько лет на рынке, что скорее всего у них I2C вылизан дочиста, как библиотечный элемент во всех относительно новых микросхемах (в нашем случае это 2004 год). Поскольку коллизии на шине в принципе могут быть, а контрольная сумма для контроля обмена не используется, то такая ситуация должна быть явной ошибкой. ИМХО
В даташитах (от 2004 Apr 16) я ничего об этом не нашел (стр. 8 - 12).
Заодно вопрос, судя по всему у меня на АМ частоты смещены вверх порядка 20 КГц, например я принимаю (пока еще плоховато) сигнал на частоте 118120, а он должен сидеть на 118100. Что-то настроено не так.


Сообщение отредактировал dadigor - Понедельник, 30.11.2015, 12:59
 
JamyДата: Понедельник, 30.11.2015, 13:02 | Сообщение # 306
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата dadigor ()
Заодно вопрос, судя по всему у меня на АМ частоты смещены вверх порядка 20 КГц, например я принимаю (пока еще плоховато) сигнал на частоте 118120, а он должен сидеть на 118100. Что-то настроено не так.

А с NFM все четко, как качество и громкость сигнала?
 
dadigorДата: Понедельник, 30.11.2015, 13:15 | Сообщение # 307
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline
качество и громкость пока неважные, а частоту я не знаю - пока только стрители и охранники лезут... Но терзают сомнения, какие-то частоты, не выравненные на 100, типа хххх40, хххх60, ххххх80

Сообщение отредактировал dadigor - Понедельник, 30.11.2015, 13:20
 
JamyДата: Понедельник, 30.11.2015, 13:25 | Сообщение # 308
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата dadigor ()
качество и громкость пока неважные, а частоту я не знаю - пока только стрители и охранники лезут...

Варианты - ошибка разводки, кварц 10.245, конденсаторы кварца, фильтр 455. Это и дает такой эффект на NFM и АМ.
Стоило первый вариант все же собирать на проверенных платах, что бы разводку исключить.
А корректировку ПЧ1 не делали ? Что вообще она показывает при включении ? Может константы в eeprom глюкнули.
 
dadigorДата: Понедельник, 30.11.2015, 18:09 | Сообщение # 309
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline
При включении пишет
"P45 Ver 3.5
memory 3x50"
При зажиме NFM пишет
IF1 correction
37.300 MHz
Корректировку ПЧ1 не делал. Разводку потихоньку проверяю, пока ничего криминального не нашел, доработки пока убрал. Надо бы мне в структуре приемника разобраться, помню, где-то попадалось описание и схема, а где...
Вообще сейчас есть впечатление, что на нужной частоте просто огромные перегрузки даже при небольшом усилении, а когда уходишь вбок, то там что-то можно услышать..
Еще заметил, что CS на PLL в рабочем режиме всегда в нуле, и на нее постоянно идут коды, даже если перестройки нет, это правильно?

ЗЫ Вот что написано в даташитах на TDA относительно режима записи:
"The frequency divider register is loaded after the 8th clock pulse of byte DB2. The control register is loaded after the 8th clock pulse of byte CB, and the band switch register is loaded after the 8th clock pulse of byte BB."
Таким образом косвенно можно понять, что нет буферизации принимаемого по I2C пакета, данные напрямую пишутся в регистры делителя и управления. Ясень пень, что о нашей будущей ошибке никто еще ничего не знает, а содержимое регистров уже изменилось, а значит команда исполнилась. Т.е. ошибка по-видимому игнорируется. Был неправ, каюсь. ((


Сообщение отредактировал dadigor - Понедельник, 30.11.2015, 21:27
 
alexr171Дата: Понедельник, 30.11.2015, 21:46 | Сообщение # 310
Юный падаван
Группа: Проверенные
Сообщений: 87
Статус: Offline
Цитата Jamy ()
alexr171, принципе наверно разобрался, в процедуре тюнера при выводе последнего бита данных, если он был (1) то не сбрасывается линия SDA в (0) для формирования ACK. Интересно еще знать, что при этом думает себе тюнер.
В тюнере на линиях I2C стоят резисторы 330 Ом , последовательно от штырьков тюнера до ног TDA.Когда TDA-шка выдает в линию 0 , ток ограничивается этими резисторами.
 
JamyДата: Вторник, 01.12.2015, 11:19 | Сообщение # 311
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата alexr171 ()
В тюнере на линиях I2C стоят резисторы 330 Ом , последовательно от штырьков тюнера до ног TDA.Когда TDA-шка выдает в линию 0 , ток ограничивается этими резисторами.

Да совершенно верно, я это знаю.
Я вам говорю о том, что когда atmega передает данные в тюнер, если последний бит данных который идет перед формированием ACK был лог. 1 то линия SDA не сбрасывается в лог. 0 что бы сформировать ACK, и выходит ошибка , при которой tda скорее всего игнорирует всю посылку, ошибка эта в прошивке унаследована с незапамятных времен.
Надеюсь смог объяснить.
Цитата dadigor ()
При зажиме NFM пишет
IF1 correction
37.300 MHz

Тут все правильно, трогать не надо.

Цитата dadigor ()
Еще заметил, что CS на PLL в рабочем режиме всегда в нуле, и на нее постоянно идут коды, даже если перестройки нет, это правильно?

Чем смотрели ? А WFM корректно работает, как качество звука ?
 
dadigorДата: Вторник, 01.12.2015, 17:35 | Сообщение # 312
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline
Я смотрел CS_PLL осциллографом (Hantek DSO1202B), не поймал ни одного высокого пичка, сплошной "0".  
WFM работает нормально, качество вполне. Попробовал прописать первую промежутку 37.280 - сигнал стал приниматься на своем положенном месте 118100. Немножко еще отстроился, прибавилась чуться , убавил усиление (пока режим MN) и сигнал стал почище. 

Что касается игнорирования посылки в TDA - я уже писал чуть выше, повторюсь, TDA записывает принятые данные в регистры побайтно, по мере их приема, типа синхроимпульсы текущего байта прописывают байт прямо в соответствующий регистр и к моменту возникновения ошибки данные сидят на своих местах. Конечно возможно, что на входах рабочих регистров могут быть еще и буферные темп-регистры и по окончании всей передачи происходит одномоментная смена всех данных (на мой взгляд это было бы правильно), но в даташитах о таком варианте ни слова.
Проверить так это или не так можно в отладочном режиме, послать две хорошо различаемые по результатам команды, причем первую без ошибки, а вторую с ошибкой и посмотреть результат. Если после прохождения двух команд будет отработана вторая - значит ошибка не замечается и ошибочная посылка.не игнорируется.
 
JamyДата: Вторник, 01.12.2015, 17:49 | Сообщение # 313
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
dadigor, Тогда как и писал выше смотрите обвязку 455кгц и кварц 10.254, и проверяйте разводку. cs_pll бывает в (1) только при передаче данных в lc72131 ,то есть при смене частоты или модуляции.

LC72131

Прикрепления: 2134617.jpg (25.8 Kb)
 
dadigorДата: Вторник, 01.12.2015, 19:25 | Сообщение # 314
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline
С CS_PLL понятно. Я думал, что он работает, как обычно принято в устройствах, управляемых по SPI - т.е. устройство открывается при CS_PLL = 0 (т.е. у нас практически постоянно, что меня и удивило). Такой сигнал действительно принято называть CS = ChipSelect и я к этому уже привык, что ли. Сейчас посмотрел в даташиты, а там канал открывается по "1", такой сигнал обычно называют CE = ChipEnable, так он там и назван. Просто на схеме почему-то эта ножка поименована CS.

Попробую перетянуть кварц на 20 КГц, я так понимаю нужно увеличить С51 ?
 
JamyДата: Вторник, 01.12.2015, 20:07 | Сообщение # 315
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата dadigor ()
С CS_PLL понятно. Я думал, что он работает, как обычно принято в устройствах, управляемых по SPI - т.е. устройство открывается при CS_PLL = 0 (т.е. у нас практически постоянно, что меня и удивило). Такой сигнал действительно принято называть CS = ChipSelect и я к этому уже привык, что ли. Сейчас посмотрел в даташиты, а там канал открывается по "1", такой сигнал обычно называют CE = ChipEnable, так он там и назван. Просто на схеме почему-то эта ножка поименована CS.

Попробую перетянуть кварц на 20 КГц, я так понимаю нужно увеличить С51 ?


В LC72131 не SPI протокол, а CCB.
А вы частоту кварца 10.245 мерили ? Я не думаю, что она могла уйти так далеко.
 
alexr171Дата: Вторник, 01.12.2015, 21:12 | Сообщение # 316
Юный падаван
Группа: Проверенные
Сообщений: 87
Статус: Offline
Цитата Jamy ()
Я вам говорю о том, что когда atmega передает данные в тюнер, если последний бит данных который идет перед формированием ACK был лог. 1 то линия SDA не сбрасывается в лог. 0 что бы сформировать ACK
Именно так, в предыдущем сообщении я и пытался показать , что при такой схемной реализации ни на контроллере ни на тюнере реального сигнала мы не увидим.Что в действительности сформировала TDA (ACK или NACK) можно увидеть только непосредственно на её ногах.Если будет желание и возможность , киньте еще один канал непосредственно на ногу SDA TDA-шки и сравните.
 
JamyДата: Вторник, 01.12.2015, 21:44 | Сообщение # 317
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата alexr171 ()
Именно так, в предыдущем сообщении я и пытался показать , что при такой схемной реализации ни на контроллере ни на тюнере реального сигнала мы не увидим.Что в действительности сформировала TDA (ACK или NACK) можно увидеть только непосредственно на её ногах.Если будет желание и возможность , киньте еще один канал непосредственно на ногу SDA TDA-шки и сравните.

Уже собрал приемник, опять разбирать не хочу( у меня платы спаиваются на штырьках), проще думаю будет сделать пару строк для проверки ACK.И опять глянуть анализатором.Плюс поправить немного свою процедуру, при приеме ACK, по анализатору видно, что не совсем вовремя делается реверс порта. А вообще конечно удобнейшая вещь этот анализатор, раньше был бы, сэкономил не один день.

Кстати попробовал подпаял один канал к кварцу 7.2, был удивлен анализатор показал тактирование, хотя на кварце совсем не большая амплитуда сигнала. Так,что им можно проверять такого рода генерацию. Естественно без особой точности (или сделать чувствительный щуп/преобразователь для точных измерений)
 
alexr171Дата: Вторник, 01.12.2015, 22:21 | Сообщение # 318
Юный падаван
Группа: Проверенные
Сообщений: 87
Статус: Offline
Цитата Jamy ()
проще думаю будет сделать пару строк для проверки ACK.И опять глянуть анализатором.
А что нам даст эта проверка?Я имею ввиду только тюнер , для 24с32 другое дело.
 
JamyДата: Вторник, 01.12.2015, 22:34 | Сообщение # 319
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата alexr171 ()
А что нам даст эта проверка?Я имею ввиду только тюнер , для 24с32 другое дело.

Для начала посмотрю, что нам тюнер говорит, если будут NACK-и то может добавлю повторную отправку.
Нет пределу совершенства, это точно про прошивку и баги P45

PS сегодня пришел мне программатор для 24xxx/25xxx eeprom , очень интересно посмотреть анализатором на правильный протокол работы с этой памятью и сравнить с тем,что написал я. Там скорости максимальные, можно проанализировать как прижимается CLK для торможения, и NACK, если там бывают сбои при обмене.
 
alexr171Дата: Вторник, 01.12.2015, 22:46 | Сообщение # 320
Юный падаван
Группа: Проверенные
Сообщений: 87
Статус: Offline
Цитата Jamy ()
Для начала посмотрю, что нам тюнер говорит, если будут NACK-и то может добавлю повторную отправку.Нет пределу совершенства, это точно про прошивку и баги P45
Согласен , если NACK-ки будут , то или повтор , или игнор , я склоняюсь к последнему.Так Р45 этож для души , а значит совершенствовать можно до бесконечности smile
 
JamyДата: Вторник, 01.12.2015, 22:50 | Сообщение # 321
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата alexr171 ()
совершенствовать можно до бесконечности

Да, у меня уже появилась идея связать P45 c моей поворотной антенной, что бы по s-metr настраивалась по максимуму сигнала автоматически без моего участия.
 
alexr171Дата: Вторник, 01.12.2015, 22:55 | Сообщение # 322
Юный падаван
Группа: Проверенные
Сообщений: 87
Статус: Offline
Цитата Jamy ()
Да, у меня уже появилась идея связать P45 c моей поворотной антенной, что бы по s-metr настраивалась по максимуму сигнала автоматически без моего участия.
Мысль интересная , можно попробовать связать два контроллера по USART.
Женя , тут в запарке совсем забыл поблагодарить за выложенный ролик , сорри.
 
JamyДата: Вторник, 01.12.2015, 23:15 | Сообщение # 323
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата alexr171 ()
Мысль интересная , можно попробовать связать два контроллера по USART.
Женя , тут в запарке совсем забыл поблагодарить за выложенный ролик , сорри.

Да я занял порты эти в поворотке клавиатурой, теперь разве что программный писать. Я же совсем еще программист любитель )
Спасибо, хотел снять чуть подробнее, и про анализатор рассказать немного интереснее, но насморк )))))
 
dadigorДата: Среда, 02.12.2015, 12:06 | Сообщение # 324
Падаван
Группа: Проверенные
Сообщений: 147
Статус: Offline

Цитата
В LC72131 не SPI протокол, а CCB.

Интересно, я про такой не слышал, а где бы почитать про протокол CCB?


Сообщение отредактировал dadigor - Среда, 02.12.2015, 12:19
 
JamyДата: Среда, 02.12.2015, 14:03 | Сообщение # 325
Мастер Йода
Группа: Администраторы
Сообщений: 731
Статус: Offline
Цитата dadigor ()
Интересно, я про такой не слышал, а где бы почитать про протокол CCB?

Добавил в шапку пункт - описание используемых компонентов тыц

alexr171,  Посмотрел анализатором как программатор работает с 24C32, проанализировал то, что написал я, ошибок нет, меня смутили всплески коротких единичек при ACK, такие же есть и в программаторе, они появляются в следствии отпускания шины и контроллером и памятью, а так как шина подтянута то появляются эти единицы. По поводу тюнера, сделал реверс порта, тюнер нормально отправляет ACK. На скрине видно после ACK теперь так же короткие единички, это и есть отпускание шины и контроллером и тюнером.
Еще немного надо поправить посылку start и stop, позже выложу пример, что там не совсем так.

Работа тюнера


А вот эти единички после ACK снятые при работе программатора c 24С32 (CH341A)
Прикрепления: 2035759.jpg (35.5 Kb) · 6407489.jpg (29.8 Kb)
 
Форум » Общий форум » Приемники ,сканеры » Сканирующий приемник P-45
Поиск: