标题:
基于STM32固件库KEY检测的学习经验
[打印本页]
作者:
1394604803
时间:
2017-11-15 21:03
标题:
基于STM32固件库KEY检测的学习经验
今天研究了一天按键检测,终于弄出来了,分享一下学习历程,菜鸟编写,愿与大家共同讨论不足之处
说明:
程序使用的是普中 PZ6806L 开发板,本人也是菜鸟一个,刚学 STM32 没多久,本人愿将学习经验与大家分享,程序多有不足之处,敬请谅解!
程序中的 LED0 就是硬件上的 LED1
经验总结:1、定义函数的时候要写参数类型,就算没有参数,也要写 void,如果不写的话在头文件声明函数的时候会警告。2、按键检测时,如果引脚外部有上拉电阻时,如 KEY_UP,
则引脚要配置成下拉输入模式(下拉电阻好像是 40K) ,检测按下为高电平;如果直接接地,如 K1、K2、K3,则要配置成上拉输入模式,检测按下为低电平,具体原因可以查看芯片内
部电路框图
硬件连接图:
0.png
(184.05 KB, 下载次数: 42)
下载附件
2017-11-15 21:17 上传
0.png
(239.21 KB, 下载次数: 42)
下载附件
2017-11-15 21:17 上传
单片机源程序如下:
/********************************************************************************
* file : main.c
* author : GongWang
* version : V1.0
* date : 2017-11-12
* Description : 用按键 KEY_UP控制 LED0,按一次对应的 LED亮或灭
********************************************************************************/
#include "stm32f10x.h"
#include "led.h"
#include "key.h"
/*****************************************************************************
* Function Name : main
* Input : None
* Output : None
* Return : None
* Description : 主函数
********************************************************************************/
int main(void)
{
/*LED的引脚配置*/
Led_Config();
/*LED的初始化,高电平关*/
Led_Iint();
/*按键 KEY_UP 引脚配置*/
Key_Config();
while( 1 )
{
if(Key_Test() == true)
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
基于STM32固件库KEY检测.pdf
(193.7 KB, 下载次数: 13)
2017-11-15 20:55 上传
点击文件名下载附件
菜鸟分享经验
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1