* api-hal-gpio: rework gpio on ll * one_wire_slave: rework gpio initialization * interrupts: add attribute weak to hal exti interrupts handlers * api-hal-gpio: add exti interrupt handlers * input: rework with api-hal-gpio interrupts * one_wire_slave: rework with api-hal-gpio interrupts * api-hal-gpio: fix incorrect exti line config * api-hal-gpio: add doxygen documentation * api-hal-gpio: add enable / disable interrupts * api-hal-gpio: add get_rfid_level * core: remove api-gpio * applications: rework gpio with api-hal-gpio * lib: rework gpio with api-hal-gpio * rfal: disable exti interrupt when rfal is inactive * rfal: add interrupt gpio reinitialization * api-hal-gpio: hide setting speed and pull mode LL implementation * stm32wbxx_it: remove unused EXTI handlers * api-hal-gpio: guard set, enable, disable and remove interrupt * Drop F4 target * Accessor: update gpio api usage Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
		
			
				
	
	
		
			108 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#include "main.h"
 | 
						|
#include "stm32wbxx_it.h"
 | 
						|
#include "FreeRTOS.h"
 | 
						|
#include "task.h"
 | 
						|
 | 
						|
extern PCD_HandleTypeDef hpcd_USB_FS;
 | 
						|
extern ADC_HandleTypeDef hadc1;
 | 
						|
extern COMP_HandleTypeDef hcomp1;
 | 
						|
extern RTC_HandleTypeDef hrtc;
 | 
						|
extern TIM_HandleTypeDef htim1;
 | 
						|
extern TIM_HandleTypeDef htim2;
 | 
						|
extern TIM_HandleTypeDef htim16;
 | 
						|
extern TIM_HandleTypeDef htim17;
 | 
						|
 | 
						|
extern void HW_TS_RTC_Wakeup_Handler();
 | 
						|
extern void HW_IPCC_Tx_Handler();
 | 
						|
extern void HW_IPCC_Rx_Handler();
 | 
						|
 | 
						|
void NMI_Handler(void) {
 | 
						|
    HAL_RCC_NMI_IRQHandler();
 | 
						|
}
 | 
						|
 | 
						|
void HardFault_Handler(void) {
 | 
						|
    if ((*(volatile uint32_t *)CoreDebug_BASE) & (1 << 0)) {
 | 
						|
        __asm("bkpt 1");
 | 
						|
    }
 | 
						|
    while (1) {}
 | 
						|
}
 | 
						|
 | 
						|
void MemManage_Handler(void) {
 | 
						|
    __asm("bkpt 1");
 | 
						|
    while (1) {}
 | 
						|
}
 | 
						|
 | 
						|
void BusFault_Handler(void) {
 | 
						|
    __asm("bkpt 1");
 | 
						|
    while (1) {}
 | 
						|
}
 | 
						|
 | 
						|
void UsageFault_Handler(void) {
 | 
						|
    __asm("bkpt 1");
 | 
						|
    while (1) {}
 | 
						|
}
 | 
						|
 | 
						|
void DebugMon_Handler(void) {
 | 
						|
}
 | 
						|
 | 
						|
void SysTick_Handler(void) {
 | 
						|
    HAL_IncTick();
 | 
						|
}
 | 
						|
 | 
						|
void TAMP_STAMP_LSECSS_IRQHandler(void) {
 | 
						|
    if (!LL_RCC_LSE_IsReady()) {
 | 
						|
        // TODO: notify user about issue with LSE
 | 
						|
        LL_RCC_ForceBackupDomainReset();
 | 
						|
        LL_RCC_ReleaseBackupDomainReset();
 | 
						|
        NVIC_SystemReset();
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
void RCC_IRQHandler(void) {
 | 
						|
}
 | 
						|
 | 
						|
void ADC1_IRQHandler(void) {
 | 
						|
    HAL_ADC_IRQHandler(&hadc1);
 | 
						|
}
 | 
						|
 | 
						|
void USB_LP_IRQHandler(void) {
 | 
						|
    HAL_PCD_IRQHandler(&hpcd_USB_FS);
 | 
						|
}
 | 
						|
 | 
						|
void COMP_IRQHandler(void) {
 | 
						|
    HAL_COMP_IRQHandler(&hcomp1);
 | 
						|
}
 | 
						|
 | 
						|
void TIM1_UP_TIM16_IRQHandler(void) {
 | 
						|
    HAL_TIM_IRQHandler(&htim1);
 | 
						|
    HAL_TIM_IRQHandler(&htim16);
 | 
						|
}
 | 
						|
 | 
						|
void TIM1_TRG_COM_TIM17_IRQHandler(void) {
 | 
						|
    HAL_TIM_IRQHandler(&htim1);
 | 
						|
}
 | 
						|
 | 
						|
void TIM1_CC_IRQHandler(void) {
 | 
						|
    HAL_TIM_IRQHandler(&htim1);
 | 
						|
}
 | 
						|
 | 
						|
void TIM2_IRQHandler(void) {
 | 
						|
    HAL_TIM_IRQHandler(&htim2);
 | 
						|
}
 | 
						|
 | 
						|
void HSEM_IRQHandler(void) {
 | 
						|
    HAL_HSEM_IRQHandler();
 | 
						|
}
 | 
						|
 | 
						|
void RTC_WKUP_IRQHandler(void){
 | 
						|
    HW_TS_RTC_Wakeup_Handler();
 | 
						|
}
 | 
						|
 | 
						|
void IPCC_C1_TX_IRQHandler(void){
 | 
						|
    HW_IPCC_Tx_Handler();
 | 
						|
}
 | 
						|
 | 
						|
void IPCC_C1_RX_IRQHandler(void){
 | 
						|
    HW_IPCC_Rx_Handler();
 | 
						|
}
 |