本帖最后由 playerol 于 2015-6-3 16:58 编辑
用STM8L051 进入HALT,用PB5外部中断唤醒, 初始化
GPIO_Init(GPIOB,KEY,GPIO_Mode_In_PU_IT);
EXTI_SetPortSensitivity(EXTI_Port_B,EXTI_Trigger_Rising_Falling);
ITC_SetSoftwarePriority(EXTI5_IRQn,ITC_PriorityLevel_3);
进入HALT部分语句
sim();
GPIO_Init(GPIOB,KEY,GPIO_Mode_In_PU_IT);
rim();
halt();
中断部分
INTERRUPT_HANDLER(EXTI5_IRQHandler, 13)
{
sim();
GPIO_Init(GPIOB,GPIO_Pin_5,GPIO_Mode_In_PU_No_IT);
EXTI_ClearITPendingBit(EXTI_IT_Pin5);
rim();
}
本意是按下或松开唤醒,到一定时间自动进入睡醒,但结果是按下不断进入中断,要松开才继续别的部分程序,并且开机前按下,开机后松开没有唤醒。
请教下各路大神如何处理????
|