Está en la página 1de 18

SISTEMAS OPERATIVOS

EN TIEMPO REAL
M SC. I NG. CARLOS CENTENO
G.I N.T.E.A.UTN FRC
TEMARIO

• Sistema Embebido Super Loop


• Generalidades
• Ejemplo
• Conversión a RTOS
• Conceptos Generales de RTOS
• KERNEL
• SCHEDULER
• TAREAS
• PRIORIDADES
• SINCRONIZACION
GENERALIDADES

• Cada “tarea” es una función en C.


• Se llaman por turno desde el bloque
principal.
• NO existen prioridades.
• Se ejecutan rápidamente y regresan al
bloque principal.
• Pueden usar una variable de estado.
• Se usan esperas pasivas – delay.
• NO hay timers.
SISTEMA EMBEBIDO

I/O
LCD
TECLADO

MICRO USART
RS232
MUX
Input
SPI
USB

FILTROS OFFSET PGA ADC

Sistema de Adquisición de Señales


SOLUCION SUPER LOOP
Implementación del Software de control basado en topología súper loop

LEER Teclado
Timer ISR
LEER ADC
Borrar Pantalla
RS232

Filtrado Digital c=c+1


Si c>=5
T=0
Escribir Pixel
Frec Muestreo: 500Hz
Resolución LCD: 240 pixel
T == 1
Resolución Impresión: 5 muestras por pixel
Tiempo de ciclo: 10mS
CONVERSION A RTOS

• Se requiere RAM y ROM adicional


para la uso de un RTOS.
• Requiere definir cada PROCESO.
• Se deben definir las prioridades.
• Se deben definir las interacciones
entre procesos.
• Sincronización con EVENTOS.
SUPER LOOP  RTOS

Ejecutivo
MultitareaCICLICO
RTOS
LEER Teclado Timer
Interrupt Service
Tarea Tarea LCD Tarea Teclado Tarea ADC Tarea
Borrar Pantalla LEER ADC
Comunicación IDLE

Prioridad = 2 Prioridad = 3 Prioridad = 4 Prioridad = 1


RS232 Prioridad = 63
Filtrado Digital

Escribir Pixel Timer


Interrupt Service

LEER ADC
T==1
EVENTOS
RS232
RTOS
• Conceptos Generales
• KERNEL
• SCHEDULER
• TIPO
• PREEMPTIVE
• NON PREEMTIVE
• TAREAS
• ESTADOS DE OPERACIÓN
• TCB  RAM
• STACK  RAM
RTOS
• Conceptos Generales
• TAREAS
• PRIORIDADES
• REENTRANCIA
• SINCRONIZACION
• ECB
• TIPOS DE EVENTOS
• SEMAFOROS
• MUTEX
• MAILBOX
• QUEUES
TIPOS RTOS
REENTRANCIA
ESTADOS DEL SISTEMA
EVENTOS

 Semáforos
 Mailbox
 Queues
ESQUEMA USANDO RTOS

Tarea Tarea LCD Tarea Teclado Tarea ADC Tarea


Comunicación IDLE

Prioridad = 2 Prioridad = 3 Prioridad = 4 Prioridad = 1 Prioridad = 63

EVENTOS
ESQUEMA USANDO RTOS

Tarea Tarea LCD Tarea Teclado Tarea ADC Tarea


Comunicación IDLE

Prioridad = 2 Prioridad = 3 Prioridad = 4 Prioridad = 1 Prioridad = 63

Semaforo
Semaforo

MailBox
MailBox
CODIGO USANDO RTOS

void comm() void LCD() void KEY() void ADC() void IDLE()
{ { { { {
while(1){ while(1){ while(1){ while(1){ while(1){
… … … … …
… … … … …
} } } } }
} } } } }

Semaforo
Semaforo

MailBox
MailBox
RTOS DISPONIBLES
• uCOS III
• https://www.micrium.com/rtos/kernels/
• freeRTOS
• https://www.freertos.org/
• AVIX RT
• http://www.avix-rt.com/
• THREADX RTOS
• https://rtos.com/

EJEMPLO LOOP EJEMPLO RTOS


PREGUNTAS ???

GRACIAS POR SU ATENCION!!!!!

MSc. Ing. Carlos Centeno


ccenteno@gmail.com

G.In.T.E.A. – FRC UTN


http://www.investigacion.frc.utn.edu.ar/gintea/

También podría gustarte