outstanding1573 发表于 2014-6-23 18:07:04

【轻松玩蓝牙】序列之10:按键扫描

转载请注明出处和作者:版权所有!谢谢合作!!


  本节我们主要是从下面4个方面进行讲解:
    1.准备工作
    2.硬件部分
    3.软件部分
    4.效果展示


一、准备工作
  1.电脑一台;
  2.已经安装好了MDK;
  3.已经安装了nRF51_sdk软件;
  4.已经安装了nrfgostudio_win-32;
  5.以上已经确定安装成功了;
  6.蓝牙开发板。


二、硬件部分
  nRF51822 是 cortex m0 内核, 其串口通信也和其他的cortex m0 内核的处理器相同。并且在官方代码里给出了 uart 的参数配置库函数代码,这样使用起来非常容易上手。硬件连接如下图所示:
  1.LED灯的硬件部分
http://qfv8.com/data/attachment/forum/201406/23/174116c3169j3by6bpe6b6.png

  2.串口的硬件部分
  如下图所示: 青云 QY-nRF51822 开发板上,通过高质量的芯片 CP2102 实现 usb 转串口,下面是 nrf51822的芯片串口管脚分配:
  管脚 P0.08 连接 CTS
  管脚 P0.09 连接 TXD
  管脚 P0.10 连接 RTS
  管脚 P0.11连接 RXD,
http://qfv8.com/data/attachment/forum/201406/23/174118uy2k3hcgd7n3y3yf.png

http://qfv8.com/data/attachment/forum/201406/23/174119co7rgert0t08r1x7.png

  3.按键的硬件部分
  如下图所示,用户按键有两个:Button0和Button1,按键扫描用到了Button0按键,主要是通过不断的进行扫描来判断是否有按键按下,如果有按键按下,则LED3点亮。


http://qfv8.com/data/attachment/forum/201406/23/174119d9llzj2flsqps99o.png

http://qfv8.com/data/attachment/forum/201406/23/174120bu1gly42u2l4uxxc.png

三、软件部分
  1.有了前面一节的基础,那下面就比较简单了,我们只需要编写主函数和按键接口函数即可。
  2.主要包括下面3个文件:main.c、key.c和key.h。如下图所示
http://qfv8.com/data/attachment/forum/201406/23/174121xdx4nxsnexm64bxu.png

  3.主函数部分。如下图所示:
http://qfv8.com/data/attachment/forum/201406/23/174122luy5k3k33yttfy6b.png

http://qfv8.com/data/attachment/forum/201406/23/174123ibww8ui3h8h9l82j.png

  4.按键驱动源文件。如下图所示:
http://qfv8.com/data/attachment/forum/201406/23/174124cactlczyieldsuy0.png

http://qfv8.com/data/attachment/forum/201406/23/174124f2nlccaa8s2n2dvv.png

http://qfv8.com/data/attachment/forum/201406/23/174125awsr2zywrsu27zk2.png

  5.按键驱动头文件。如下图所示:


http://qfv8.com/data/attachment/forum/201406/23/174126vkkhqaphhsnidhp0.png

四、效果展示
  下面是下载之后效果验证,LED灯进行翻转说明系统在运行,串口通信显示正常,按下Button0时LED3会亮,放手就会灭。如下图所示:
http://qfv8.com/data/attachment/forum/201406/23/174127tn66gufofsn3szmi.png

http://qfv8.com/data/attachment/forum/201406/23/174926s63c5z7fafgfzfs4.jpg

http://qfv8.com/data/attachment/forum/201406/23/174947nixbqexx4e648ns5.png

http://qfv8.com/data/attachment/forum/201406/23/174115wmf7uu0o34tz0051.gif
页: [1]
查看完整版本: 【轻松玩蓝牙】序列之10:按键扫描