From 034361faa844e0303140393b44903ebf868e6a4f Mon Sep 17 00:00:00 2001 From: Luca Lizaranzu Date: Thu, 2 Apr 2026 14:09:53 -0700 Subject: [PATCH] test --- SHAL/Src/main.cpp | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/SHAL/Src/main.cpp b/SHAL/Src/main.cpp index 8168223..ae01f67 100644 --- a/SHAL/Src/main.cpp +++ b/SHAL/Src/main.cpp @@ -4,17 +4,39 @@ int main() { SHAL_init(); - PIN(A15).setPinMode(PinMode::ALTERNATE_FUNCTION_MODE); - - PIN(A15).setAlternateFunction(GPIO_Alternate_Function::AF2); - - SHAL_TIM1.configurePWM(SHAL_Timer_Channel::CH4, 1, 800, 10); - + /* + PIN(A11).setPinMode(PinMode::ALTERNATE_FUNCTION_MODE); + PIN(A11).setAlternateFunction(GPIO_Alternate_Function::AF2); + SHAL_TIM1.configurePWM(SHAL_Timer_Channel::CH4, 1000, 8000, 4000); SHAL_TIM1.start(); + */ + + PIN(A11).setPinMode(PinMode::OUTPUT_MODE); + + //PIN(B4).setPinMode(PinMode::OUTPUT_MODE); + //PIN(B4).setHigh(); + + RCC->AHBENR |= RCC_AHBENR_GPIOBEN; + + /* Small delay to ensure clock is stable (optional but safe) */ + for (volatile int i = 0; i < 1000; i++); + + /* 2. Set PB4 as general purpose output */ + // MODER: 2 bits per pin → pin 4 → bits [9:8] + GPIOB->MODER &= ~(3U << (4 * 2)); // Clear mode bits + GPIOB->MODER |= (1U << (4 * 2)); // Set as output (01) + + /* 3. Set PB4 HIGH */ + GPIOB->BSRR = (1U << 4); // Atomic set + + PIN(A11).setHigh(); while (true) { - SHAL_delay_ms(2000); + PIN(A11).toggle(); + SHAL_delay_us(10); + PIN(A11).toggle(); + } } \ No newline at end of file