Gast
#4750104
hallo forum, Ich will bei stromabschaltung eine Datei zum flash von STM32F103 speichern dafür richte ich PVD ( programmable voltage detector ) interrupt folgende Weise ein. aber ich kann PVD interrupt nicht feuern Ich schalte eine LED durch ein Portpin ein im PVD interrupt, aber die LED leuchtet nicht auch für kurze zeit - bis die kapazitoren leeren die flash speicher routinen habe ich im anderen Program getestet kein problem wer kann weiter helfen ? danke im voraus hier sind die Kodierung ==========================0============================ main(){ --------------------------------- RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); ------------------------------------------------------------- NVIC_InitStructure.NVIC_IRQChannel = PVD_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 6; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure);} ------------------------------------- EXTI16init(); ------------------------------------- FLASH_Unlock(); EE_Init(); EEread_params(); ---------------------------------- /* Configure the PVD Level to 2.9V */ PWR_PVDLevelConfig(PWR_PVDLevel_2V9); /* Enable the PVD Output */ PWR_PVDCmd(ENABLE); --------------------------------------------- } --------------------------------------------- void EXTI16init(void) { EXTI_InitTypeDef EXTI_InitStructure; /* Configure EXTI Line16(PVD Output) to generate an interrupt on rising and falling edges */ EXTI_ClearITPendingBit(EXTI_Line16); EXTI_InitStructure.EXTI_Line = EXTI_Line16; EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; EXTI_InitStructure.EXTI_LineCmd = ENABLE; EXTI_Init(&EXTI_InitStructure); } ---------------------------------- void PVD_IRQHandler(void) { EXTI_ClearITPendingBit(EXTI_Line16); EXTI_ClearFlag(EXTI_Line16); EEsave_param(); while (1){Delay(100);IWDG_ReloadCounter();} }