Доброго времени суток всем!
Я очень рад, что нашёл на вашем сайте информацию о самодельном барометре и приложение к нему.
Мне один очень хороший человек собрал таких 2 барометра, потом ещё 2. Первые 2 были на проводках датчики болтались, а вторые 2 барометра закрытые в термокембрике с отверстием под датчик и получились как флэшки.
Программу я скачивал вот тут:
homes-smart.ru/index.php/oborudovanie/da...hik-davleniya-bmp085
написал батник, который складывал считанные с датчика данные в текстовый файл и сразу же обнаружил ошибку. Вот конкретный пример:
Temperature 31.50 *C
Pressure 758.62 hPa
Судя по значению давления выше 750 - это миллиметры ртутного столба, а написано, что это гектопаскали hPa. Вторая ошибка - это вместо значка градусов ° стоит звёздочка *.
покопавшись в исходном коде в файле bmp085.c, я был в шоке. Там даже коэффициент для перерасчёта Паскалей в миллиметры ртутного столба был неточный. Вместо 133,322387415 там был округлённый 133. Это приводило на выходе к завышению давления на 1,82 мм, что не могло радовать, так как по дата шиту при комнатной температуре точность +-1 hPa (+-0,75 мм).
я стал обдумывать, как бы это исправить и так как скомпилировать исходник не смог и не понял как, я открыл уже скомпилированный файл программы шестнадцатиричным редактором и там заменил переменную 133 на 133,322387415 и hPa исправил на mmHg (мм рт.ст.). Сохранив изменения, обнаружил, что программа не нарушилась и отлично работает. Аналогичным образом я сделал себе ещё 2 варианта этой программы консольной в гектопаскалях hPa, заменив коэффициент 133 на 100, и просто в Паскалях Pa, заменив коэффициент 133 на 1,0, чтобы оставить Паскали как есть на выходе датчика после всех заводских калибровок. Вот в архиве это тройное приложение:
Barometer_BMP085_for_Windows.zip
Ещё мой хороший друг, тоже программист самоучка, знающий в программировании больше, чем я, написал оконное приложение, в которое вложил исправленный мною программный файл, и на выходе получилась полноценная программа для самодельного барометра на датчике BMP085. Она опрашивает датчик каждую секунду и каждую минуту записывает данные в лог файл с возможностью дописывания данных. Вот эта программа:
BarometerBMP085GuiKdr.zip
А также мой друг собрал универсальный драйвер для барометра, который стал устанавливаться на Windows7 64 битную:
I2C_Drv_Kdr.zip