欢迎来到天天文库
浏览记录
ID:38629492
大小:27.00 KB
页数:3页
时间:2019-06-16
《按键驱动(简介)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、按键驱动(简介)1、按键驱动的功能具有按键初始化以及判断是否有按键这两种功能。2、函数介绍2.1voidhalButtonInit(void)作用:按键初始化输入:无输出:无代码解析:MCU_IO_INPUT(HAL_BOARD_IO_BTN_1_PORT,HAL_BOARD_IO_BTN_1_PIN,MCU_IO_TRISTATE);//将P0_1(S1按键)设定为普通功能,输入模式,并且选择三态模式#defineMCU_IO_INPUT(port,pin,func)MCU_IO_INPUT_PREP(port,p
2、in,func)#defineMCU_IO_INPUT_PREP(port,pin,func)st(P##port##SEL&=~BM(pin);//普通功能P##port##DIR&=~BM(pin);//端口输入switch(func){caseMCU_IO_PULLUP://如果选择上拉模式P##port##INP&=~BM(pin);//将端口的输入模式寄存器对应的引脚置0,表示由P2INP控制是上拉还是下拉P2INP&=~BM(port+5);//将对应的端口设定为上拉break;caseMC
3、U_IO_PULLDOWN://如果选择下拉模式P##port##INP&=~BM(pin);//将端口的输入模式寄存器对应的引脚置0,表示由P2INP控制是上拉还是下拉P2INP
4、=BM(port+5);//将对应的端口设定为下拉break;default://如果既不是上拉也不是下拉P##port##INP
5、=BM(pin);//设定为三态模式break;})2.1uint8halButtonPushed(void)作用:判断按键S1是否被按下输入:无输出:unsignedchar型代码解析:若按键S
6、1被按下则返回1,否则返回0。if(HAL_BUTTON_1_PUSHED()){HAL_DEBOUNCE(!HAL_BUTTON_1_PUSHED());//Goontillthebuttonisloosenv=HAL_BUTTON_1;}#defineHAL_BUTTON_1_PUSHED()(MCU_IO_GET(HAL_BOARD_IO_BTN_1_PORT,HAL_BOARD_IO_BTN_1_PIN))//对应的端口引脚位不变,其余位置0
此文档下载收益归作者所有