jaxkz писал(а):На атмеге 32 не инициализируется дисплей
В варианте под ATmega16 при посылке данных в дисплей сначала идёт ожидание готовности дисплея (пустые циклы). И данные посылаются только когда дисплей готов их принять. Соответственно, более быстрый экземпляр дисплея будет работать шустрее более медленного.
В варианте под ATmega32 этот подход упрощён. По умолчанию считается, что дисплей должен отработать команду за 50мкс и быть готовым принять следующую. В коде это не проверяется, очередная команда просто посылается по пятидесятимикросекундному таймеру, без пустых циклов. 50мкс выбраны исходя из моего опыта работы с несколькими такими дисплеями. Возможно, Вам попался более медленный экземпляр.
В любом случае, попробуйте тестовую прошивку из вложения, где чтение очередной порции данных из кадрового буфера в дисплей замедлено до 100мкс. Если всё будет ОК, внесу это в основную ветку для ATmega32 (хотя заманчиво было бы найти более точное значение, например, 70мкс, чтобы и дисплей работал нормально, и частота кадров была повыше).
jaxkz писал(а):При нажатии, вместо цифры номера станции, высвечивается символ --, а что еще нажать не знаю
Система работает просто. Если нажать на эту кнопку, то текущая частота сохраняется в EEPROM и у станции появляется номер. Если ещё раз нажать эту кнопку на уже сохранённой станции, её частота из EEPROM удаляется. Для настройки на станции своего региона нужно пройтись по всем "неправильным" станциям, удалив их этой кнопкой, и этой же кнопкой сохранить свои нужные частоты.
jaxkz писал(а):Можно ли прикрутить управление сразу двумя аудиопроцессорами?
Это потребует другой схемотехники, в частности, I²C-мультиплексора, который смог бы перебрасывать шину I²C (или хотя бы линию данных SDA) с одного аудиопроцессора на другой. Для управления этим мультиплексором также понадобились бы дополнительные свободные ноги микроконтроллера.
P.S. Набросал короткое руководство по пользованию устройством.