6_Systick

June 19, 2018 | Author: Jorge Psico | Category: Microcontroller, Kernel (Operating System), Operating System, Embedded System, Computer Science
Report this link


Description

“Programación de SistemasEmbebidos con Microcontroladores de 32bits - LPC1769” SysTick Mgter. Ing. Marcos Darío Aranda JTP – Arquitectura de Computadores – Departamento de Informática JTP – Sistemas Microprogramables – Departamento de Electrónica 2 Temario • SYSTICK ▫ Systick del uC LPC1769 ▫ Led del LPC1769 ▫ LED2 RED => Actividad Práctica 3 – SysTick . la prioridad se puede configurar pero no se puede inhabilitar. .3 Interrupciones del sistema Las interrupciones del sistema son: • PendSV: se genera por software y es parte del proceso de atención a una llamada al sistema operativo mediante una instrucción SVC. la prioridad se puede configurar pero no se puede inhabilitar. • SysTick: generada por el timer del mismo nombre. 4 Systick del uC LPC1769 • ARM Cortex-M3 system tick timer (SYSTICK) ▫ Es un temporizador de 24 bits. cuenta en forma descendente o ascendente. ▫ Cuando su cuenta llega a cero genera una excepción el SysTick (puede programarse para generar excepciones periódicas a intervalos regulares de XmS) ▫ Además una excepción de SysTick puede generarse por programa ▫ En el ambiente de un Sistema Operativo (OS o RTOS) puede usarse ésta excepción como system tick ▫ Se puede usar además como un simple contador . 5 Systick del uC LPC1769 . debe proporcionar una función de configuración del sistema de dispositivo específico y una variable global que contienga la frecuencia del sistema. Ello configura el dispositivo e inicializa el oscilador (PLL) que es parte del microcontrolador. . la misma es adaptada por el proveedor de silicio para que coincida con su dispositivo real. • Como requisito mínimo de este archivo.c.6 Systick del uC LPC1769 • ARM proporciona una plantilla de archivo para system_device. SystemCoreClockUpdate () evalúa la configuración de registro de reloj y calcula el reloj del núcleo actual. • La variable SystemCoreClock contiene el reloj del núcleo del sistema (que es la frecuencia de reloj del sistema suministrado al temporizador SysTick y el reloj de núcleo de procesador). También puede ser utilizado por el depurador para consultar la frecuencia del temporizador de depuración o configurar la velocidad de reloj.7 Systick del uC LPC1769 • El archivo system_device. Esta variable puede ser utilizada por la aplicación del usuario para configurar el temporizador SysTick o configurar otros parámetros.c debe ofrecer como requisito mínimo la función SystemInit (void) Esta función configura el oscilador (PLL). La función SystemCoreClockUpdate (void) actualiza la variable SystemCoreClock y debe ser llamado cada vez que se cambia el reloj durante la ejecución del programa. . Tipo delay_ms (Tipo_dato delay_time) . void Configurar_Systick(void){ // SysTick tiempo de interrupción a intervalos de 1 mS if (SysTick_Config (SystemCoreClock / 1000)){ while (1). . // Captura el error } } void SysTick_Handler(void).8 Systick => Actividad Práctica • Genere nuevo proyecto => Proyecto_Systick • Realice los drivers del Systick los cuales contendrán las siguientes funciones: Una variable => que les permitirá realizar la cuenta. 9 Systick => Actividad Práctica • Desarrollo un aplicación que permita cambiar el estado del LED2 cada un segundo. . utilice el ORC para poder observar y verificar que la señal de salida se encuentra un segundo en alto y un segundo en bajo.


Comments

Copyright © 2024 UPDOCS Inc.