#include "stm32f10x.h"  // 包含STM32F103ZET6的标准库
#include "photoelectric_switch.h"
#include "uart_log.h"

void Photoelectric_Switch_Interrupt(void) {
    if (EXTI->PR & EXTI_PR_PR9) { // 检查是否是中断线9触发的中断（PB9）
        if (GPIOB->IDR & (1 << 9)) {  // 检测PB9的上升沿  
				   Serial_Printf("PB9: 物体遮挡 (NPN 传感器 - 高电平)\n");
        } else {  // 检测PB9的下降沿
						Serial_Printf("PB9: 物体移开 (NPN 传感器 - 低电平)\n");
        }
    }

    if (EXTI->PR & EXTI_PR_PR0) { // 检查是否是中断线0触发的中断（PE0）
        if (GPIOE->IDR & (1 << 0)) {  // 检测PE0的上升沿
					 Serial_Printf("PE0: 物体遮挡 (NPN 传感器 - 高电平)\n");

        } else {  // 检测PE0的下降沿
						Serial_Printf("PE0: 物体移开 (NPN 传感器 - 低电平)\n");
        }
     
    }
}
