STM8外部中断

    xiaoxiao2025-06-04  28

    硬件平台:stm8s103 编译环境:IAR for stm8

    #include <iostm8s103f3.h> #include <intrinsics.h> // 设置PD4中断向量及中断函数 #pragma vector = 8 __interrupt void EXTI_PORTD_IRQHandler(void) { PD_ODR_ODR3 = !PD_ODR_ODR3; // PD3输出电平翻转 } void main() { __disable_interrupt(); //禁用全局中断 PD_ODR = 0; //关闭所有PD脚 PD_DDR = 0xff; //设置所有PD脚为输出 PD_CR1 = 0xff; //设置所有PD脚为上拉输出 PD_CR2 = 0xff; //设置输出速度为10MHz // // Now configure the input pin. // PD_DDR_DDR4 = 0; //设置PD4为输入 PD_CR1_C14 = 0; //设置PD4为浮空输入 // // Set up the interrupt. // EXTI_CR1_PDIS = 2; //设置PD组仅下降沿触发中断 EXTI_CR2_TLIS = 0; //高级中断仅下降沿触发 __enable_interrupt(); //使能全局中断 while (1) { __wait_for_interrupt(); //等待中断 } }
    转载请注明原文地址: https://ju.6miu.com/read-1299590.html
    最新回复(0)