标题: 基于STM32固件库KEY检测的学习经验 [打印本页]

作者: 1394604803    时间: 2017-11-15 21:03
标题: 基于STM32固件库KEY检测的学习经验
今天研究了一天按键检测,终于弄出来了,分享一下学习历程,菜鸟编写,愿与大家共同讨论不足之处

说明:
程序使用的是普中 PZ6806L 开发板,本人也是菜鸟一个,刚学 STM32 没多久,本人愿将学习经验与大家分享,程序多有不足之处,敬请谅解!
程序中的 LED0 就是硬件上的 LED1
经验总结:1、定义函数的时候要写参数类型,就算没有参数,也要写 void,如果不写的话在头文件声明函数的时候会警告。2、按键检测时,如果引脚外部有上拉电阻时,如 KEY_UP,
则引脚要配置成下拉输入模式(下拉电阻好像是 40K) ,检测按下为高电平;如果直接接地,如 K1、K2、K3,则要配置成上拉输入模式,检测按下为低电平,具体原因可以查看芯片内
部电路框图
硬件连接图:


单片机源程序如下:

  1. /********************************************************************************
  2. * file : main.c
  3. * author : GongWang
  4. * version : V1.0
  5. * date : 2017-11-12
  6. * Description : 用按键 KEY_UP控制 LED0,按一次对应的 LED亮或灭
  7. ********************************************************************************/
  8. #include "stm32f10x.h"
  9. #include "led.h"
  10. #include "key.h"
  11. /*****************************************************************************
  12. * Function Name : main
  13. * Input : None
  14. * Output : None
  15. * Return : None
  16. * Description : 主函数
  17. ********************************************************************************/
  18. int main(void)
  19. {
  20. /*LED的引脚配置*/
  21. Led_Config();
  22. /*LED的初始化,高电平关*/
  23. Led_Iint();
  24. /*按键 KEY_UP 引脚配置*/
  25. Key_Config();
  26. while( 1 )
  27. {
  28. if(Key_Test() == true)
  29. ……………………

  30. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
基于STM32固件库KEY检测.pdf (193.7 KB, 下载次数: 13)









欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1