标题:
STM32学习—按键输入实验
[打印本页]
作者:
qinqin
时间:
2015-6-9 00:29
标题:
STM32学习—按键输入实验
电路如图所示:
?按键与STM32连接原理图
这里需要注意的是:KEY0、KEY1 和 KEY2 是低电平有效的,而 WK_UP 是高电平有效的,并且外部都没有上下拉电阻,所以需要在 STM32 内部设置上下拉。
?重新建立一个工程,在HARDWARE 文件夹下新建一个 LED 文件夹、BEEP 文件夹 和 KEY文件夹,用来存放按键输入实验相关的代码。
?在HARDWARE 下新增 LED、BEEP、KEY文件夹
然后我们打开 USER 文件夹下的 USER.uvproj工程,按新建按钮新建一个文件,然后保存在 HARDWARE->led 文件夹下面,保存为led.h,在该文件中输入如下代码:
?led.h
保存 led.h 代码,然后我们按同样的方法新建一个 led.c 文件,也保存在 led 文件夹 下面。在led.c 中输入如下代码:
?led.c
再按新建按钮新建一个文件,然后保存在 HARDWARE->beep 文件夹下面,保存为beep.h,在该文件中输入如下代码:
?beep.h
保存 beep.h 代码,然后我们按同样的方法新建一个 beep.c 文件,也保存在 beep 文件夹下面。在beep.c 中输入如下代码:
?beep.c
再按新建按钮新建一个文件,然后保存在 HARDWARE->key 文件夹下面,保存为key.h,在该文件中输入如下代码:
?key.h
保存 key.h 代码,然后我们按同样的方法新建一个 key.c 文件,也保存在 key 文件夹下面。在 key.c中输入如下代码:
?按键初始化程序
?按键检测+ 功能处理程序
将 led.h 文件 和 beep.h 文件复制粘贴到 key 文件夹下,
?key文件夹下添加led.h和beep.h
我们把 led.c 、beep.c 和 key.c 加入到 HARDWARE里面,如图所示:
?将led.c、beep.c和key.c添加到HARDWARE中
回到主界面,在 USER.c 中输入如下代码:
?user.c
然后按编译,编译工程,得到结果如图:
?编译结果
代码实现功能:
WK_UP 控制蜂鸣器,按一次叫,再按一次停;KEY2控制 DS0,按一次亮,再按一次灭; KEY1 控制DS1,效果同 KEY2;KEY0 则同时控制 DS0 和 DS1,按一次,他们的状态就翻转一次。
作者:
夕阳毛毛
时间:
2020-3-3 13:13
有仿真图吗
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1