【开发板不吃灰运动】CC3200LaunchPad改装红外温度计

DIY 创客作品 CC3200
DLGG创客DIY
发布时间: 2019-05-21
阅读: 2553

CC3200LaunchPad,如图,就不多评价了,性能啥的应该还可以,不过8266的性价比大家都懂(尤其是价格),一般玩wifi都玩8266,手里这块CC3200LaunchPad吃灰好久了,上边有个红外的温度传感器,TI的TMP006,感觉可以利用一下,做个温度计,省的吃灰。


 

材料

CC3200LaunchPad
TMP1637数码管
杜邦线
microUSB电源线

开发环境

energia,好像是TI推出的,类似arduino的开发环境,库函数很好下载添加,简单粗暴实现功能


 


硬件连接

注意下载部分需要条线,不知道TI为啥设计这么复杂繁琐

数码管模块连线参考上图注释

没找到CC3200的库,随便用个红色板子画了个示意图:


红外温度传感器:

这个比较复杂,回头我单开一篇聊聊这个传感器,这个设计里我实用的是目标问题,因为感觉和环境温度比较接近

TMP006,TI说这款芯片的介绍是世界上首款单片数字IR MEMS温度传感器,首次为便携式消费电子产品实现非接触温度测量功能。


优势:

1. 体积小

2. 支持-40℃至+125℃宽范围工作温度,测温范围远远超过这个范围,因为红外测温测的是目标温度和环境温度的温差,只要温差电势不超过允许值(5.12mV)就可以

3. 红外测量速度块,这个是我说的,热敏电阻温度变化比较慢,比如从温暖的室内到寒冷的室外,热敏电阻需要一段时间才能准确测量环境温度,红外温度传感器原理不同,所以速度的会快。

测量了一段时间室内温度,和DHT11和DHT21(AM2301)对比,“Object Temperature”目标温度更接近对照传感器。


软件:

调用了这几个库函数
#include <Wire.h>
#include "Adafruit_TMP006.h"
#include "TM1637.h"

Float数据转换显示部分:
  dis_temp = (int16_t)objt;
  ListDisp[0] = dis_temp/10;
  ListDisp[1] = dis_temp%10;
  dis_temp = (int16_t)(objt*10);
  ListDisp[2] = dis_temp%10;
  dis_temp = (int16_t)(objt*100);
  ListDisp[3] = dis_temp%10;

  tm1637.display(0,ListDisp[0]);
  tm1637.display(1,ListDisp[1]);
  tm1637.point(1);
  tm1637.display(2,ListDisp[2]);
  tm1637.display(3,ListDisp[3]);

结构:

找了个翻盖的盒子,正好放下两个东西,竖起来打开盖子,正好可以平稳放在桌面上,再给板子沾个安全带,防止立在桌面上倒下滚出来



最终显示效果:



室温23.94约24摄氏度,中间的小数点,你懂的,能看懂就行哈~



原创作品,未经权利人授权禁止转载。详情见转载须知 举报文章

点赞 (1)
DLGG创客DIY
评论(0)

登录后可评论,请 登录注册

相关文章推荐
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回

我要举报该内容理由

×
请输入您举报的理由(50字以内)