Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Использую МК ATmega16A.
RS - выв. 2 МК;
RST - выв. 1 МК;
CS - выв. 5 МК;
CLK - выв. 8 МК:
DATA - выв. 6 МК;
+U - 3.3V от енки;
GND - она и в африке земля;
NC
подсветка от отдельного источника 12V, развязанного гальванически.
Дисплей снят с рабочего тела, hex и bin залиты именно для LS020.
RS - выв. 2 МК;
RST - выв. 1 МК;
CS - выв. 5 МК;
CLK - выв. 8 МК:
DATA - выв. 6 МК;
+U - 3.3V от енки;
GND - она и в африке земля;
NC
подсветка от отдельного источника 12V, развязанного гальванически.
Дисплей снят с рабочего тела, hex и bin залиты именно для LS020.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Кстати, Вы уверены, что Ваш дисплей - именно LS020?
В этих телефонах могли испльзоваться разные типы дисплеев, но из них LS020 самый исследованный радиолюбителями.
Там и маркировка вроде должна начинаться именно как LS020BLABLABLA
Да, и лучше, описывая подключение дисплея к МК, не называйте номера ног МК, а лучше их имена по даташиту. Ибо в разных корпусах - разная нумерация выводов.
В этих телефонах могли испльзоваться разные типы дисплеев, но из них LS020 самый исследованный радиолюбителями.
Там и маркировка вроде должна начинаться именно как LS020BLABLABLA
Да, и лучше, описывая подключение дисплея к МК, не называйте номера ног МК, а лучше их имена по даташиту. Ибо в разных корпусах - разная нумерация выводов.
Последний раз редактировалось WiseLord Ср июл 16, 2014 00:36:41, всего редактировалось 1 раз.
- VeryLazyCat
- Опытный кот
- Сообщения: 832
- Зарегистрирован: Пн май 17, 2010 22:21:01
- Откуда: Madagaskar
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
san-sanych писал(а):Использую МК ATmega16A.
RS - выв. 2 МК;
RST - выв. 1 МК;
CS - выв. 5 МК;
CLK - выв. 8 МК:
DATA - выв. 6 МК;
МК - ATmega16A tqfp
RS на 41 (PB1)
RST на 40 (PB0)
CS на 44 (PB4)
CLK на 3 (PB7)
DATA на 1 (PB5)
если мк в дипе - посмотрите распиновку по даташиту.
и не забудьте показать картинку рабочего дисплея
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Поддержка LM7001 для варианта спектроанализатора на ATmega8.
Ввиду того, что у ATmega8, по сравнению с ATmega16, портов поменьше, пришлось вход анализатор повесить на вход ADC6, который имеется только у QFP32-варианта корпуса. Также сигналы MUTE и STBY, управляющие усилителем мощности объединены в один общий.
Это позволило заиметь три свободных порта для управления LM7001, и, потенциально, другими синтезаторами частоты.
Схема подключения: на googlecode. Там же, в ветке mega8, исходники.
В архиве также приложен проект для Proteus.
Ввиду того, что у ATmega8, по сравнению с ATmega16, портов поменьше, пришлось вход анализатор повесить на вход ADC6, который имеется только у QFP32-варианта корпуса. Также сигналы MUTE и STBY, управляющие усилителем мощности объединены в один общий.
Это позволило заиметь три свободных порта для управления LM7001, и, потенциально, другими синтезаторами частоты.
Схема подключения: на googlecode. Там же, в ветке mega8, исходники.
В архиве также приложен проект для Proteus.
Последний раз редактировалось WiseLord Ср июл 16, 2014 11:11:04, всего редактировалось 1 раз.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Всем привет! Всё заработало. Косяк был в ленточном шлейфе (от какогото принтера), которым я подключил дисплей к МК. Заменил обычными проводами и все завелось. Начал тестить.
Сразу вылез баг в прошиве при установке времени: при переводе значения ЧАСЫ с 00 на ед. меньше выскакавает 85 и далее идет уменьшение начиная с 12 до 0, снова 85 и так по кольцу. При коррекции вверх все ок. Тоже и с МИНУТЫ, но там 00 - 85 - 24 и т.д. Не захотел работать автопоиск fm стонций ни вверх ни вниз. Ща переделаю ПДУ и буду тестить далее.
Спасибо за помощь.
Сразу вылез баг в прошиве при установке времени: при переводе значения ЧАСЫ с 00 на ед. меньше выскакавает 85 и далее идет уменьшение начиная с 12 до 0, снова 85 и так по кольцу. При коррекции вверх все ок. Тоже и с МИНУТЫ, но там 00 - 85 - 24 и т.д. Не захотел работать автопоиск fm стонций ни вверх ни вниз. Ща переделаю ПДУ и буду тестить далее.
Спасибо за помощь.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Спасибо за информацию, глюк с настройкой времени исправлен (результат несколько некорректной оптимизации кода).
Автопоиска как такового нет. Изначально делал, но работал он плохо, поэтому выбросил. Тем более, что не во всех поддерживаемых тюнерах есть возможность его сделать (определить уровень принимаемого сигнала). Есть возможность сместиться на ±100кГц (короткое нажатие кнопки) или сместиться на уже сохранённую станцию вверх или вниз. В идущем с прошивкой eeprom для образца прошиты частоты минских радиостанций.
Автопоиска как такового нет. Изначально делал, но работал он плохо, поэтому выбросил. Тем более, что не во всех поддерживаемых тюнерах есть возможность его сделать (определить уровень принимаемого сигнала). Есть возможность сместиться на ±100кГц (короткое нажатие кнопки) или сместиться на уже сохранённую станцию вверх или вниз. В идущем с прошивкой eeprom для образца прошиты частоты минских радиостанций.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Переделал ПДУ от Горизонта (собран на INA3010D, поднял Z0 и соединил Z2 с DR3). Согласно даташиту это соответствует №19 системы. Однако темброблок на ДУ никак не отреагировал. На выходе фотоприемника и входе МК пачки импульсов при нажатии кнопок присутствуют. Хотел посмотреть как устройство распознает пульт через сервисное меню, но не смог в него войти (одновременно нажимал и удерживал в рабочем режиме S1-S4-S5). В чем может быть дело?
И еще вопрос: при полном отключении питания счет времени не продолжается что-ли, и батарейка служит только для хранения показаний на момент выключения? Или у меня неправильно работает DS1307?
И еще вопрос: при полном отключении питания счет времени не продолжается что-ли, и батарейка служит только для хранения показаний на момент выключения? Или у меня неправильно работает DS1307?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Тестовый режим - S1 + S2.
EEPROM по умолчанию настроен на код 0x19 (или 25 в десятичной системе). Вы, судя по всему, настроились на код 0x13 (19 в десятичной). Судя по даташиту, нужно соединить Z3 и DR1 для дефолтного кода спектроанализатора.
Время идёт и при отключенном питании. Об этом заботится сама DS1307 с батарейкой, МК тут ни при чём. Он взаимодействует с DS1307 только на чтение (ну, кроме режима ввода времени).
EEPROM по умолчанию настроен на код 0x19 (или 25 в десятичной системе). Вы, судя по всему, настроились на код 0x13 (19 в десятичной). Судя по даташиту, нужно соединить Z3 и DR1 для дефолтного кода спектроанализатора.
Время идёт и при отключенном питании. Об этом заботится сама DS1307 с батарейкой, МК тут ни при чём. Он взаимодействует с DS1307 только на чтение (ну, кроме режима ввода времени).
-
ZyaK
- Потрогал лапой паяльник
- Сообщения: 361
- Зарегистрирован: Сб май 03, 2014 20:01:51
- Откуда: Ижевск
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Я свой пульт не перепаивал, в сервисном режиме он его увидел как 00. так и прописал.
Электроника -очень точная наука, бубен необходимо держать в левой руке!!!
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Это понятно, но без перепайки пульт может одновременно влиять, например, и на телевизор. Если телевизора с таким протоколом нет - конечно, проще пользоваться пультом как есть, поменяв в EEPROM 0x19 на 0x00.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Да, с ПДУ я действительно тупанул. Теперь запаял на 25 dec номер системы, все работает.
С часами тоже разобрался. Всему виной оказался кварц, взятый из копеечного китайского будильника на скорую руку. С ним от батарейки не запускался внутренний генератор DS1307. Всем рекомендую ставить кварцы от RTC ненужных материнок.
Продолжаю тест...
С часами тоже разобрался. Всему виной оказался кварц, взятый из копеечного китайского будильника на скорую руку. С ним от батарейки не запускался внутренний генератор DS1307. Всем рекомендую ставить кварцы от RTC ненужных материнок.
Продолжаю тест...
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Подскажите плз., а режим сохранения выбранной частоты в ячейки памяти как-нибудь реализован? Или станции жестко прописываются в епром при программировании?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Отдельная кнопка пульта или длинное нажатие кнопки 5 в режиме FM-радио (войти в режим FM-радио можно длинным нажатием кнопки 2) либо сохраняет текущую частоту в EEPROM, либо удаляет, если она там уже есть. Частоты всегда хранятся отсортированными.
В исходниках этой кнопке соответствует имя CMD_RC5_FM_STORE. Если посчитать - она девятнадцатая в списке кодов кнопок RC5 в EEPROM. По умолчанию значение кода кнопки (смотрите файл EEPROM в hex-редакторе) значение для CMD_RC5_FM_STORE равно 0x29.
В исходниках этой кнопке соответствует имя CMD_RC5_FM_STORE. Если посчитать - она девятнадцатая в списке кодов кнопок RC5 в EEPROM. По умолчанию значение кода кнопки (смотрите файл EEPROM в hex-редакторе) значение для CMD_RC5_FM_STORE равно 0x29.
- VeryLazyCat
- Опытный кот
- Сообщения: 832
- Зарегистрирован: Пн май 17, 2010 22:21:01
- Откуда: Madagaskar
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
san-sanych,
вы плату дисплея делали ?
или просто припаяли шлейф на контакты дисплея ?
вы плату дисплея делали ?
или просто припаяли шлейф на контакты дисплея ?
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Проект впечатляет меня все больше, за его продуманность и универсализм. При таком функционале считаю данную конструкцию лучшей в сети, среди ей подобных. Тем более, что автор абсолютно безвозмездно выкладывает прошивку и осуществляет поддержку проекта. За это ему огромное СПАСИБО!
Плату дисплея отдельно не разводил, просто припаял провода к контактным площадкам, а резестивные делители расположил на плате МК.
Плату дисплея отдельно не разводил, просто припаял провода к контактным площадкам, а резестивные делители расположил на плате МК.
- VeryLazyCat
- Опытный кот
- Сообщения: 832
- Зарегистрирован: Пн май 17, 2010 22:21:01
- Откуда: Madagaskar
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
san-sanych писал(а):При таком функционале считаю данную конструкцию лучшей в сети, среди ей подобных.
Полностью поддерживаю ваше мнение!
san-sanych писал(а):Плату дисплея отдельно не разводил...
На мой взгляд лучше всё таки сделать плату дисплея,
схему которой показывал здесь.
Преимущества:
удобство крепления,
согласование уровней,
драйвер подсветки,
коммутация подсветки,
легкая замена/проверка дисплея.
Плату сименса, с которой можно снять кронштейн и разъём дисплея
не сложно найти на барахолке и даже если нет фена - аккуратно снять
эти разъёмы можно с помощью турбозажигалки.
На обратной стороне платы отрываем ненужные железяки,
греем только с обратной стороны напротив разъёма, после прогрева
легонько стучим платой о стол и разъём отпадает с платы.
Таким же образом снимаем кронштейн.
- Вложения
-
- LS020-mod .rar
- lay6
- (13.76 КБ) 774 скачивания
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Да, мы, линуксоиды, такиеsan-sanych писал(а):Тем более, что автор абсолютно безвозмездно выкладывает прошивку и осуществляет поддержку проекта.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Конечно дисплей на плате с оригинальным креплением и разъёмом и выглядит более презентабельно, и по уровням согласование более проффесионально выполнено. Когда найду подходящий корпус для своего уся, то скорее всего изготовлю её. А демонтаж крепления с разъемом удобно производить путём нагрева платы на электроплитке или на крайняк на спиральном обогревателе.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
А кто-нибудь пользует данный девайс с модулем радио на TEA5767 ?
У меня закралось подозрение, что не все в порядке с режимом MONO/STEREO. Индикатор Stereo стабильно горит только на Радиус ФМ (100.9 МГц в нешем городе), на остальных станциях и на пустых частотах он хаотично мигает. На уровень сигнала не грешу, т.к. живу в 3 км. от ретранслятора и ловлю все станции в стерео даже на самых примитивных приемниках.
А как принудительно перейти в MONO ?
У меня закралось подозрение, что не все в порядке с режимом MONO/STEREO. Индикатор Stereo стабильно горит только на Радиус ФМ (100.9 МГц в нешем городе), на остальных станциях и на пустых частотах он хаотично мигает. На уровень сигнала не грешу, т.к. живу в 3 км. от ретранслятора и ловлю все станции в стерео даже на самых примитивных приемниках.
А как принудительно перейти в MONO ?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Для TEA5767 есть кнопка на пульте, CMD_RC5_FM_MONO, 31-я в списке кодов команд в EEPROM.
У меня вроде нормально с индикатором всё.
Возможно, проблема как раз из-за слишком сильного передатчика рядом?
В архиве прошивка с фиксом мелкого бага, появившегося во вчерашней прошивке (на TEA5767 не обновлялись показания частоты станции при перестройке).
У меня вроде нормально с индикатором всё.
Возможно, проблема как раз из-за слишком сильного передатчика рядом?
В архиве прошивка с фиксом мелкого бага, появившегося во вчерашней прошивке (на TEA5767 не обновлялись показания частоты станции при перестройке).