eddy_em: (Default)
[personal profile] eddy_em
Решил провести сравнительный анализ разных датчиков (прежде всего, измеряющих влажность воздуха). Для начала нужно свести к единообразному интерфейсу все наработки (ну и дописать для тех датчиков, с которыми я еще не работал). Пока три датчика едут с алиэкспресса (оказывается, у меня еще не весь "зоопарк" из более-менее распространенных есть; правда, более дорогие жаба задушила покупать, возможно, когда-нибудь попозже), решил начать с того, что уже есть — подготовить почву, так сказать.
Пока только BMP180. Зато уже основную 'ООПщину' сделал. Если заменить i2c.c, можно и на микроконтроллере запускать.
Для непосредственного доступа к датчикам по I2C "в обход микроконтроллеров" использую переходник на основе CP2112. Ну, а чтобы в одну шину объединить датчики с одинаковыми адресами (а таких, увы, достаточно много - и нет никаких ног, позволяющих хотя бы один младший бит адреса поменять), использую мультиплексор PCA9548A.
Сначала думал подгрузить кернельный модуль, который вроде как создает 8 "подустройств", но, во-первых, так и не понял, что за параметры нужно передавать в modprobe (как минимум, нужно его адрес указать и устройство, на котором он сидит), а во-вторых, таки проще им рулить напрямую, не плодя файловые дескрипторы (все равно нужно, похоже, закрывать один и открывать другой, чтобы не смешивать разные устройства с одинаковыми адресами в одной шине).

October 2025

S M T W T F S
   1234
567 89 1011
121314 15161718
19202122232425
2627 28293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 24th, 2026 10:20 am
Powered by Dreamwidth Studios