前言

温度传感器测量芯片DIE温度。通过触发START任务来启动TEMP。当温度测量完成后,一个数据将生成事件,并且可以从临时寄存器读取测量结果为了保证测量的准确性,必须在选择HFCLK晶体振荡器作为时钟。当温度测量完成后,将温度模拟电路的电源降下来可以节省电能。TEMP只支持一次性操作,这意味着必须显式地开始使用每个TEMP度量一开始的任务。

本节将介绍nRF51系列SOC片上温度传感器的使用,并通过串口把采集到的芯片内部的温度打印到PC端nRF51的ADC设计得比较简单,用于配置的寄存器只要一个。它有几个可配置的部分:

相关寄存器介绍

示例详解

基于硬件平台:nrf51822ek_tm开发板。

本示例所用的最小系统板原理图:

  1. 工程创建:

    1. 打开KEIL,新建一个空工程:Project->NewuVisionProject

工程名为nrfxx-temp确认后按下图选择芯片为nrf51822_xxAA->ok

在弹出的对话框中勾选CMSIS中的CORE;Device中的Startup(后面有nrf51Series字样的);在nrf_device中勾选nrf_gpio, nrf_uart, nrf_temp, nrf_delay,nrf_err并在nrf_Libraries中勾选app_error,nrf_assert模块。

OK之后工程自动生成如下代码:

新建一个空白文档,保存为main.c,并加入工程中:

配置工程,选择使用MicroLIB库,可以减小程序体积:

加入NRF51定义,并选择化等级3,可以减小程序体积,但仿真运行时可能会出现与代码顺序不一致现象:

调试工具选择J-LINK,并将接口设置为SW口勾选下载程序后自动复位及运行:

  1. 工程代码

    1. OK之后在man.c中加入如下代码:

把程序编译,可以看到串口助手中打印了以下输出内容:

关于nrf51xx及flash的更详细介绍可以参看《nRF51822_RM_v3.0.1.pdf》或https://infocenter.nordicsemi.com/index.jsp。

OK,本期实验完成!下期见!同时如果大家有什么疑问或是有想了解的其它内容,也欢迎大家留言!!最后喜欢这个公众号的同学们记得加关注了,会有不定期技术干货推出!!

文中源码资料下载,在公众号里给十三发消息:

下载|一起学nRF51xx 14

关注十三公众号

一起学nRF51xx 14 -  temp相关推荐

  1. 一起学nRF51xx 15 - spis

    前言 SPIS是一个从SPI,它与EasyDMA一起支持与外部的主SPI超低功耗串行通信.EasyDMA使得SPIS交互无需CPU的介入.在提高数据传输效率的同时还减轻了CPU的负担. SPIS即是S ...

  2. 一起学nRF51xx 23 -  s130蓝牙API介绍

    张十三 前言 通过前面的章节,我们学习了nrf51的蓝牙协议栈(S130)的基本使用,对S130协议栈的实现原理有了一定了解,也认识到了S130协议栈的强大,那么协议栈中的API接口具体是什么功能?各 ...

  3. 一起学nRF51xx 22 -  实现一个具体SVC调用功能的demo

    前言 上一节<一起学nRF51xx 21 -  蓝牙项目工程的初始化流程解读>讲到nordic的蓝牙协议栈是通过SVC来实现APP与协议栈之间通接口调用的,那么如何来实现一个具体SVC调用 ...

  4. 一起学nRF51xx 21 -  蓝牙项目工程的初始化流程解读

    前言 本节主要工作是对<一起学nRF51xx 20 -  移植SDK蓝牙例程>章节程序进行解读. 示例详解 基于硬件平台:nrf51822ek_tm开发板. 本示例所用的最小系统板原理图: ...

  5. 一起学nRF51xx 20 -  移植SDK蓝牙例程

    前言 Nordic公司为nRF51系列SOC提供有完整的开发SDK包,里面有大量的例程,通过学习官方例程并最终应用到自己项目工程中是一个比较高效的学习与项目开发技巧,本节将与大家一起完成蓝牙例程的移植 ...

  6. 一起学nRF51xx 19 -  移植SDK普通接口例程

    一起学nRF51xx 19 -  移植SDK普通接口例程 张十三 前言 Nordic公司为nRF51系列SOC提供有完整的开发SDK包,里面有大量的例程,通过学习官方例程并最终应用到自己项目工程中是一 ...

  7. 一起学nRF51xx 18 -  蓝牙协议栈烧录

    前言 在讲协议栈前我们先简要介绍一下NORDIC公司的协议栈特点: 1 协议栈和应用程序代码没有链接时间依存性,并可独立编译和更新 2 堆栈受运行时保护,应用程序访问受限或被阻止 3 堆栈为 100% ...

  8. 一起学nRF51xx 17 -  lpcomp

    前言 nRF51系列SOC内部低功耗比较器(LPCOMP)的使用.此比较器类似于用运放搭建的比较器,当VIN+输入的电压大于VIN-输入的电压,输出结果为高电平:当VIN+输入的电源小于VIN-输入的 ...

  9. 一起学nRF51xx 16 -  adc

    前言 nRF51的ADC设计得比较简单,它有几个可配置的部分: 1)PSEL(pinselection):nRF51系列芯片有8个模拟输入通道,并且这几个脚是固定的,不能像GPIO那样可以重新映射.P ...

最新文章

  1. python经典练习题
  2. DL之DNN:利用DNN【784→50→100→10】算法对MNIST手写数字图片识别数据集进行预测、模型优化
  3. Linux的vim编辑器中的翻页命令
  4. aix内核是linux,查看Linux及AIX硬件信息方法总结
  5. 不要再纠结卷积的公式啦!0公式深度解析全连接前馈网络与卷积神经网络!
  6. MTK 驱动开发(48)---ARM 看门狗机制
  7. oracle执行大sql,mybatis连接oracle执行sql语句出现ORA
  8. python的输入来源包括啥_Python中使用 input 函数来获取输入
  9. 项目管理第九章项目资源管理
  10. c++ vector随机排序
  11. 基于USB数据采集卡(DAQ)与IO模块的热电偶温度采集
  12. PyQt设置右下角弹窗
  13. Deep Stream Ai落地--初体验
  14. Encoded password does not look like BCrypt 异常问题
  15. constrain用法_constrain是什么意思_constrain的翻译_音标_读音_用法_例句_爱词霸在线词典...
  16. 丙烯颜料试用心得和丙烯绘画入门
  17. Win11安卓子系统(WSA)怎么卸载?
  18. 复利/单利计算程序进度
  19. css实现html透明效果
  20. 计算机的随想作文500字,新年随想作文500字(通用5篇)

热门文章

  1. 自定义ToolBar
  2. slimphp中间件调用流程的理解
  3. loadrunner目录分析
  4. 必须要调整心态,积极起来,不能再偷懒
  5. AUTOCAD自学教程一
  6. UA PHYS515A 电磁理论V 电磁波与辐射9 简单辐射系统
  7. Linux TCPIP内核参数优化
  8. VC++ 视图类基本编程
  9. android ADT学习总结
  10. Linux DMA 驱动学习总结