前面一直学习的是数字控制(按键)、AD采集(电位器)、发声(蜂鸣器)、发光(多彩LED),那么接下来会有一大波高级技能正在逼近......接下来讲解温湿度传感器,这属于高级技能,小伙伴们认真点! 原理大放送: 先介绍下今天的主角LM75B,这是一款支持I2C接口的测温芯片,应用电路十分简洁,仅仅需要一颗去耦电容就可以工作。另外它具有3个可配置的逻辑地址管脚,使得同一总线上可同时连接8个器件而不发生地址冲突。 芯片特性如下:
关于芯片的实现原理这里不再啰嗦,太简(fu)单(za)了!我们一般只需注意典型的应用原理图,以及编程注意事项即可。原理图如下: 有两个地方要注意:芯片采用I2C接口,记得加上拉电阻(这个是局部电路图,上拉电阻在其他地方有);配置芯片地址后,编程时确保地址与硬件设置一致! 代码示例: #include "inttypes.h" #include "Wire.h" #include "lm75.h" TempI2C_LM75 termo = TempI2C_LM75(0x48,TempI2C_LM75::nine_bits); void setup() { Serial.begin(9600); } void loop() { Serial.print("The current temperature is: "); Serial.println(termo.getTemp()); delay(1000); } 下载程序后,打开串口监视器,会显示当前的温度信息。用手触摸LM75芯片,温度会发生变化,现象如下: 附件: |