01 · Punto de partida
Qué cambia entre un sensor analógico y uno digital
En los temas anteriores vimos que todo sensor convierte una magnitud física en una señal eléctrica y que esa señal llega al programa como un número. Lo que varía es el camino que recorre. Un LM35 entrega una tensión que hay que digitalizar con el ADC del microcontrolador. Un DS18B20 incluye el conversor dentro de su encapsulado y entrega el número ya digitalizado, por un cable, en un mensaje.
Para un programador, la comparación es la de dos APIs: una devuelve un valor crudo que tenés que interpretar (y calibrar), y la otra devuelve un resultado ya procesado a través de un protocolo, que a cambio exige implementar o reutilizar ese protocolo. Ninguna es mejor en general; cada una desplaza el trabajo a un lugar distinto de la cadena.
02 · Panorama
Seis formas de entregar un dato
Si miramos solo lo que aparece en el cable del sensor, encontramos seis maneras habituales de codificar la información. Las dos primeras son lo que se llama estrictamente «digital simple» y «analógico»; las demás son híbridas:
| Forma de salida | La información está en… | Ejemplo | Se lee con |
|---|---|---|---|
| Todo o nada | El nivel (alto o bajo) | Pulsador, PIR, módulo con comparador | Pin digital (GPIO) |
| Tensión analógica | El valor de la tensión | LM35, TMP36, potenciómetro | ADC |
| Corriente analógica | El valor de la corriente (lazo 4–20 mA) | Transmisores industriales de presión | Resistencia + ADC |
| Resistencia variable | El valor de la resistencia | Termistor NTC, LDR, FSR | Divisor de tensión + ADC |
| Señal temporal | El ancho, el ciclo de trabajo o la frecuencia de pulsos | HC-SR04, sensores con salida PWM, caudalímetros | Temporizador (captura) o interrupciones |
| Bus digital | Un mensaje con bytes | BME280, MPU-6050, DS18B20, DHT22 | I2C, SPI, UART o 1-Wire |
Todo sensor se puede ubicar en una de estas filas. Esa ubicación determina casi todo lo que sigue: qué componentes externos necesita, qué errores aparecen y cuánto código hay que escribir.
03 · La más simple
Salida de todo o nada
El sensor informa solo si la magnitud superó un umbral: hay movimiento o no, la puerta está abierta o cerrada, la luz bajó de cierto valor. La salida tiene dos niveles y se lee con un pin digital. Un bit es toda la información.
Hay dos formas de obtenerla:
- Contacto mecánico (pulsador, final de carrera, interruptor reed): el sensor es un interruptor. Requiere una resistencia de pull-up o pull-down y puede generar rebotes (tema 6).
- Sensor con comparador integrado: un sensor analógico más un comparador que conmuta al pasar un umbral, a menudo ajustable con un potenciómetro. Muchos módulos baratos de luz, sonido o gas incluyen una salida analógica y una digital; la digital es esto (tema 7).
La ventaja es la sencillez: no hace falta ADC ni conversión. El costo es que el umbral queda fijado en el hardware: para cambiarlo hay que girar el potenciómetro, no se puede ajustar desde el programa, y se pierde el valor intermedio. Si más adelante necesitás saber «cuánto» y no solo «si», este tipo de salida no alcanza.
04 · Un valor continuo
Salida analógica: tensión, corriente y resistencia
El sensor entrega una magnitud eléctrica que varía de forma continua con la medida. Lo más habitual es una tensión: el LM35 da 10 mV por grado, un potenciómetro da una fracción de la alimentación. Se lee con el ADC (tema 1) y se convierte con la función de transferencia del tema 2.
Sensores resistivos
Los termistores, las fotorresistencias y los sensores de fuerza cambian su resistencia, no producen tensión. Para leerlos se los pone en un divisor de tensión con una resistencia fija, y el ADC mide el punto medio:
El divisor convierte la variación de resistencia en una variación de tensión, pero no es lineal: la resolución varía a lo largo del rango y depende de la elección de la resistencia fija. Es el tema 4.
Lazo de corriente 4–20 mA
En instalaciones industriales, donde los cables son largos y hay mucho ruido eléctrico, se codifica la medida en una corriente entre 4 y 20 mA. La corriente es la misma en todo el cable, así que no depende de su resistencia ni de las caídas de tensión; además, el piso de 4 mA, no de 0 mA, permite distinguir un cable cortado (0 mA) de una medida mínima. Una resistencia de precisión de 250 Ω en la entrada convierte la corriente en una tensión de 1 a 5 V que lee el ADC.
| Tipo | Ventajas | Inconvenientes |
|---|---|---|
| Tensión (0 a 5 V, 0 a 3,3 V) | Directa al ADC; muy simple | Sensible al ruido y a las caídas en cables largos |
| Resistencia (divisor) | Sensores baratos; amplia variedad | No lineal; exige elegir bien la resistencia fija; autocalentamiento |
| Corriente (4–20 mA) | Inmune a la longitud del cable; detecta cable cortado | Necesita fuente de lazo y resistencia de medida; consume más |
En todos los casos el microcontrolador necesita un ADC con la resolución adecuada, y el programa debe filtrar y calibrar: la conversión analógico-digital es nuestra responsabilidad (temas 4 y 5). Esa es la principal diferencia con un sensor digital, donde ya viene resuelta.
05 · Un detalle importante
Salidas ratiométricas
Un sensor ratiométrico produce una tensión proporcional a su propia alimentación: por ejemplo, la salida vale la mitad de Vcc cuando la magnitud está en el centro del rango. Muchos sensores de efecto Hall, de presión y los divisores resistivos funcionan así. Al variar Vcc, varía la tensión de salida, aunque la magnitud no cambie.
Parece un defecto, pero si el ADC usa la misma Vcc como referencia, el problema desaparece: la cuenta del ADC depende de la relación Vsalida / Vref, y la variación de Vcc se cancela. Comparalo en un sensor de efecto Hall que da 0,5 × Vcc con el campo en cero:
| Referencia del ADC | Cuentas con Vcc = 5,0 V | Cuentas con Vcc = 4,8 V | Resultado |
|---|---|---|---|
| La propia Vcc | 2,50 V / 5,0 V → 512 | 2,40 V / 4,8 V → 512 | Se cancela: la lectura no cambia |
| Referencia fija de 5,0 V | 2,50 V / 5,0 V → 512 | 2,40 V / 5,0 V → 491 | La caída de Vcc se interpreta como un cambio de la magnitud |
Al contrario, un sensor no ratiométrico como el LM35 o los que traen su propia referencia produce una tensión absoluta; en ese caso conviene una referencia estable e independiente de la alimentación (por ejemplo, la interna de 1,1 V del ATmega328P). Antes de leer cualquier sensor analógico preguntate: ¿su salida depende de Vcc? ¿De qué depende mi referencia?
06 · Un caso intermedio
Información codificada en el tiempo
Algunos sensores entregan su dato como una señal digital cuyo tiempo es la información. El nivel es alto o bajo, pero lo que importa es cuánto dura o con qué frecuencia se repite. Hay tres variantes:
- Ancho de pulso: el sensor genera un pulso cuya duración es proporcional a la medida. Es el caso del HC-SR04: el pulso del pin Echo dura lo mismo que el viaje de ida y vuelta del ultrasonido. La distancia en centímetros es
distancia = tiempo × 0,0343 / 2, con el tiempo en microsegundos. El factor 2 porque el sonido hace ida y vuelta. - Ciclo de trabajo (PWM): una onda de frecuencia fija cuyo porcentaje en alto codifica el valor. Algunos sensores de temperatura y de ángulo entregan así una salida de bajo costo sin ADC.
- Frecuencia: la frecuencia de la señal es proporcional a la magnitud. Típico de convertidores luz–frecuencia y de caudalímetros de turbina, que emiten un pulso por vuelta.
Las señales temporales se leen con los temporizadores en modo captura o con interrupciones por flanco (curso 7, temas 20 y 24). Su gran ventaja es que el tiempo se mide con mucha precisión usando el reloj del microcontrolador, y es inmune a variaciones de tensión de la señal. Su inconveniente: medir un pulso largo ocupa la CPU o un temporizador, y la resolución depende de la velocidad del contador.
07 · El sensor inteligente
Salida por bus digital
Los sensores digitales completos integran el elemento sensible, el acondicionamiento, un ADC y, a menudo, una pequeña unidad de cálculo que corrige errores. Entregan el resultado ya convertido en un mensaje por un bus serie. En este curso aparecen cuatro tipos:
| Bus | Cables | Cómo se elige el sensor | Ejemplos |
|---|---|---|---|
| I2C | 2 (SDA y SCL), más alimentación | Dirección de 7 bits; muchos sensores comparten el mismo par de cables | BME280, MPU-6050, BH1750, SHT31 |
| SPI | 3 + un pin de selección (CS) por cada sensor | Se activa su línea CS; más rápido que I2C | BME280 (también I2C), acelerómetros ADXL345, MAX31855 |
| 1-Wire | 1 (datos) y masa; opcionalmente alimentación parásita | Cada chip tiene un código de 64 bits único | DS18B20 |
| Protocolo propio de un cable | 1 (datos) | Un solo sensor por línea; temporización estricta | DHT11 y DHT22 |
Los sensores de bus tienen ventajas considerables: no necesitan ADC, la calibración de fábrica está dentro del chip, varios sensores comparten los mismos cables y el mensaje puede incluir un checksum o CRC para detectar errores de transmisión. Son más resistentes al ruido que una tensión analógica: un bit dañado se detecta; una tensión alterada no.
A cambio, el programador debe usar el protocolo. Con una biblioteca es fácil, pero hay que entender lo que ocurre debajo: direcciones, tiempos de conversión (el DS18B20 tarda hasta 750 ms en 12 bits), la potencia que consume el bus y los pull-ups necesarios. Los fabricantes también pueden cambiar o discontinuar un sensor, y reemplazarlo por otro con un mapa de registros distinto exige reescribir el código de acceso.
Para los buses I2C y SPI recomendamos repasar los temas 33 y 34 del curso de Microcontroladores. Aquí nos interesa el sensor, no el protocolo.
08 · Conectar sin quemar
Niveles lógicos y compatibilidad de tensión
Cualquier salida digital, sea de un pulsador, un comparador o un bus, debe ser interpretada correctamente por la entrada del microcontrolador. Para eso se comparan cuatro valores del fabricante:
- VOH: la tensión mínima que garantiza el sensor cuando su salida es alta;
- VOL: la tensión máxima cuando es baja;
- VIH: la tensión mínima que el microcontrolador interpreta como alta;
- VIL: la tensión máxima que interpreta como baja.
La conexión funciona si VOH ≥ VIH y VOL ≤ VIL, con margen. Un ATmega328P alimentado con 5 V exige VIH ≥ 0,6 × Vcc = 3,0 V (valor típico de la hoja de datos), de modo que acepta una señal alta de 3,3 V. En cambio, la mayoría de los microcontroladores de 3,3 V (ESP32, RP2040, STM32 de ese tipo) no toleran 5 V en sus pines, y una salida de 5 V puede dañarlos.
| Sensor | Microcontrolador | Solución |
|---|---|---|
| 3,3 V | 5 V (por ejemplo ATmega328P) | Suele funcionar sin cambios si VOH supera VIH; verificarlo en las hojas |
| 5 V | 3,3 V sin tolerancia a 5 V | Divisor resistivo (señales lentas) o conversor de niveles |
| Bus I2C con distintas tensiones | Cualquiera | Conversor de niveles bidireccional; los pull-ups a la tensión de cada lado |
| Analógico de 0 a 5 V | ADC de 3,3 V | Divisor o amplificador que reduzca el rango; nunca superar la referencia del ADC |
Un divisor de dos resistencias (1 kΩ arriba y 2 kΩ abajo) reduce 5 V a 3,33 V. Funciona bien para señales lentas, pero con buses rápidos la resistencia y la capacidad del pin redondean los flancos; allí corresponde un conversor de niveles dedicado.
09 · Elegir
Comparación entre las interfaces
| Criterio | Analógico (tensión o resistencia) | Señal temporal | Bus digital |
|---|---|---|---|
| Hardware en el microcontrolador | Un canal de ADC por sensor | Un pin con captura o interrupción | Un puerto I2C, SPI, UART o un pin de 1-Wire, compartido |
| Cantidad de pines con varios sensores | Uno por sensor (el ADC es limitado) | Uno por sensor | Los mismos pines para muchos sensores |
| Inmunidad al ruido | Baja: el ruido se suma al valor | Media | Alta, con checksum o CRC |
| Longitud de cable | Corta, salvo 4–20 mA | Media | Corta (I2C, SPI) o larga (1-Wire con cuidados) |
| Calibración | La hace el programador | La hace el programador | Suele venir hecha por el fabricante |
| Velocidad de respuesta | Muy rápida (limitada por el ADC y el sensor) | Depende de la duración de la señal | Limitada por el tiempo de conversión del sensor y del bus |
| Costo del sensor | Bajo | Bajo | Medio |
| Esfuerzo de programación | Medio: conversión y filtrado | Medio: temporización | Bajo con biblioteca; alto sin ella |
| Sensibilidad a la fuente de alimentación | Alta (si es ratiométrico o si la referencia cambia) | Baja | Baja |
La tabla sugiere reglas útiles: si necesitás muchos sensores con pocos pines, usá un bus; si la respuesta tiene que ser muy rápida o el costo es mínimo, un sensor analógico; si el ambiente tiene mucho ruido, un bus digital o un lazo de corriente.
10 · Analogía con programación
Decodificar tres formas de dato
Cada interfaz termina en una función que traduce lo que llega al microcontrolador en una unidad física. En Python podemos escribirlas sin hardware y probarlas con datos de ejemplo. Son tres decodificadores: de las cuentas de un ADC, de un ancho de pulso y de una trama de bytes con checksum, como la de un DHT22. En la última, validar el checksum antes de usar el dato es la misma disciplina que validar la entrada de una API.
Python en tu navegador. Los bloques son editables: cambiá los valores y presioná «Ejecutar Python». La primera vez tarda unos segundos en cargar.
VREF = 5.0
def desde_adc(cuentas):
"""LM35 leído con ADC de 10 bits: 10 mV por °C."""
return cuentas * VREF / 1023 / 0.010
def desde_pulso(echo_us):
"""HC-SR04: el pulso dura lo que tarda el sonido en ir y volver (0,0343 cm/µs)."""
return echo_us * 0.0343 / 2
def desde_dht22(trama):
"""Cinco bytes: humedad (2), temperatura (2) y checksum (1)."""
*datos, checksum = trama
if sum(datos) & 0xFF != checksum:
raise ValueError("checksum incorrecto: trama descartada")
humedad = (datos[0] << 8 | datos[1]) / 10
bruto = datos[2] << 8 | datos[3]
temperatura = (bruto & 0x7FFF) / 10 # el bit 15 es el signo
if bruto & 0x8000:
temperatura = -temperatura
return humedad, temperatura
print(f"ADC: 62 cuentas -> {desde_adc(62):.1f} °C")
print(f"Pulso: 1166 µs -> {desde_pulso(1166):.1f} cm")
trama = [0x02, 0x92, 0x01, 0x0B, 0xA0]
print("DHT22:", desde_dht22(trama))
print("DHT22 con temperatura negativa:", desde_dht22([0x02, 0x92, 0x80, 0x65, 0x79]))
trama[1] ^= 0x04 # un bit se daña en el cable
try:
desde_dht22(trama)
except ValueError as error:
print("Trama dañada:", error)
Resultado: 62 cuentas equivalen a 30,3 °C y un eco de 1166 µs, a 20,0 cm. La primera trama da (65,8 % de humedad, 26,7 °C); la segunda, con el bit de signo activo, da −10,1 °C; la tercera se rechaza por checksum. Probá cambiar 1166 por 2915 y predecí la distancia antes de ejecutar.
El ejemplo muestra una diferencia de fondo: las dos primeras funciones no pueden saber si el dato es correcto (un pulso mal medido o una tensión con ruido dan un número igualmente plausible), mientras que la tercera tiene un mecanismo de verificación incorporado. Aun así, un checksum válido solo asegura que el dato no se alteró en el trayecto, no que el sensor midiera bien.
11 · Exploración interactiva
Un mismo termómetro con cuatro interfaces
Este laboratorio mide la misma temperatura real con cuatro sensores virtuales que usan interfaces distintas. Elegí una, cambiá la temperatura y presioná «Leer»: vas a ver qué aparece en el cable, el valor crudo que recibe el microcontrolador, cómo el programa lo convierte y cuánto se equivoca. Activá el ruido en el cable para comparar cómo lo soporta cada interfaz.
Sensor de temperatura: elegí la interfaz
Elegí una interfaz, ajustá la temperatura y presioná «Leer».
| N.º | Interfaz | T real (°C) | Dato crudo | Resultado |
|---|---|---|---|---|
| Sin lecturas registradas. | ||||
Recorrido guiado
- Con la interfaz 1, leé a 24 °C y a 31 °C. La línea pasa de baja a alta: un bit. Probá con 29,5 y 30,5 °C; no hay forma de saber cuánto por encima o por debajo del umbral está la temperatura.
- Con la interfaz 2, leé a 24 °C: 240 mV, 49 cuentas, 23,95 °C. La resolución es de casi 0,5 °C porque el ADC cuenta en pasos de 4,9 mV.
- Con la interfaz 3, leé a 24 °C: el pulso dura 292 µs de cada 1000. El microcontrolador mide el tiempo con 1 µs de resolución, lo que da 0,125 °C por cuenta, mucho mejor que el ADC.
- Con la interfaz 4, leé a 24 °C: llega 0x0180 (384 × 0,0625 = 24,0 °C). El dato viaja como número ya convertido.
- Activá el ruido en el cable y leé varias veces con la interfaz 2: el resultado fluctúa unas décimas de grado. En la 3, el pulso vibra unos microsegundos. En la 1 y la 4 la temperatura no cambia.
- Con ruido y la interfaz 4, leé muchas veces: de vez en cuando aparece un reintento. El bus detecta que la trama llegó dañada y la repite; el valor final es correcto, a costa de un poco de tiempo.
- Con la interfaz 1 y el ruido activado, el bit no cambia: el comparador ya digitalizó la señal. Un ruido grande justo en el umbral, en cambio, haría oscilar la salida; por eso los comparadores reales llevan histéresis (tema 7).
Desafío: tres sensores, un solo pin libre
Querés leer tres temperaturas y solo te queda un pin del microcontrolador. ¿Qué interfaz usarías y por qué? Con sensores analógicos necesitarías tres canales de ADC; con tres sensores de ancho de pulso, tres pines con captura. Un bus (por ejemplo 1-Wire con tres DS18B20, o I2C con tres sensores de direcciones distintas) comparte la línea: el bus es la única opción con un solo pin. Es el argumento más fuerte a favor de los sensores digitales.
12 · Método de trabajo
Cómo decidir la interfaz de un sensor
- Contá cuántos sensores hay y cuántos pines libres. Si faltan pines o ADC, la decisión suele ser un bus.
- Fijá la rapidez que necesitás. Un sensor lento (temperatura ambiente) se lee bien por un bus; uno rápido (vibración, audio) casi siempre es analógico o digital de alta velocidad.
- Evaluá el entorno eléctrico: longitud del cable, motores o relés cerca, tensión disponible. En ambientes ruidosos preferí buses con CRC, diferenciales o lazo de 4–20 mA.
- Revisá la compatibilidad de tensiones: VOH, VIH, VOL y VIL, y la tolerancia de 5 V de tu microcontrolador.
- Considerá la calibración. Si no podés calibrar, un sensor digital con calibración de fábrica ahorra mucho trabajo.
- Planificá el software: ¿existe una biblioteca confiable? ¿cuánto tarda cada lectura? ¿se puede leer sin bloquear el programa (tema 41)?
- Comprobá con el instrumento adecuado: el multímetro para tensiones analógicas, el osciloscopio para pulsos, el analizador lógico para buses.
En la práctica, cuando una lectura «no funciona», primero identificá en qué fila de la tabla de la sección 02 cae el sensor. Un problema de un sensor analógico es casi siempre de alimentación, referencia o ruido; el de un bus, de dirección, pull-up o tiempos; el de una señal temporal, de la medición del pulso.
13 · Comprensión
Confusiones frecuentes
«Un sensor digital mide mejor que uno analógico»
No necesariamente. Entregar el dato digitalizado resuelve el transporte y a veces la calibración, pero la calidad de la medición depende del elemento sensible. Hay sensores analógicos excelentes y sensores digitales mediocres.
«La salida digital de un módulo da el valor medido»
En los módulos con comparador la salida digital solo dice si se superó un umbral ajustado con el potenciómetro. Para obtener el valor hay que usar la salida analógica.
«Si es un sensor de dos estados, es digital I2C»
«Digital» se refiere a la forma de comunicar. Un pulsador es digital en el sentido de que entrega dos niveles, pero no tiene protocolo. I2C, SPI y 1-Wire son buses con direcciones y mensajes.
«Cualquier sensor de 3,3 V se conecta directo a 5 V»
Una entrada de 3,3 V puede aceptar un 5 V solo si lo dice su hoja de datos; la mayoría no lo tolera. Al revés, un sensor de 3,3 V suele ser leído por un microcontrolador de 5 V sin problemas si supera su VIH. Revisalo siempre.
«Al cambiar la alimentación no cambia la lectura analógica»
Depende de si la salida es ratiométrica y de qué referencia usa el ADC. Si la referencia es la propia alimentación y la salida es ratiométrica, se cancela; en el resto de los casos, cambia.
«Un bus I2C no puede fallar»
Falla por pull-ups ausentes o excesivos, cables largos, direcciones repetidas o un sensor que mantiene la línea en bajo. Un programa robusto comprueba el ACK, valida los datos y tiene un plan para cuando el sensor no responde.
14 · Práctica guiada
Predecí antes de comprobar
1. Clasificar la salida
Indicá la forma de salida de cada sensor: PIR HC-SR501, LM35, HC-SR04, BME280, termistor NTC con divisor, DS18B20.
Ver solución
PIR: todo o nada. LM35: tensión analógica. HC-SR04: ancho de pulso. BME280: bus (I2C o SPI). NTC con divisor: resistencia convertida en tensión por el divisor. DS18B20: bus 1-Wire.
2. Distancia con el HC-SR04
El pin Echo permanece en alto durante 2915 µs. ¿A qué distancia está el obstáculo?
Ver solución
distancia = 2915 × 0,0343 / 2 ≈ 50 cm. El sonido recorre unos 100 cm entre ida y vuelta.
3. Referencia y alimentación
Un sensor ratiométrico entrega 2,5 V con Vcc = 5,0 V. Si Vcc baja a 4,8 V, ¿qué cuentas lee un ADC de 10 bits con la propia Vcc como referencia? ¿Y con una referencia fija de 5,0 V?
Ver solución
La salida pasa a 2,4 V. Con la propia Vcc como referencia: 2,4 / 4,8 × 1023 ≈ 512, igual que antes. Con referencia fija de 5,0 V: 2,4 / 5,0 × 1023 ≈ 491, una diferencia de 21 cuentas que se interpretaría como un cambio de la magnitud.
4. Un sensor de 5 V en un microcontrolador de 3,3 V
La salida de un módulo de 5 V debe llegar a un pin que no tolera 5 V. Proponé un divisor con dos resistencias y calculá la tensión resultante.
Ver solución
Con R1 = 1 kΩ (hacia la señal) y R2 = 2 kΩ (hacia masa): V = 5 × 2 / (1 + 2) ≈ 3,33 V. Sirve para señales lentas. Para I2C o SPI rápidos conviene un conversor de niveles.
5. Ocho sensores de temperatura
Necesitás ocho sensores de temperatura en el mismo cable a lo largo de una tubería, con un solo pin de datos. ¿Qué sensor elegirías y por qué?
Ver solución
El DS18B20 por 1-Wire: todos comparten un único cable de datos y cada chip tiene un código único de 64 bits, así que el microcontrolador los direcciona uno a uno. Con sensores analógicos necesitarías ocho canales de ADC y ocho cables.
6. Resolución de una medida temporal
Un sensor con salida PWM de 1 kHz da 10 % a 0 °C y 90 % a 100 °C. Un temporizador cuenta a 1 MHz, ¿qué resolución en °C se obtiene? ¿Y si cuenta a 250 kHz?
Ver solución
El tiempo en alto recorre de 100 µs a 900 µs, es decir, 800 µs para 100 °C: 0,125 °C por µs con un contador de 1 MHz. A 250 kHz, cada cuenta equivale a 4 µs, o sea 0,5 °C. La resolución depende directamente de la frecuencia del contador.
15 · Síntesis
Ideas para recordar
- Digital y analógico describen cómo se entrega el dato, no qué se mide.
- Hay seis formas de salida: todo o nada, tensión, corriente, resistencia, señal temporal y bus digital; cada una exige un recurso distinto del microcontrolador.
- La salida de todo o nada es la más simple pero fija el umbral en el hardware y no informa «cuánto».
- Los sensores resistivos se leen con un divisor de tensión; el lazo 4–20 mA es robusto en cables largos y detecta cables cortados.
- Una salida ratiométrica depende de la alimentación; se compensa usando la propia Vcc como referencia del ADC.
- Las señales temporales se leen con temporizadores en modo captura; la resolución depende de la frecuencia del contador.
- Los buses digitales permiten compartir cables, traen calibración y detectan errores de transmisión, pero exigen un protocolo.
- Hay que comprobar VOH ≥ VIH y VOL ≤ VIL, y nunca aplicar 5 V a un pin de 3,3 V que no lo tolere.
- La interfaz transporta la medición; no mejora la exactitud del elemento sensible.
¿Listo para el tema 4?
Antes de avanzar, clasificá tres sensores por su forma de salida, explicá por qué un sensor ratiométrico puede medir bien aunque cambie la alimentación y decidí qué interfaz elegirías para seis sensores con dos pines libres. Si podés justificar las tres respuestas, tenés el criterio para elegir un sensor por su interfaz.
En el próximo tema estudiamos el acondicionamiento de señal: divisores, puentes, amplificadores, filtros y adaptación de niveles, que son las etapas que preparan una señal analógica antes de que la lea el ADC.