Vanya написал(а):
Можно поставить себя на место разработчика. Что нужно плите от пульта? Только значения 6 уровней мощности.
ну, я люблю разрабатывать всякие устройства, мне интересна китайская логика. много устройств сейчас разрабатываются в Китае - там, схемотехника, программы МК, компоновка, разведение плат, но уровень - как будто жадный студент 4-курсник дорвался до всех современных технологий. У нас такого нет, а очень жаль.
Что нужно пульту от плиты? Знать состояние плиты, чтобы его отобразить на дисплее. Это те же 6 уровней мощности и ещё 8 ошибок.
Думаю все- таки 10:
E0 Центральный блок управления неисправен
E1 Нет посуды
E2 Слишком низкое напряжение пи-тания
E3 Слишком высокое напряжение питания
E4 Обрыв цепи или короткое замы-кание датчика температуры
E5 Ошибка в работе платы или цен-трального блока управления
E6 Перегрузка по току
E7 Обрыв цепи или короткое замы-кание БТИЗ
E8 Перегрев керамической панели
E9 Перегрев БТИЗ
Так написано в инструкции. Закодировать 8 или 10 бит , это 1 или 2 байта.
Я думаю логика такая: В основном МК храниться состояние конфорки (12-бит), а в МК пульта храниться состояние индикатора (12-бит).
Надо проверить, похоже, что плита посылает разные по битности сигналы,
И они обмениваются этими состояниями, сравнивая их со своими. Я думаю логика такая: В основном МК храниться состояние конфорки (12-бит), а в МК пульта храниться состояние индикатора (12-бит). И они обмениваются этими состояниями, сравнивая их со своими.
На последней эпюре видно, что Мк плиты получает посылку, но потом ему пофиг - шлёт забор пульту.
Пульт изменяет только первые 8-бит, а основной МК меняет все 12-бит (последние 4-бита задействованы когда отображается ошибка). То есть если пульт отображал и отправлял состояние "5", но пришел код "ошибка 1", он отображает "ошибка 1" и отправляет в основной МК состояние "ошибка 1". Во время нормальной работы последние 4 бита никогда не задействованы.
Надо проверить, кажется, что у плиты и пульта разные по времени и битности эпюры, посмотрите в посл сообщении. Если надо, пришлю любые эпюры.
Чтобы проверять от +5В вам надо убрать ошибку "Е2" (10кОм между +5В и ногой 8 МК) и работать вы сможете только несколько секунд, до появления ошибки "Е1, Е0" .
Я могу запустить плиту от бесперебойника, будет гальваническая развязка, это не вопрос. Мне бы все коды ошибок отработать. Но спс за инфу!
Сейчас пишу код на микросекундах
myTimer.setTimeout из библиотеки
#include <GyverTimer.h>
myTimer.setInterval(1250);
забавно, до чего ардуинка доросла, благодаря нашим электронщикам и программистам!