VitalForce 67 Report post Posted May 4, 2016 Достался саб Dialog J-101A. Управление осуществлялось только с пульта дистанционного управления ч-з МК. Пульт благополучно накрылся (нет пульта). Как осуществить управление микросхемой M61538FP? Буду при много благодарен в помощи написания прошивки. Предположительно управление должно осуществляться энкодером. МК - приблизительно PIC16f628a. Индикация - подойдут просто светодиоды. Фото прилагаю. На первом фото панели для подключения, с верху... Выход ,питание , управление, вход. Share this post Link to post Share on other sites
Evgeniy 285 Report post Posted May 4, 2016 В даташите посмотрел, этим процессором легко управлять. Управление происходит через синхронный порт, аналогично rs232. В эту микросхему отсылаются 2 байта, 7 бит один канал, 7 бит второй, 2 последних - чего меняем. Программа должна получиться простейшая, даже с lcd 2x16 индикатором. Share this post Link to post Share on other sites
VitalForce 67 Report post Posted May 4, 2016 А как быть с мультиплексором/демультиплексором? на него вроде тоже какой-то сигнал поступает с МК. Share this post Link to post Share on other sites
Evgeniy 285 Report post Posted May 5, 2016 надо кусок схемы разрисовывать и смотреть, куда и что переключается и какие ноги для этого дёргать надо. Скачивать даташиты и смотреть. Share this post Link to post Share on other sites
VitalForce 67 Report post Posted May 12, 2016 Смотрел даташник на 4053. Управляется выводами ABC (состояние 0 или 1). Накидал в протеусе, ничего не меняется при подаче "1". Сигнал присутствует на выходе при любом состоянии управляющих входов. В общем не догоняю для чего они тут, может как защита. Share this post Link to post Share on other sites
VitalForce 67 Report post Posted May 12, 2016 По поводу M61538FP. Не совсем разобрался с таблицей. D14 - 0 и D15 - 0 соответственно L и R канал (если я правильно понял) А дальше не понятка. L D0a D1a D2a D3a D4a D5a D6a R D7a D8a D9a D10a D11a D12a D13a 0dB 0 0 0 0 0 0 0 -1dB 0 0 0 0 0 0 1 Например выставить в 0dB L канал - 0 0 0 0 0 0 0 0 и Выставляем в 0dB С канал - 0 0 0 0 0 0 0 0 Получаем путаницу. Как использовать данные типа R D7a D8a D9a D10a D11a D12a D13a Или нужно подать как-то одновременно 16 бит? Типа: 0dB + 0dB + L(канал) + R (канал) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) -1dB + -1dB + L(канал) + R (канал) (0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0) Share this post Link to post Share on other sites
Evgeniy 285 Report post Posted May 12, 2016 Шлём сразу 2 байта. Для левого и правого канала. Share this post Link to post Share on other sites
VitalForce 67 Report post Posted May 12, 2016 Формат примерно такой? SHIFTOUT DAT , CLK , 8, [$1830] Share this post Link to post Share on other sites
Evgeniy 285 Report post Posted May 12, 2016 [$18, $30] Байты через запятую. Share this post Link to post Share on other sites
VitalForce 67 Report post Posted May 12, 2016 То есть каждый байт отдельно, но одной сессией. Спасибо Жень, буду пробовать Share this post Link to post Share on other sites
Evgeniy 285 Report post Posted May 13, 2016 В команде shiftout вместо чисел вписывай переменные: [var1, var2] После их изменения отправляемся в подпрограмму с отправкой этих переменных. Основной цикл закрутить на опрос валкодера, если без прерываний. Либо валкодера прицепить к порту B, и по прерыванию по B0 отслеживать вращение валкодера. Share this post Link to post Share on other sites
VitalForce 67 Report post Posted May 13, 2016 Я пока попробую с кнопками. В shiftout использую переменные. Выборка из массива. С энкодером не умею работать Уроков не было твоих (камушек в огород) Share this post Link to post Share on other sites
Evgeniy 285 Report post Posted May 13, 2016 Надо будет заснять на днях. Там код очень простой :-) Share this post Link to post Share on other sites
VitalForce 67 Report post Posted July 1, 2016 Смотрел даташник на 4053. Управляется выводами ABC (состояние 0 или 1). Накидал в протеусе, ничего не меняется при подаче "1". Сигнал присутствует на выходе при любом состоянии управляющих входов. В общем не догоняю для чего они тут, может как защита. Разобрался наконец с мультиплексором. При смене уровня (HIGH - LOW) происходит переключение входов. В протеусе не заметил по банальной причине, на вход подавал сигнал одинаковой величины, поэтому разницы и не было. Share this post Link to post Share on other sites