← Índice del curso

Sensores y Actuadores · Tema 3

Sensores digitales y analógicos

«Digital» y «analógico» no describen la magnitud que se mide, sino la forma en que el sensor entrega su información: un nivel, una tensión, una corriente, una resistencia, un ancho de pulso o un mensaje por un bus. Cada forma pide un periférico distinto del microcontrolador y un código distinto.

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:

Formas de salida de un sensor y recurso del microcontrolador que las lee.
Forma de salidaLa información está en…EjemploSe lee con
Todo o nadaEl nivel (alto o bajo)Pulsador, PIR, módulo con comparadorPin digital (GPIO)
Tensión analógicaEl valor de la tensiónLM35, TMP36, potenciómetroADC
Corriente analógicaEl valor de la corriente (lazo 4–20 mA)Transmisores industriales de presiónResistencia + ADC
Resistencia variableEl valor de la resistenciaTermistor NTC, LDR, FSRDivisor de tensión + ADC
Señal temporalEl ancho, el ciclo de trabajo o la frecuencia de pulsosHC-SR04, sensores con salida PWM, caudalímetrosTemporizador (captura) o interrupciones
Bus digitalUn mensaje con bytesBME280, MPU-6050, DS18B20, DHT22I2C, 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:

Vmedida = Vcc × Rfija / (Rfija + Rsensor)

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.

Variantes de salida analógica y cómo se llevan al ADC.
TipoVentajasInconvenientes
Tensión (0 a 5 V, 0 a 3,3 V)Directa al ADC; muy simpleSensible al ruido y a las caídas en cables largos
Resistencia (divisor)Sensores baratos; amplia variedadNo lineal; exige elegir bien la resistencia fija; autocalentamiento
Corriente (4–20 mA)Inmune a la longitud del cable; detecta cable cortadoNecesita 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:

Un sensor ratiométrico de salida 0,5 × Vcc leído con un ADC de 10 bits cuando Vcc baja de 5,0 V a 4,8 V.
Referencia del ADCCuentas con Vcc = 5,0 VCuentas con Vcc = 4,8 VResultado
La propia Vcc2,50 V / 5,0 V → 5122,40 V / 4,8 V → 512Se cancela: la lectura no cambia
Referencia fija de 5,0 V2,50 V / 5,0 V → 5122,40 V / 5,0 V → 491La 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:

Buses habituales de sensores.
BusCablesCómo se elige el sensorEjemplos
I2C2 (SDA y SCL), más alimentaciónDirección de 7 bits; muchos sensores comparten el mismo par de cablesBME280, MPU-6050, BH1750, SHT31
SPI3 + un pin de selección (CS) por cada sensorSe activa su línea CS; más rápido que I2CBME280 (también I2C), acelerómetros ADXL345, MAX31855
1-Wire1 (datos) y masa; opcionalmente alimentación parásitaCada chip tiene un código de 64 bits únicoDS18B20
Protocolo propio de un cable1 (datos)Un solo sensor por línea; temporización estrictaDHT11 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.

Qué hacer según las tensiones de sensor y microcontrolador.
SensorMicrocontroladorSolución
3,3 V5 V (por ejemplo ATmega328P)Suele funcionar sin cambios si VOH supera VIH; verificarlo en las hojas
5 V3,3 V sin tolerancia a 5 VDivisor resistivo (señales lentas) o conversor de niveles
Bus I2C con distintas tensionesCualquieraConversor de niveles bidireccional; los pull-ups a la tensión de cada lado
Analógico de 0 a 5 VADC de 3,3 VDivisor 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

Comparación de las interfaces de sensor desde el punto de vista del diseño.
CriterioAnalógico (tensión o resistencia)Señal temporalBus digital
Hardware en el microcontroladorUn canal de ADC por sensorUn pin con captura o interrupciónUn puerto I2C, SPI, UART o un pin de 1-Wire, compartido
Cantidad de pines con varios sensoresUno por sensor (el ADC es limitado)Uno por sensorLos mismos pines para muchos sensores
Inmunidad al ruidoBaja: el ruido se suma al valorMediaAlta, con checksum o CRC
Longitud de cableCorta, salvo 4–20 mAMediaCorta (I2C, SPI) o larga (1-Wire con cuidados)
CalibraciónLa hace el programadorLa hace el programadorSuele venir hecha por el fabricante
Velocidad de respuestaMuy rápida (limitada por el ADC y el sensor)Depende de la duración de la señalLimitada por el tiempo de conversión del sensor y del bus
Costo del sensorBajoBajoMedio
Esfuerzo de programaciónMedio: conversión y filtradoMedio: temporizaciónBajo con biblioteca; alto sin ella
Sensibilidad a la fuente de alimentaciónAlta (si es ratiométrico o si la referencia cambia)BajaBaja

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

① Qué hay en el cable—
② Dato crudo en el microcontrolador—
③ Resultado del programa—
Error de la lectura—
Resolución de esta interfaz—
Recurso del microcontrolador—

Elegí una interfaz, ajustá la temperatura y presioná «Leer».

Últimas 10 lecturas. Cambiar los controles no agrega filas.
N.ºInterfazT real (°C)Dato crudoResultado
Sin lecturas registradas.

Recorrido guiado

  1. 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.
  2. 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.
  3. 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.
  4. Con la interfaz 4, leé a 24 °C: llega 0x0180 (384 × 0,0625 = 24,0 °C). El dato viaja como número ya convertido.
  5. 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.
  6. 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.
  7. 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

  1. Contá cuántos sensores hay y cuántos pines libres. Si faltan pines o ADC, la decisión suele ser un bus.
  2. 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.
  3. 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.
  4. Revisá la compatibilidad de tensiones: VOH, VIH, VOL y VIL, y la tolerancia de 5 V de tu microcontrolador.
  5. Considerá la calibración. Si no podés calibrar, un sensor digital con calibración de fábrica ahorra mucho trabajo.
  6. Planificá el software: ¿existe una biblioteca confiable? ¿cuánto tarda cada lectura? ¿se puede leer sin bloquear el programa (tema 41)?
  7. 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.