(Lee este artículo en español aquí.) Years ago I designed this board, the UB-C328 based on the ATMEGA328. It exposes to the world 5 out of the 6 channels of…
(Lee este artículo en español aquí.) Years ago I designed this board, the UB-C328 based on the ATMEGA328. It exposes to the world 5 out of the 6 channels of…
Mucho, si no es que casi todo el trabajo que hacemos, lo llevamos a cabo dentro de tareas e interrupciones, en lo que le llamaríamos la capa de usuario. Sin…
No podíamos terminar este curso sin mencionar brevemente la forma en que FreeRTOS administra la memoria. De ésta tenemos dos tipos, la memoria dinámica y la memoria estática, siendo la…
Hasta el momento en este curso hemos visto tres formas de comunicación inter-tareas: Con notificaciones directas a la tarea.Con flujos.Con mensajes. Y nos queda una por explorar: las colas. Este…
¡Aprende a usar los semáforos mutex de FreeRTOS en Arduino!
En la programación concurrente, la que hemos estado realizando con FreeRTOS, es difícil, si no imposible, determinar a priori cuándo se va a ejecutar una tarea; peor aun cuando la…
En la lección anterior vimos la forma de pasar un dato de hasta 32 bits utilizando las notificaciones directas a las tareas que FreeRTOS provée como un mecanismo incorporado "de…
Hasta hoy hemos visto ejemplos de tareas aisladas para demostrar algunos puntos. Sin embargo, las diferentes tareas de las que un sistema embebido está compuesto no trabajan en aislamiento; al…
Una actividad muy común en nuestros proyectos es la programación de código que debe ejecutarse de manera periódica. FreeRTOS cuenta con dos funciones que nos permiten tener tareas periódicas: vTaskDelay()…