打印
[嵌入式linux]

【原创】【轻松玩蓝牙】序列之13:RTC和比较器

[复制链接]
1016|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
outstanding|  楼主 | 2014-6-26 18:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
转载请注明出处和作者:版权所有!谢谢合作!!

  本节我们主要是从下面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灯的硬件部分

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


  3.按键的硬件部分
如下图所示,用户按键有两个:Button0Button1


  4.RTC硬件部分。如下图所示:
  RTC硬件引脚为P0.26P0.27,外接低速外部晶振32.768kHz

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

  3.主函数部分。如下图所示:

  4.RTC源文件。如下图所示:




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

四、效果展示
  下面是下载之后效果验证,串口通信显示正常,RTC计数时间125ms控制led翻转一次,翻转24次接近3000ms,也就是3s的时候进行模拟比较报警,报警控制另一个led灯点亮报警。如下图所示:


                                                                                                                                                                                                                           
                                                                                                                                                                                                                       

相关帖子

沙发
renqinglei| | 2014-6-26 18:48 | 只看该作者

使用特权

评论回复
板凳
outstanding|  楼主 | 2014-6-26 19:19 | 只看该作者
renqinglei 发表于 2014-6-26 18:48

;P

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:QQ:2550634286   可接项目和毕设等                   可以出售各种LED灯,控制类产品和                   控制类方案。

378

主题

4015

帖子

11

粉丝