ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
20 апреля
1022399 Топик полностью
=AK= (30.07.2020 15:14, просмотров: 756) ответил =AK= на Хочу то ли страшилку рассказать, то ли в жилетку поплакаться. Пока сам не знаю.
Если вдаваться в детали: 

EEPROM это I2C, и SHT35 - это тоже I2C. К сожалению, в конкретном устройстве они развязаны не полностью. Сигнал SCL у них общий, вот беда.


В промежутках между записями в EEPROM МК держит обе линии в нуле: SCL=0, SDA=0. Это возможно, поскольку общение с EEPROM однонаправленное. Чукча не читаль, чукча писатель.


В это время линия данных Н_SDA датчика SHT35 находится в 1, подтянутая резистором. Только когда идет общение с SHT35 - тогда МК начинает дергать ее вниз-вверх.


Однако в даташите на SHT35 сказано, что дерготня на SCL в то время как Н_SDA=1, воспринимается сенсором как "сброс интерфейса" - при условии что количество импульсов на SCL больше или равно 9, а затем следует START. Описание даташита неоднозначное и допускает разные толкования.


Однако "сброс интерфейса" по идее не должен влиять на результаты, считанные из SHT35. Кроме того, добавление всяческих программных сбросов перед дем как считать данные из SHT35 ничего не меняет - результаты все так же "осциллируют"


Питание устройства более-менее стабильно и ни фига не "осциллирует".