CH573F IO 中断怎么用
void gpio_wake_init() {//初始化位输入上拉
GPIOB_ModeCfg(GPIO_Pin_4, GPIO_ModeIN_PU);
//开启下降沿中断
GPIOB_ITModeCfg(GPIO_Pin_4,GPIO_ITMode_FallEdge);
//开启GPIO睡眠唤醒
PWR_PeriphWakeUpCfg( ENABLE, RB_SLP_GPIO_WAKE,Edge_LongDelay );
//开启GPIOB中断
PFIC_EnableIRQ(GPIO_B_IRQn);
}
//中断服务程序
__attribute__((interrupt("WCH-Interrupt-fast")))//硬件压栈
__attribute__((section(".highcode"))) //放到RAM里
void GPIOB_IRQHandler(void) {
PRINT("gpio interrupt\r\n");
GPIOB_ClearITFlagBit(GPIO_Pin_4);
} 这个跟其他芯片的IO 中断一样
比如中断唤醒,或者一些实时性很高的IO状态检测 这个应该是和别的芯片一样吧,没有什么特别的地方吧。
页:
[1]