@tauro0221
Sí lo tengo en consideración, de hecho nungun sensor se le repite la dirección de esclavo por que cada uno me deja 3 pines para configurar su dirección. No se necesitara multiplexarlos.
@surbyte
no había tomado en cuenta el impacto de diferentes librerías, es hora de comparar a ver cual librería tiene mejor resultado, optimizando los tiempos de ejecución. Agradezco mucho el ejemplo para poder medir los tiempos y los consejos para realizar un código limpio. De hecho, cada sensor tendrá su propia función, y estas a su vez tendrán las funciones para configurar lo y controlarlo.
La finalidad e mi proyecto es hacer una estación meteorológica completa.
Estoy considerando utilizar el termómetro DS18B20 en ves de los termómetros lm75 debido a que estos no funcionaran muy bien con humedad. el resto de componentes tendrá una carcasa impermeable y las PCB estarán cubiertas de barniz transparente para mayor protección a la humedad.
En cuanto a los sensores por i2c o bueno los módulos que tienen ese protocolo serian:
*display lcd 16x2 por i2c (por ahora en lo que compro una pantalla de menor consumo de energía)
*bmp180--------------------------------presión, temperatura altitud.
*bme280--------------------------------presión, humedad temperatura y altitud.
*lm75 x3--------------------------------Temperatura 3 posesiones
*rtc ds3231-----------------------------Referencia temporal, alarma como interrupción e iniciador de medición
*hmc5883-------------------------------brújula digital
*eeprom 24c32l-------------------------método de guardado de hora y de código de error
*mpu6050------------------------------giroscopio
Y se estaría haciendo el ciclo de medición cada hora para guardar sus datos en la SD asi como también guardar los datos de el ADC1 seria la dirección del viento, la velocidad del viento dada por un contador externo al arduino, la lluvia igualmente con un contador externo, el ADC2 mediría el voltaje de la batería y el ADC3 mediría el voltaje proveniente de un arreglo de celdas solares que cargan la batería.
Para mas información de los sensores de veleta, anemómetro y pluviómetro serian estos:
Actualmente estoy desarrollando el diagrama de flujo general del dispositivo y fragmentandolo en diferentes maquinas de estados.
Lo que me deja con dos preguntas:
1)El sensor DS18B20 utiliza el método de comunicación por "1 wire" este jamas lo he utilizado y realmente no se si pueda ser compatible con los demás métodos de comunicación y la cantidad de pines utilizada en el arduino MEGA.
2)El remplazo de la pantalla LCD16X2 seria en el mejor de los casos un E-paper display que utiliza comunicación SPI como el del siguiente link.
https://www.waveshare.com/wiki/4.2inch_e-Paper_Module?spm=a2g0o.detail.1000023.1.21f32b063B2Ako&file=4.2inch_e-Paper_Module
La pregunta con este diplay es si realmente vale la pena en comparación con un display oled 128x64 con interfaz de comunicación i2c.
Cual seria mas fácil de implementar?
Gracias, los mantendré al tanto de el desarrollo del proyecto y ya terminado estará publico en mi GitHub.