¿Cómo detecto que un sensor de inclinación ha sido "cortocircuitado" al sondear cada minuto?

0

Pensé en modificar este circuito ( Encendido momentáneo del interruptor: presione para encender, el microcontrolador puede apagarse solo ), pero me pregunto si algo más simple podría funcionar (o si alguien tuvo una mejor idea).

Estoy usando el Atmel SAM R21 Xplained para crear un prototipo de un dispositivo. Quiero detectar si se ha activado un sensor de inclinación, pero no quiero realizar un sondeo continuo para poder ahorrar energía. Me gustaría hacer una encuesta, digamos una vez por minuto, enviar su estado a más de 802.15.4 a la nube.

Aquí está la idea que se me ha ocurrido:

Al usar una salida digital para cargar un capacitor y la entrada analógica para detectar su voltaje, realice un seguimiento del voltaje del capacitor para ver si se cortó dentro del intervalo de 1 minuto. El circuito se vería algo así:

simular este circuito : esquema creado usando CircuitLab

El algoritmo sería:

  1. Inicialmente, cargue el condensador.
  2. bucle para siempre - Detecta, si el voltaje cae significativamente, envía un mensaje. Cargue el condensador.

Gracias,

Greg

    

2 respuestas

1

El enfoque habitual para este tipo de problema sería no hacer una encuesta, sino usar una interrupción.

Si enmascara la interrupción pero enciende el indicador de solicitud de interrupción, tendrá esencialmente el mismo resultado que el que sugirió, sin hardware (considere filtrar para establecer una longitud de pulso mínima para rechazar el ruido).

    
respondido por el Spehro Pefhany
1

¿Tal vez solo use una interrupción? De esa manera, el sensor Alto activará el mcu en lugar de tener que sondear. Una revisión rápida de Amel parece indicar que son compatibles. Es decir

Los dispositivos Atmel SAM R21 ofrecen las siguientes características: Flash programable en el sistema, controlador de acceso directo a la memoria (DMA) de 12 canales, Sistema de eventos de 12 canales, controlador de interrupción programable, hasta 28 pines de E / S programables, ultra Transceptor de banda ISM de 2,4 GHz de baja potencia con una velocidad de datos de 250 kb / s, reloj y calendario en tiempo real de 32 bits, tres temporizadores / contadores (TC) de 16 bits y tres temporizadores / contadores de control de 16 bits (TCC) , donde cada TC puede configurarse para realizar la generación de frecuencia y forma de onda, la sincronización precisa de la ejecución del programa o la captura de entrada con la medición de tiempo y frecuencia de las señales digitales.

    
respondido por el chris

Lea otras preguntas en las etiquetas