Небольшой проектик с использованием датчика давления BMP085. В прошлый раз было знакомство с этим датчиком и получение от него первых результатов. Но значение давления было получено в Паскалях, что расходится с привычным для нас показаниями атмосферного давления, измеряемые миллиметрами ртутного столба. Поэтому выкинул из кода все лишние преобразования (температуры и высоты) и, освободив немного памяти, доделал вывод давления в привычных для нас единицах измерения.
Суть преобразования давления из Паскалей в мм. ртутного столба сводится к умножению результата на коэффициент 0.0075 (из отношения нормального атмосферного давления 101 325 Па = 760 мм.рт. ст.)
Немного по схеме подключения - тут все просто. Для вывода показаний давления использован 2-х строчный ЖК с контроллером HD44780. Чтобы не попалить датчик BMP085 при подключении к 5-и вольтовой схеме необходимо согласовывать уровни датчика и микроконтроллера, для этого я использовал свой модуль на полевых транзисторах (см. модуль согласования логический уровней) Заодно удалось проверить как работает этот модуль с I2C, оказалось отлично справляется с возложенной обязанностью - можно использовать эту схему уже в конечных разработках.
Увеличенное изображение
Для проверки работоспособности всей схемы собрал ее на макетке, результат всего этого ниже.
Значение измеренного давления (абсолютной ее величины) выводится в миллиметрах ртутного столба.
Скачать прошивку и исходники
UPD: с подачи товарища Sany2 добавил в сей барометр вывод температуры, худшие ожидания не оправдались - памяти в Atmega8 хватило слихвой :)
Ссылка на исходники и прошивку
|