Soy nuevo en los circuitos. Naturalmente, esto presenta algunos problemas cuando se hace una pregunta: a menudo uno no sabe lo suficiente como para formular una pregunta bien formada. Mis disculpas por adelantado.
Utilizo una Raspberry Pi B +, la última versión. Estoy experimentando con el uso de un ADC, el MCP3008 . Al usar un chip MCP3008, he leído con éxito los datos de una resistencia fotográfica mientras incorporaba el módulo Python MCP3008 de Adafruit. Por separado, también he usado un módulo de Python llamado GPIOzero para leer con éxito datos de los mismos canales MCP3008.
Sin embargo, si primero ejecuto un script de Python utilizando el módulo Python de Adafruit y luego ejecuto un script de Python utilizando el módulo GPIOzero, el módulo GPIOzero no devuelve datos de voltaje. Si luego reinicio el Pi y ejecuto primero el módulo GPIOzero, puedo obtener una lectura de un canal MCP3008. No importa el orden en el que ejecute cualquiera de los módulos Python, el módulo Adafruit siempre funciona.
¿Por qué no usar el módulo de Adafruit? GPIOzero tiene una API muy accesible y fácil de referencia. Es muy simple, y puedo acceder fácilmente a la tensión bruta, etc., lo que me gusta, porque puedo usar la información para calcular otras cosas, como lux, al usar una resistencia fotográfica analógica. Estos datos de voltaje parecen ser importantes cuando se usan otros sensores como el TMP36.
¿Alguien sabe por qué necesito reiniciar la Pi después de ejecutar el código Python de Adafruit para que el módulo GPIOzero devuelva valores? Asumo que la respuesta involucra algo más que la programación, por lo que estoy haciendo la pregunta en este foro. Muchas gracias.