1连线图
1.1 元器件连线图
该系统由arduino板,红柄伺服,蓝柄伺服,led灯,温湿度传感器,液晶显示屏组成。
红柄代表空调开关,蓝柄代表暖气开关。温度实时显示在显示屏上,正常温度范围为23~27度,超出这个范围打开led灯表示警报,低于23度时打开暖气,高于27度时打开空调,形成一个恒温系统。
元器件与引脚的对应接口如下图:
2关键点
2.1 显示屏 LCD1602
LCD1602是一个2行16列的液晶显示屏,该显示屏分两种,上面这种是全线连接的普通款,这种的缺点是连线复杂,使用并行通信,需要很多数据线。
下面的是采用12C协议的显示屏,该显示屏的优点是连线少,使用串行通信,本次课的项目采用该款。
2.2 I2C协议
I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。这两根线一条是时钟线,一条是数据线。主器件用于启动总线传送数据,并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件。
2.3 I2C LCD1602
该显示屏有四个引脚,GND接地,VCC接高电平,SDA数据线一般接arduino板的A4引脚,SCL时钟线一般接arduino板的A5引脚。
2.4 I2C LCD1602使用的函数库
函数库是引用第三方编辑好的,驱动某一器件的库。该库将封装对元器件的底层驱动逻辑,引用者只需要使用该库的函数即可完成对元器件的操作。
LiquidCrystal_I2C Icd(0x27,20,4);//定义Icd对象,0027是该器件的地址,当I2C控制地址的A0,A1,A2三个引脚都悬空时,使用该地址。
lcd.init();//初始化
Icd.backlight();//开启背光灯
Icd.setCursor(1,0);//定义输出字符的坐标
lcd.print("Hello, Wokwi");//在当前坐标输出字符串
2.5 温湿度传感器
温湿度传感器又叫DHT,有11和22两种型号,其中22具有更高的精度的量程,本次项目使用DHT22。该传感器有四个引脚,实际只用到三个,NC不用,VCC高电平,GND接地,SDA是数据线。