CC3200LaunchPad,如图,就不多评价了,性能啥的应该还可以,不过8266的性价比大家都懂(尤其是价格),一般玩wifi都玩8266,手里这块CC3200LaunchPad吃灰好久了,上边有个红外的温度传感器,TI的TMP006,感觉可以利用一下,做个温度计,省的吃灰。
材料 CC3200LaunchPadTMP1637数码管 杜邦线 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摄氏度,中间的小数点,你懂的,能看懂就行哈~
|
原创作品,未经权利人授权禁止转载。详情见转载须知。 举报文章
我要举报该内容理由
×