No tengo el código estándar para esto, pero puedo decir que sus especificaciones son vagas. ¿Quieres un máximo y mínimo absoluto? ¿Tiempo de ventana? ¿Periódico? Supongamos que se trata de señales aperiódicas complejas y que desea valores máximos y mínimos absolutos, en otras palabras, la computadora recuerda las dos especificaciones hasta que son reemplazadas por nuevos valores máximos y mínimos, o el valor se restablece manualmente (o restablece por alguna señal externa).
Parece fuera de mi cabeza que hay varias formas de hacerlo. Una forma, si tiene los ciclos de CPU y / o el tiempo de almacenamiento intermedio (probablemente sí, pero quién sabe), sería comenzar comparando cada valor de muestra con el máximo anterior (establecería un valor inicial de cero para la comparación) . Entonces el código comienza a buscar un máximo. La primera vez que la señal se eleva, sigue registrando cada punto de muestra cada vez más alto como el nuevo máximo. Tan pronto como detecta un punto que es igual o menor que el máximo anterior, comienza a buscar un mínimo. El mismo proceso, solo que ahora cuando encuentra uno que es mayor que el mínimo anterior, cambia al modo máximo. Esta vez no ve uno de inmediato, y dependiendo de la forma de la forma de onda, tal vez en absoluto.
Con una forma de onda compleja, puede obtener algunos ciclos iniciales donde se actualiza varias veces, pero después de algunos ciclos no tiene que escribir muchos valores nuevos en la memoria. Después de una gran cantidad de ciclos, los valores no cambiarán muy a menudo.
- ¿Cómo son útiles las estructuras de datos en sistemas embebidos?
- ¿Alguien puede ayudarme a encontrar la dirección de Pc0-Pc5? La hoja de datos: http://www.pmt-fl.com/downloads/picocap/DB_PCap01Ax_0301_en.pdf
- ¿Cuáles son los mejores institutos para el curso de sistemas integrados en Chennai?
- Cómo fusionar un sistema integrado en Android
- ¿Cómo es el crecimiento profesional en sistemas embebidos para una nueva en Robert Bosch, Bangalore? También tengo un trabajo de software que paga más que Bosch, ¿alguna sugerencia?
Puede haber formas más eficientes de hacer esto, pero sigo siendo un novato.