Решено
Уже не знаю что являлось причиной, то-ли 74НС595 проблемная, то-ли где под ней были косяки, но замена IC5 (по схеме) решила проблему
Когда её сдул - под ней сухо, вымыто нормально, флюса не заметил
Бум считать, что была какая-то проблема с регистром (ну или руки кривоваты...)
Разводка платы конечно... - много параллельных дорог, возможно и ёмкостные наводки
Но что делать, нужно было брать матрицы с ОК
Работает и ладно!
Всем СПАСИБО!
Будут к Новому году и у меня часики!
Прицепил два датчика BME280 к STM32 и снял показания с учетом их индивидуальных поправочных коэффициентов. К сожалению, пока нет DHT22, пришлось сравнивать с китайским показометром. В целом, как и ожидалось, два датчика показывают довольно близкие значения. Показания температуры и давления отличаются в долях градуса и мм рт столба, показатели влажности разбегаются при влажности чуть выше 40% на 3 с небольшим процента, при влажности 17 - на несколько десятых. Форма графиков влажности от времени повторяется довольно точно. Показометр ведет себя довольно прилично при влажности выше 30%, слегка занижая показания относительно датчиков
При влажности 25% и ниже китаец в течение короткого времени может показать все что угодно в диапазоне значений от 10 до 20
Ниже 20 % показания датчиков становятся очень близкими, на ускоренном графике, где вместо минут отсчеты посекундные, видна реакция на дуновение в их сторону.
Если получится найти DHT22, сравню и выложу результат, хотя лично я укрепился в доверии к Бошам, с учетом неплохой схожести показаний двух датчиков.
Время на графиках выдержано неточно, оно шло быстрее - лень было цеплять к часам, сделал на приблизительных задержках - для таких "опытов" это пока и не важно. ))
Я заказывал DHT22, а приехали AM2302. Внешне они похожи. Везде на Алиэкспресс при поиске DHT22 выдает AM2302. Я полагал что это аналог. Может именно в этом собака зарыта?
Программный код написан именно под DHT22, а в AM2302 скажем нелинейность.
Оно конечно так, ежели как что. Не потому что дескать, но все-таки конечно. А случись такое дело - вот тебе и пожалуйста!
Только что посмотрел, на сайте фирмы Sparkfun выложены даташиты на DHT22, в которых на титульной странице сказано прямо - "Digital-output relative humidity & temperature sensor/module DHT22 (DHT22 also named as AM2302)". Получается, что это вообще одно и то же. ((
Добавил: нашелся датчик у приятеля, но он оказался АМ2301. ((
Привезли АМ2301, не помню уже где и как цеплял, придется заново. ((
Или она к часам цеплялась? Вроде бы интерфейс один и данные структурно те же. Наверное к часам тогда и цеплял, попробую.
Заказывал у Китайцев матрицы с ОК а пришли все с общим ОА. Сделал переходник. Может кому понадобится.
Чуток подправил платку под себя (да простит меня автор).
Наконец нашлось времечко "для опытов". Для подключения АМ2301 к часам, по совету Lion_A поменял мою старую добрую прошивку 2.08+ на последнюю 3.4.7.
Чтобы сравнить два датчика BME280 с АМ2301 пришлось задолго до Нового года пойти в баню )) т.е. помыться в душевой кабине, открыв двери в помещение, в котором были установлены "приборы". За время "помыва" влажность была довольно быстро разогнана до 60 с лишним процентов, а потом, во время ее медленного понижения, снимались показания. Это позволило уменьшить влияние разной инерции датчиков, т.к. АМ2301 чуть медленнее реагирует из-за своего объемного кожуха. ВME280 по их "старой привычке" имели разбег от 1,5 % при влажности около 20 % до более 4% при влажности 55%. Эта разность почти линейно зависела от влажности, так что я счел возможным для себя принять полусреднее их показаний за основу (условно за истину). Относительно этого полусреднего происходило сравнение показаний АМ2301 по просьбе уважаемого Lion_A. Естественно, что при этом усредненные показания BME280 дали прямую линию, а АМ2301 некую кривую. Интересно, что до влажности 31-32% АМ2301 занижал показания относительно BME280, в точке 32% графики пересеклись, и при более высокой влажности АМ2301 стал показания завышать. Вот снятый график:
Надо сказать, что АМ2301 дал довольно приличную линейность относительно ВМЕ280, что в принципе вполне оправдывает его применение в часах. Тем более, что неизвестно, кто из них врет больше )) Хотя конечно наличие двух датчиков ВМЕ280, достаточно близких по показаниям, дает им больше шансов на истинность, тем более что на температуре и давлении они дают разницу менее 1 градуса и 1 мм.
Отмечу также, что во время измерений температура в помещении тоже понижалась где-то в пределах от 30 до 23 градусов.
Файло с результатами прилагаю
dadigor Спасибо! Судя по графикам, ваш датчик весьма неплох.
Погрешность вполне линейна. Думаю можно просто добавить в прошивку поправочный коэффициент, прибавляя или вычитая его из показаний датчика.
Да не за что, самому интересно было ))
Не факт все же, что Боши не врут прилично, надо бы их с хорошим гигрометром прогнать, но нет его ((
А качество АМ2301 приятно удивило, в сравнении с тем "прибором", который у меня болтается на кухне (см. фото выше), этот просто эталон из Севрской Палаты мер и весов...
ЗЫ А новая прошивка вместо времени кажет пустой экран. Может я что-то неправильно настроил?
Медведь68 - а я вообще не компилировал, просто взял готовые прошивки из папки дебаг... возможно там не та прошивка. Мне главное нужно было, чтобы АМ2301 заработал. Честно говоря меня сейчас часы не очень волнуют, вернусь к ним позже, надо доделать другой проект. Тогда конечно придется плотнее разбираться, тем более что наверняка буду ВМЕ280 прикручивать. Просто я подумал, может в настройках что-то недопонял, как-то не совсем так, как в прошивке 2.08+ установки делаются, не то нажимал ))
Сейчас запустил проект, там не раскомментирован #define DS3231, видимо Вы правы, в этом все дело.
Медведь68 просьба - Вы не скомпилируете под 3231, у меня что-то студия 6.2 барахлит, проект не запускает, а разбираться долго, я сейчас в EWARMе с STM32 ковыряюсь. Вдобавок у меня ХР и студия 7 не ставится вообще. Просто прошью часы, чтоб пока работали. Если сделаете - киньте файлы или сюда или чтоб не засорять форум на мой_ник собака лист.ру Если сейчас не можете - не обижусь, но мож кто-то еще отзовется?