[an error occurred while processing this directive]
|
Позавчера нагрузили задачкой.
В двух словах - периферийный процессор работает с DS1821, и он же оцифровывает данные с датчика давления. Основной процессор опрашивает
периферийный по CAN. Все по отдельности работает замечательно.
То есть адекватная температура, давление и тд.
Но время преобразования у 1821 доходит до 1-й секунды.
А рабочий цикл устройства настолько увеличивать недопустимо.
Поэтому нельзя тупо в цикле ждать установки бита окончания преобразования. Пришлось наворачивать целый огород с флагами.
Вроде работало. Но вот обнаружили - в диапазоне температур
примерно 31-37 градусов где-то что-то затыкается. Нет ответа по CAN.
Вне этого диапазона - работает. Перепробовал 4 датчика.
Чудеса. Завтра продолжаю, но крыша едет.