温度记录仪[一]·TMP117的趟坑

想要一个温度记录仪,起码要两通道吧(手持)或者八通道(台式)。

看了看TB的价格,哎,我们还是来学习一下温度记录仪的制作吧。

首先是最好用通用的探头,这样的话别的一些我的知识搞不定的坑和我的财力无法完成的加工都有人帮我开道了。

一通方案筛选下来,最后还是决定用热电偶测量+TMP117做冷端补偿,ADC目前来看是LTC244X。

The Board

因为是实验性的板子,基本电路就是直接抄的datasheet,然后的话退耦的104为了考虑到热容的问题,用了0402的封装。(不要在意我写错了I2C地址的事情,从看datasheet到画完只用了半小时)

另外没有焊接热焊盘。

The Code

emmm写得像一坨屎,有空再整理好扔GitHub吧。

The Shit

目前不太确定是怎么回事,但是两个无风环境下挨着放的TMP117N之间温差比较大,需要一定的“预热”。

[2020/04/14]重新测量了一下一致性,基本在19-20个LSB(0.15℃)的偏差,符合datasheet的±0.1℃的标准(TMP117N)。

[STM32]基于HAL库扫描I2C设备地址代码

主要两个作用:

  • 快速确认I2C通信的器件是否工作正常
  • 快速获得I2C地址

依赖:

  • HAL库
  • 配置好I2C和串口

CODE:

/* USER CODE BEGIN 2 */
uint8_t i=0;
HAL_StatusTypeDef status;
for(i=0;i<127;i++)
{
status=HAL_I2C_Master_Transmit(&hi2c1,i<<1,0,0,200);
if(status==HAL_OK)
{
printf("i2c addr:0x%02X is ok\r\n",i<<1);
}
else if(status==HAL_TIMEOUT)
{
printf("i2c addr:0x%02X is timeout\r\n",i<<1);
}
else if(status==HAL_BUSY)
{
printf("i2c addr:0x%02X is busy\r\n",i<<1);
}
}
printf("scan end\r\n");

当然还可以用STLink等调试器快速查看变量的方法做。

uint8_t i=0,temp;
HAL_StatusTypeDef status;
for(i=0;i<127;i++)
{
status=HAL_I2C_Master_Transmit(&hi2c1,i<<1,0,0,200);
if(status==HAL_OK)
{
temp=i;
__NOP();
}
}

实验室新生成长指南[2.3.6] · Layout基础之走线

欢迎进入《实验室新生成长指南》第三章:《Layout》

本篇是《实验室新生成长指南》第二章第三节第六篇:《Layout基础之走线》

整个2·3节将帮助新手快速建立电路系统Layout的一些基本知识储备和实战技巧。

更多关于 《实验室新生成长指南》 的介绍,请前往《实验室新生成长指南[0]·绪论》

更多关于 《实验室新生成长指南》 的文章,请前往《实验室新生成长指南·目录》

Continue Reading

实验室新生成长指南[2.3.5] · Layout基础之摆放

欢迎进入《实验室新生成长指南》第三章:《Layout》

本篇是《实验室新生成长指南》第二章第三节第五篇:《Layout基础之摆放》

整个2·3节将帮助新手快速建立电路系统Layout的一些基本知识储备和实战技巧。

更多关于 《实验室新生成长指南》 的介绍,请前往《实验室新生成长指南[0]·绪论》

更多关于 《实验室新生成长指南》 的文章,请前往《实验室新生成长指南·目录》

Continue Reading

实验室新生成长指南[1.1]·实验报告

欢迎进入《实验室新生成长指南》第一章:《基础》

本篇是《实验室新生成长指南》第一章第一篇·实验报告篇

更多关于 《实验室新生成长指南》 的介绍,请前往《实验室新生成长指南[0]·绪论》

更多关于 《实验室新生成长指南》 的文章,请前往《实验室新生成长指南·目录》

Continue Reading

实验室新生成长指南[2.3.4] · Layout基础之供电

欢迎进入《实验室新生成长指南》第三章:《Layout》

本篇是《实验室新生成长指南》第二章第三节第四篇:《Layout基础之供电》

整个2·3节将帮助新手快速建立电路系统Layout的一些基本知识储备和实战技巧。

更多关于 《实验室新生成长指南》 的介绍,请前往《实验室新生成长指南[0]·绪论》

更多关于 《实验室新生成长指南》 的文章,请前往《实验室新生成长指南·目录》

Continue Reading

实验室新生成长指南[2.3.3] · Altium Designer的器件封装管理

欢迎进入《实验室新生成长指南》第三章:《Layout》

本篇是《实验室新生成长指南》第二章第三节第三篇:《Altium Designer的器件封装管理》

整个2·3节将帮助新手快速建立电路系统Layout的一些基本知识储备和实战技巧。

更多关于 《实验室新生成长指南》 的介绍,请前往《实验室新生成长指南[0]·绪论》

更多关于 《实验室新生成长指南》 的文章,请前往《实验室新生成长指南·目录》

Continue Reading

实验室新生成长指南[2.2.5] · DFM,可制造性设计

欢迎进入《实验室新生成长指南》第二章:《硬件》

本篇是《实验室新生成长指南》第二章第二节第五篇:《DFM,可制造性设计》

整个2·2节将帮助新手快速建立设计电路系统的一些基本知识储备。

更多关于 《实验室新生成长指南》 的介绍,请前往《实验室新生成长指南[0]·绪论》

更多关于 《实验室新生成长指南》 的文章,请前往《实验室新生成长指南·目录》

Continue Reading