Обеспечить регресс
Ремонт электронных устройств уже не так сложен, как раньше. Благодаря Интернету легко найти технические описания и инструкции по применению для любого стандартного компонента внутри вашего гаджета, а как только вы обнаружите неисправный компонент, вы просто купите замену в одном из миллиона интернет-магазинов — при условии, что вы не закончите работу. конечно же, подделка. Однако когда дело доходит до нестандартных компонентов, дела обстоят сложнее, как выяснил [dpeddi], когда друг обратился к нему за помощью в ремонте синтезатора Roland Juno-G со сломанным дисплеем.
Основная проблема здесь заключалась в том, что рассматриваемый дисплей имел нестандартную конструкцию, без замены или документации. Единственное, что [dpeddi] смог выяснить из руководства по обслуживанию, — это базовая распиновка, которая показывала параллельный интерфейс с двумя строками с надписью «выбор чипа» — признак того, что на дисплее содержатся два отдельных контроллера. Но точный протокол и формат данных не были задокументированы, поэтому [dpeddi] применил свой логический анализатор, чтобы попытаться декодировать сигналы, генерируемые синтезатором.
После небольшого количества проб и ошибок ему удалось разобраться в протоколе: похоже, что дисплей содержит два ЖК-контроллера типа KS0713, каждый из которых управляет половиной экрана. Найти совместимую замену по-прежнему было сложно, поэтому [dpeddi] решил вместо этого декодировать исходные сигналы с помощью микроконтроллера и показать изображение на современном ЖК-дисплее, управляемом SPI. После некоторых первоначальных экспериментов с ESP32 выяснилось, что задача чтения двух достаточно быстрых параллельных шин и управления еще более быстрой последовательной шиной была слишком сложной для ESP, поэтому [dpeddi] обновился до Raspberry Pi Pico. Это сработало, и благодаря монтажному кронштейну, напечатанному на 3D-принтере, новый дисплей также плотно поместился внутри корпуса Roland.
Код Pico доступен на странице [dpeddi] на GitHub, поэтому, если у вас в Juno-G тоже есть некачественный дисплей, вы можете просто загрузить его и использовать для подключения совершенно нового дисплея. Однако метод реверс-инжиниринга существующего протокола дисплея и перевода его в новый довольно универсален и должен пригодиться при работе с любым типом электронного устройства: скажем, старинным калькулятором или мультиметром, или даже другим синтезатором. .