Update Group21_Lab06_Task2/main.c

Add Systic interrupt handler
This commit is contained in:
Uttam Bhavimani Bhavimani 2024-09-22 19:59:43 +05:30
parent 5bcde2ebc0
commit e10fba555b
1 changed files with 17 additions and 0 deletions

View File

@ -44,4 +44,21 @@ void delay(int us) // DEFINING DELAY FUNCTION
STCTRL |= (1 << 0) | (1 << 2); // Enable SysTick STCTRL |= (1 << 0) | (1 << 2); // Enable SysTick
while ((STCTRL & (1 << 16)) == 0); // Wait until flag is set while ((STCTRL & (1 << 16)) == 0); // Wait until flag is set
STCTRL &= 0x0; // Stop the timer STCTRL &= 0x0; // Stop the timer
}
void SystickHandler(void)
{ // SysTick interrupt handler
ontime++;
if (ontime < duty)
{
GPIO_PORTF_DATA_R |= 0x02; // LED should be ON
}
else
{
GPIO_PORTF_DATA_R &= ~0x02; // LED should be OFF
}
if (ontime >= 100)
{
ontime = 0; // Reset counter after one period
}
} }