Update Group21_Lab06_Task2/main.c

Define Delay Function
This commit is contained in:
Uttam Bhavimani Bhavimani 2024-09-22 19:54:50 +05:30
parent ac469495c0
commit 5bcde2ebc0
1 changed files with 8 additions and 0 deletions

View File

@ -36,4 +36,12 @@ void systick_setting(void) {
STRELOAD = SYSTICK_RELOAD_VALUE(PWM_PERIOD/100); // Set reload value for 10 µs intervals (100 kHz)
STCTRL |= (CLKINT | ENABLE | INTEN); // Set internal clock, enable the timer
STCURRENT = 0; // Clear STCURRENT value
}
void delay(int us) // DEFINING DELAY FUNCTION
{
STRELOAD = SYSTICK_RELOAD_VALUE(us); // RELOAD VALUE FOR REQUIRED DELAY
STCURRENT = 0; // Clear STCURRENT
STCTRL |= (1 << 0) | (1 << 2); // Enable SysTick
while ((STCTRL & (1 << 16)) == 0); // Wait until flag is set
STCTRL &= 0x0; // Stop the timer
}