Contador de tiempo de resolución 6.25 nanosegundo para cualquier microcontrolador.

Al diseñar un reemplazo de estado sólido para un subsistema de visualización de tubos de vacío y CRT radar, me pegué en un sistema adecuado de tiempo entre el pulso de sincronización y el pulso de eco. El pulso de sincronización y el pulso de eco se capturaron en los dos pernos de un Arduino. La debida Arduino tiene un reloj MCLK/2 de 42 MHz, que me daría una resolución de 23,81 nanosegundos (ns) que, para la velocidad de la luz, se traduciría a una distancia de 6,86 metros. Quería una mejor resolución.

Después de buscar soluciones utilizando osciladores de alta velocidad y su lógica discreta ICs (contadores, registros de cambio), FPGAs y las soluciones de la plataforma cuesta en el rango de USD 2.000 /-, decidí examinar la ESP8266 de alguna solución a mi problema.

Para mi deleite, he descubierto dos funciones de la API de ESP8266 de Arduino, es decir, ESP.getCycleCount() y ESP.reset()

ESP.getCycleCount() cuenta los ciclos de instrucción desde el comienzo, en una variable de 32 bits sin signo interna, susceptibles de desbordamiento cada 28 segundos o menos. Un un microsegundo período dará 160 ciclos de instrucción. Ahora para medir el software arriba requerido por el software, necesitará sólo cuenta los ciclos de instrucción que cuenta con su rutina por un 1 microsegundo retrasan y restarán 160 de esa cuenta, para darle el software encima de la cabeza en la adquisición de la cuenta. 1 retraso microsegundo, tengo un conteo de 213. Que elaboró a 213-160 = 53 puntos (53 x 6.25 = 331,25 nanosegundos) sobrecarga de software para la adquisición de la cuenta. Restando 53 de cada cuenta me da una cuenta exacta a dentro de unas pocas decenas de picosegundos, por períodos de 30 microsegundos a unos 500 microsegundos.

Artículos Relacionados

Cómo hacer un contador de tiempo en Minecraft PE

Cómo hacer un contador de tiempo en Minecraft PE

Hola a todosHoy voy a mostrarte cómo hacer un contador de tiempo en Minecraft PE. Hice este temporizador para el uso en un mapa de la aventura, pero no dude en utilizar en cualquier lugar. Este temporizador es ideal para mapas de aventura que tienen
Arduino y frambuesa Pi: construcción de sistemas confiables con contadores de tiempo del perro guardián

Arduino y frambuesa Pi: construcción de sistemas confiables con contadores de tiempo del perro guardián

Resumen: En este Instructable veremos cómo construir más confiables sistemas informáticos utilizando contadores de tiempo del perro guardián. Mostramos cómo configurar y utilizar el Raspberry Pi y temporizadores de control interno de Arduino. También
Un contador de tiempo de fallo de alimentación de $20

Un contador de tiempo de fallo de alimentación de $20

Tengo un segundo hogar que es ~ 90 minutos de mi residencia principal. Está en una zona que es propensa a frecuentes cortes de energía, por lo que nunca estás bastante seguro al llegar qué tan seguro podría ser la comida en la nevera comer. Quería un
Temporizador de cocina de Arduino con una introducción interrupciones de contador de tiempo

Temporizador de cocina de Arduino con una introducción interrupciones de contador de tiempo

Bienvenidos a mi primer instructivo,Decidí hacer un proyecto bastante simple para entrar al mundo instructable. Este proyecto trata de hacer un temporizador de cocina simple con un Arduino Uno. Así le dará una pequeña introducción a la pantalla tft d
Contador de tiempo de reacción LED

Contador de tiempo de reacción LED

este proyecto es una versión actualizada del proyecto original de contador de tiempo de reacción se describe en el libro "Electrónicos juegos y juguetes se pueden construir" de Len Buckwalter. Las bombillas incandescentes y los componentes pasiv
Contador de tiempo de reacción / número juego de parada

Contador de tiempo de reacción / número juego de parada

el juego consiste en 3 siete segmento muestra que continuamente seguir contando y el objetivo es dejar en 100. El juego está basado en el Ic4026 el contador de década y 7 segmentos display driver y un 555 para generar pulsosPaso 1: Introducción y mat
Temporizador analógico - usando un viejo contador de tiempo del huevo

Temporizador analógico - usando un viejo contador de tiempo del huevo

- esto no es un instructivo, esto es solo para chicos mostrando un proyecto finalizado -Temporizador de huevos no usando nada pero su circuito interno mecánico para funcionar como un contador de tiempo para un circuito eléctrico a.k.a. ninguna viruta
Salida con un contador de tiempo

Salida con un contador de tiempo

tengo un taladro inalámbrico con baterías recargables. La carga de las baterías completamente en unos 20 minutos. No se supone que para permanecer en el cargador para más que eso. Sin embargo, a menos que estoy parado justo después del tiempo de carg
Contador de tiempo para hablar en público

Contador de tiempo para hablar en público

como un pastor hablar en público cada semana.  Necesito algo para mantenerme consciente del tiempo transcurrido mientras mi sermón.  Lo que estoy ofreciendo aquí ayudaría a cualquier persona que debe hablar ante una audiencia y, sin embargo, permanec
Contador de tiempo

Contador de tiempo

En este instructable les mostraré como hacer un contador de tiempo sin fin. Se me ocurrió esta idea al llegar a casa de vacaciones y ahora les comparto a todos ustedes en instructables. Este programa es una idea simple pero la codificación para él to
NanoWave - reciclaje antiguo horno de microondas como reloj / contador de tiempo

NanoWave - reciclaje antiguo horno de microondas como reloj / contador de tiempo

¿Necesita un reloj o cronómetro (para mí activar el riego por goteo)?  Pueden rescatar piezas de un antiguo horno de microondas con el mínimo esfuerzo y hacen uno.   Puesto que es más pequeño y menos funcional que un microondas por lo llaman un NanoW
Interfaz de contador de tiempo de slotcar USB barato

Interfaz de contador de tiempo de slotcar USB barato

EDITARLa tercera y refinada versión de mi circuito de detección puede encontrarse aquí:La primera versión sólo funcionará confiablemente con un deadstrip muy largo o coches muy lentos.------------------------------------------------------------------
Contador de tiempo de reacción

Contador de tiempo de reacción

yo soy nuevo en Arduino y quería un proyecto que me enseñaría cosas diferentes.Esto me hizo implicado con el sonido y el uso de una LCD.Este proyecto se basa en el Instructable publicada por bertus52x11 que usted puede encontrar aquíMientras que come
Cable de extensión del contador de tiempo

Cable de extensión del contador de tiempo

con Navidad subiendo, decidí que sería un buen momento para actualizar ese temporizador común y corriente que usé el año pasado. Así que aquí está mi reloj!¿Por qué? Porque estaba de compras en walmart y notado tenía temporizadores en venta algunos r