GPIO - input/output
本 demo 主要介绍 GPIO 0 输出和 GPIO 1 输入功能。
硬件连接
使用杜邦线将 GPIO 0 和 GPIO 1 引脚连接。
软件实现
更详细的代码请参考 examples/peripherals/gpio/gpio_input_output
1board_init();
board_init
中开启时钟
1gpio = bflb_device_get_by_name("gpio");
2
3bflb_gpio_init(gpio, GPIO_PIN_0, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);
4bflb_gpio_init(gpio, GPIO_PIN_1, GPIO_INPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);
配置 GPIO 0 为 GPIO_OUTPUT 功能,GPIO 1 为 GPIO_INPUT 功能。
1while (1) {
2 bflb_gpio_set(gpio, GPIO_PIN_0);
3 printf("GPIO_PIN_1=%x\r\n", bflb_gpio_read(gpio, GPIO_PIN_1));
4 bflb_mtimer_delay_ms(2000);
5
6 bflb_gpio_reset(gpio, GPIO_PIN_0);
7 printf("GPIO_PIN_1=%x\r\n", bflb_gpio_read(gpio, GPIO_PIN_1));
8 bflb_mtimer_delay_ms(2000);
9}
bflb_gpio_set(gpio, GPIO_PIN_0)
将 GPIO 0 引脚置位bflb_gpio_read(gpio, GPIO_PIN_1)
读取 GPIO 1 引脚电平bflb_gpio_reset(gpio, GPIO_PIN_0)
将 GPIO 0 引脚置 0
编译和烧录
参考 环境搭建
实验现象
打印 GPIO 1 引脚电平。