高电平唤醒

yangzh · 172次点击 · 5个月前

这里使用simple工程,验证配置高电平唤醒的测试,配置方式如下:

  1. 中断口配置成下拉模式

    PMU_PIN_MODE_PU


  2. static void pinmux_init(void)
    {
        // KEY
        pinmux_config(PIN_WAKEUP_0,  PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_WAKEUP_1,  PINMUX_GPIO_MODE_CFG);
        pmu_pin_mode_set(pin_wakeup_mask, PMU_PIN_MODE_PD);

        // UART0
        pinmux_config(PIN_UART0_TX, PINMUX_UART0_SDA_O_CFG);
        pinmux_config(PIN_UART0_RX, PINMUX_UART0_SDA_I_CFG);
        pmu_pin_mode_set(BITMASK(PIN_UART0_TX), PMU_PIN_MODE_PP);
        pmu_pin_mode_set(BITMASK(PIN_UART0_RX), PMU_PIN_MODE_PU);
       
        // UART1
        pinmux_config(PIN_UART1_TX,  PINMUX_UART1_SDA_O_CFG);
        pinmux_config(PIN_UART1_RX,  PINMUX_UART1_SDA_I_CFG);
        pmu_pin_mode_set(BITMASK(PIN_UART1_TX), PMU_PIN_MODE_PP);
        pmu_pin_mode_set(BITMASK(PIN_UART1_RX), PMU_PIN_MODE_PU);

        // LEDS
        pinmux_config(PIN_LED_0, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_1, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_2, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_3, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_4, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_5, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_6, PINMUX_GPIO_MODE_CFG);
        pinmux_config(PIN_LED_7, PINMUX_GPIO_MODE_CFG);
        pmu_pin_mode_set(pin_leds_mask, PMU_PIN_MODE_PP);
    }
  3. static void peripheral_init(void)
    {
        // Init GPIO
        gpio_open();

        // Wakeup Pin
        gpio_set_direction(pin_wakeup_mask, GPIO_INPUT);
        gpio_set_interrupt(pin_wakeup_mask, GPIO_BOTH_EDGE);
        gpio_set_interrupt_callback(gpio_handler);

        // LEDS
        gpio_write(pin_leds_mask, GPIO_HIGH);
        gpio_set_direction(pin_leds_mask, GPIO_OUTPUT);

        // wakeup
        pmu_wakeup_pin_set(pin_wakeup_mask, PMU_PIN_WAKEUP_HIGH_LEVEL);
        pmu_wakeup_pin_register_callback(gpio_handler, gpio_handler);

        // Init UART
        uart_open(HS_UART0, DEBUG_UART_BAUDRATE, UART_FLOW_CTRL_DISABLED, NULL);

    }
  4. 经过测试打印如下

    image.png

main_high_wakeup-202406018793.c
被收藏 0  ∙  0 赞  
加入收藏
点赞
0 回复  
善言善语 (您需要 登录 后才能回复 没有账号 ?)

请先登录网站