当前位置:网站首页>arduino+DS18B20温度传感器(蜂鸣器报警)+LCD1602显示(IIC驱动)
arduino+DS18B20温度传感器(蜂鸣器报警)+LCD1602显示(IIC驱动)
2022-07-06 09:19:00 【麓南的风】
实验器材
arduino mega2560(uno及其他系列同)
ds18b20温度传感器(防水封装)
lcd1602A (节省io口,外接pcf8574,四线驱动)
杜邦线若干
介绍
ds18b20
特点:适应电压范围宽,3.0~5.5v,单线传输数据,可以多个温度传感器并在三线上,多点测量温度,短时间正负极接反时,不会烧毁芯片,但不能正常工作。
测量温度范围:-55℃~+125℃
可编程分辨率,9位到12位,分别为0.5℃,0.25℃,0.125℃,0.0625℃。默认12位精度
ds18b20,这里外接了端子适配器,如果没有端子适配器在数据端外接1k欧左右的上拉电阻即可(模块上贴片电阻也只用了472欧)
调用库,简单实现功能程序如下
其他库添加后引用同理
代码段
#include <OneWire.h>
#include <LiquidCrystal_I2C.h> //4针pcf8574驱动lcd1602库
#include <DallasTemperature.h> //ds18b20库
#define buzzpin 6 //定义蜂鸣器6号引脚
#define Onewire_bus 7 //ds18b20连接7引脚
OneWire oneWire(Onewire_bus);
DallasTemperature sensors(&oneWire);
LiquidCrystal_I2C lcd(0x27,16,2); //LCD1602的I2C地址为0x27,LCD1602为两行,每行16个字符的液晶显示器
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
lcd.init(); // 执行两次LCD的I2C通讯初始化
delay(20);
lcd.init();
delay(20);
lcd.backlight();//点亮LCD背光灯
}
void loop() {
// put your main code here, to run repeatedly:
delay(50);
Serial.print("获取温度:"); // 发送几个字
sensors.requestTemperatures(); //获取温度
Serial.println(sensors.getTempCByIndex(0));
lcd.setCursor(0, 0); // 将LCD光标移动到第一位0,0(列,行)
lcd.print("temp:");
lcd.print(sensors.getTempCByIndex(0)); // 传感器温度值
lcd.print(" C"); // 继续前面语句写入
if(sensors.getTempCByIndex(0)>40) //温度大于40报警
{
digitalWrite(buzzpin,HIGH);
}
else
{
digitalWrite(buzzpin,LOW);
}
delay(10);
}
测试
这里没有放入水中,简单触摸温度测试
串口显示
若lcd1602IIC地址不是0x27,可以通过下边程序查找一下,串口发送地址
#include <Wire.h>
void setup() {
Serial.begin (115200);
while (!Serial) { }
Serial.println ();
Serial.println ("I2C scanner.Scanning ...");
byte count = 0;
Wire.begin();
for (byte i = 8; i < 120; i++) {
Wire.beginTransmission (i);
if (Wire.endTransmission () == 0) {
Serial.print ("Found address: ");
Serial.print (i, DEC); Serial.print (" (0x");
Serial.print (i, HEX); Serial.println (")");
count++; delay (1); // maybe unneeded?
} // end of good response
} // end of for loop
Serial.println ("Done.");
Serial.print ("Found ");
Serial.print (count, DEC);
Serial.println (" device(s).");
} // end of setup
void loop() {}
(来源csdn,找不到大佬原文章了,侵删)
遇到问题
IIC地址错误
焊接的pcf8574转接板后面有个电位计,如果串口正常显示数值,lcd未显示可以调整一下电位计,lcd亮度调整后得以显示
边栏推荐
- [algorithm] sword finger offer2 golang interview question 7: 3 numbers with 0 in the array
- Implementation of Excel import and export functions
- 167. Sum of two numbers II - input ordered array - Double pointers
- Database operation of tyut Taiyuan University of technology 2022 database
- 162. Find peak - binary search
- Dark chain lock (lca+ difference on tree)
- 2-year experience summary, tell you how to do a good job in project management
- MySQL Database Constraints
- [algorithm] sword finger offer2 golang interview question 8: the shortest subarray with a sum greater than or equal to K
- Pride-pppar source code analysis
猜你喜欢

Music playback (toggle & playerprefs)

《软件测试》习题答案:第一章
![[algorithm] sword finger offer2 golang interview question 6: sum of two numbers in the sorting array](/img/d5/4bda133498f71ae9fd7a64c6cba8f0.png)
[algorithm] sword finger offer2 golang interview question 6: sum of two numbers in the sorting array

Alibaba cloud side: underlying details in concurrent scenarios - pseudo sharing

View UI Plus 发布 1.3.0 版本,新增 Space、$ImagePreview 组件
![[algorithm] sword finger offer2 golang interview question 12: the sum of the left and right sub arrays is equal](/img/11/ee0628a68542236fc641966579a31a.png)
[algorithm] sword finger offer2 golang interview question 12: the sum of the left and right sub arrays is equal

十分钟彻底掌握缓存击穿、缓存穿透、缓存雪崩

Detailed explanation of balanced binary tree is easy to understand

Differences and application scenarios between MySQL index clock B-tree, b+tree and hash indexes
![[algorithm] sword finger offer2 golang interview question 13: sum of numbers of two-dimensional submatrix](/img/17/e7c9bfa867030af97eb66a7932c7e3.png)
[algorithm] sword finger offer2 golang interview question 13: sum of numbers of two-dimensional submatrix
随机推荐
Abstract classes and interfaces
View UI plus released version 1.2.0 and added image, skeleton and typography components
Application architecture of large live broadcast platform
Detailed explanation of balanced binary tree is easy to understand
Application architecture of large live broadcast platform
Record: the solution of MySQL denial of access when CMD starts for the first time
Exception: ioexception:stream closed
【话题终结者】
阿里云微服务(二) 分布式服务配置中心以及Nacos的使用场景及实现介绍
What are the advantages of using SQL in Excel VBA
Differences and application scenarios between MySQL index clock B-tree, b+tree and hash indexes
Problems and solutions of robust estimation in rtklib single point location spp
Fundamentals of UD decomposition of KF UD decomposition [1]
KF UD decomposition pseudo code implementation advanced [2]
Tyut Taiyuan University of technology 2022 introduction to software engineering examination question outline
记录:初次cmd启动MySQL拒接访问之解决
RTKLIB: demo5 b34f. 1 vs b33
分支语句和循环语句
[rtklib] preliminary practice of using robust adaptive Kalman filter under RTK
MySQL backup -- common errors in xtrabackup backup