commit 2e6318b532d0e24b2747253f1046254d27cbd2fd
parent 4dccd4eedd7da8773b64d4079ccf6cfcedb747a3
Author: Martin Kloeckner <mjkloeckner@gmail.com>
Date: Sat, 4 Oct 2025 16:00:05 -0300
Updated `README.md`
Diffstat:
| M | README.md | | | 35 | ++++++++++++++++++++++++----------- |
1 file changed, 24 insertions(+), 11 deletions(-)
diff --git a/README.md b/README.md
@@ -8,8 +8,8 @@ ademas se actualiza en cada milisegundo. A su vez esta aplicación incluye 3
tareas `task_sensor`, `task_system` y `task_actuator` las cuales se modelan
mediante maquinas de estado. De estas 3 tareas en esta instancia solo se ha
implementado la maquina de estados de la primera `task_sensor` para multiples
-sensores (modelados como botones) de las restantes, solo se ha implementado lo
-suficiente como para que la aplicación se ejecute sin errores.
+sensores, de las restantes tareas, solo se ha implementado lo suficiente como
+para que la aplicación se ejecute sin errores.
## Estructura del proyecto
@@ -164,19 +164,32 @@ incremente de 13 us a 106 us.
### Archivo `app/src/task_sensor.c`
En este archivo se implementa las funciones del modelo sensor, el cual se
-modela, en esta instancia como un botón, utilizando una maquina de estados.
+modela, en esta instancia como multiples botones, utilizando una maquina de
+estados por cada uno.
+
+Las subrutinas que se presentan son `task_sensor_init`, `task_sensor_update` y
+`task_sensor_statechart`. La primera `task_sensor_init` se invoca por única vez
+al iniciar la tarea (cuando se invoca `app_init`) e inicializa las variables de
+todas las maquinas de estados de modelo sensor disponibles (definidas en
+`task_sensor_cfg_list` y `task_sensor_dta_list`). Las ultimas dos subrutinas
+`task_sensor_update` y `task_sensor_statechart` se invocan continuamente en el
+superloop, al invocar `app_update`, en particular en `app_update` se llama a
+`task_sensor_update` y esta internamente invoca la función
+`task_sensor_statechart`, la cual actualiza el estado de cada una de la maquina
+de estados disponibles del modelo `task_sensor`.
### Archivo `app/src/task_sensor_attribute.h`
-### Archivo `app/task_sensor.png`
-
-## Diagrama de estados de tareas
+En este archivo se describen los atributos de la maquina de estados del modelo
+sensor, como son los eventos que recibe y los estados posibles, también se
+definen las estructuras que representan esta maquina de estados, de manera tal
+de poder representar multiples sensores.
-Como se mencionó previamente, las tareas se modelan mediante maquinas de
-estados, a continuación se muestras los diagramas respectivos.
+### Archivo `app/task_sensor.png`
-
+En este archivo se presenta el diagrama de estados completo de la maquina de
+estados que representa al sensor. Por ser un diagrama de estados se muestran
+todos los posibles estados, como también el inicial, y como cambian estos al
+recibir eventos.

-
-