1. На одном порту МК висят 4 датчика DS18B20.
2. Раз в 5 сек. конвертирую температуру и читаю 9 байт байт памяти с последующей проверкой CRC
3. Обращение к конкретному датчику через MATCH ROM [55h]
4. Все датчики подключены звездой в четыре "луча" неэкранированной витой парой 5-й кат. Длинна "лучей" ~70, ~6, ~10 и ~9 метров соответственно.
На дальнем конце каждого "луча" датчик подключён по схеме:
Проблема: Примерно девять раз из десяти не совпадает контрольная сумма у датчика на "луче" длинной в 6 метров (остальные стабильно Ок!). Если отключить "луч" длинной в 70 метров, ошибки начинают случаться гораздо реже (примерно 50 на 50). А если оставить подключённым только проблемный шестиметровый "луч", то ошибки на нём исчезают вовсе.
Вопрос: Подскажите, пожалуйста, как можно решить эту проблему? Спасибо.
