GD32F303固件库开发(6)----GPIO输入函数说明

概述本章主要讲解gpio输入检测。
硬件准备这里准备了2块开发板进行验证,分别是gd32303c_start开发板。
样品申请https://www.wjx.top/vm/wfghgpf.aspx#
管脚配置在gd32303c_start开发板中,按键的管脚为pa0。
led管脚如下所示。
对gpio管脚进行初始化配置。
/* 使能gpiob时钟*/ rcu_periph_clock_enable(rcu_gpiob); /*设置pb14、pb15为推挽输出 */ gpio_init(gpiob, gpio_mode_out_pp, gpio_ospeed_50mhz, gpio_pin_14); gpio_init(gpiob, gpio_mode_out_pp, gpio_ospeed_50mhz, gpio_pin_15); /* 设置pb14、pb15为输出为0*/ gpio_bit_reset(gpiob, gpio_pin_14); gpio_bit_reset(gpiob, gpio_pin_15); /* 使能gpiob时钟*/ rcu_periph_clock_enable(rcu_gpioa); /*设置pa0为浮空输入 */ gpio_init(gpioa, gpio_mode_in_floating, gpio_ospeed_50mhz, gpio_pin_0);gpio_input_bit_get()函数读取指定的gpio管脚电平状态。
例如按下按键led1灭le2亮,松开按键led1亮le2灭。
while(1){ if(set == gpio_input_bit_get(gpioa, gpio_pin_0))//按下led1灭le2亮 { gpio_bit_write(gpiob, gpio_pin_15,set); gpio_bit_write(gpiob, gpio_pin_14,reset); } else//松开led1亮le2灭 { gpio_bit_write(gpiob, gpio_pin_15,reset); gpio_bit_write(gpiob, gpio_pin_14,set); } delay_1ms(10); }gpio_input_port_get()函数读取整个gpio的电平状态。 例如按下按键led1灭led2亮,松开按键led1亮le2灭。
while(1){ uint16_t get_gpioa_num = 0; get_gpioa_num=gpio_input_port_get(gpioa); if(get_gpioa_num & 0x0001)//按下led1灭le2亮 { gpio_bit_write(gpiob, gpio_pin_15,set); gpio_bit_write(gpiob, gpio_pin_14,reset); } else//松开led1亮le2灭 { gpio_bit_write(gpiob, gpio_pin_15,reset); gpio_bit_write(gpiob, gpio_pin_14,set); } delay_1ms(10); }gpio_output_bit_get()函数读取输出管脚电平状态。
例如按下按键led2亮,如果led1是亮的,那么切换为灭的状态,如果为灭切换为亮状态。 设置断点查看会更加准确。
while(1){ uint16_t get_gpioa_num = 0; get_gpioa_num=gpio_input_port_get(gpioa); if(get_gpioa_num & 0x0001)//按下led1灭le2亮 { gpio_bit_write(gpiob, gpio_pin_15,set); if(gpio_output_bit_get(gpiob, gpio_pin_14)==set)//如果灯亮,则灯灭 gpio_bit_write(gpiob, gpio_pin_14,reset); else//如果灯灭,则灯亮 gpio_bit_write(gpiob, gpio_pin_14,set); } else//松开led1亮le2灭 { gpio_bit_write(gpiob, gpio_pin_15,reset); } delay_1ms(10); }}gpio_output_port_get()函数读取全部gpio管脚输出电平状态。


汽车电子7637-5a测试案例分析
恩智浦与广汽研究院、大陆集团达成战略合作,打造全球领先的新一代智能网联产品
关于嵌入式技术的89个相关术语
2023年首个重量级MCU线下研讨会狂飚而来吃“芯”指南
水泥工厂 3D 可视化大屏,全流程数字孪生破局产线低效运转!
GD32F303固件库开发(6)----GPIO输入函数说明
EXAR发布四通道输出可编程电源管理系统-XRP7724
中兴安全手机通过公安部智能手机型移动警务终端权威检测
电池使用保养的五个误区
AI决策影响人类 必须尽快进行修正
“源计划”演讲,Qualcomm Halo 无线充电技术都涉及哪些?
如何将AXI VIP添加到Vivado工程中
曙光自研分布式存储产品ParaStor获得青睐
中国的“谷歌”?百度有哪些黑科技?
光伏逆变器介绍
减持计划公布后,长电科技股价不断下跌
SIA联盟论剑浦江,中国传感器产业发展迎合IoT多元需求
展会回顾 | 成都国际工业博览会 虹科的精彩表现!
LED节能灯比白炽灯更省电的原因分析
用RT5350 OpenWrt Linux,制作物联网风幕机