步驟1:電子產品
對于此項目,您需要:
1 Arduino UNO
1 LM35溫度傳感器
1串行LCD 16X2
1面包板
一些跳線。
步驟2:連接LCD,LM35和Arduino UNO
我將使用的LCD是帶有I2C的串行LCD。
連接LCD
VCC連接在面包板上的+ ve紅色導軌上
GND連接到-ve面包板上的藍色導軌
SDA連接到Arduino上的SDA
SCL連接到Arduino上的SCL
有關如何操作的更多詳細信息連接它,請訪問我之前的指示文章:
https://www.instructables.com/id/How-to-connect-as 。..
連接LM35
VCC連接在面包板上的+ ve紅色導軌上
GND連接到面包板上的-ve藍色導軌上
*記住正確連接VCC和GND,否則LM35會加熱到300度甚至更高。
我對LM35以及如何在
https://www.instructables.com/id/How-to-display-tem 。..
上連接它,現在我們可以準備草圖了。 。..。..。.
步驟3:草繪
草繪不是復制和粘貼兩個草圖一樣簡單,我必須對其進行修改以適應兩個設備并告訴Arduino從傳感器獲取數據并將其顯示在LCD上。但是變量和庫保持不變。
此指令中有一個壓縮的草圖副本,您可以根據需要進行調整。
我首先定義了庫需要液晶顯示器。有關如何在Arduino庫文件夾中加載庫的更多詳細信息,請遵循以下說明中的說明:
https://www.instructables.com/id/How-to-connect-as 。..
//加載庫
#include
#include
#include
我定義了LCD和LM35所需的變量
我添加了tempf變量,以幫助顯示華氏溫度
//LCD
#define I2C_ADDR 0x27//定義PCF8574A所在的I2C地址
#define BACKLIGHT_PIN 3
#define En_pin 2
#define Rw_pin 1
#define Rs_pin 0
#define D4_pin 4
#define D5_pin 5
#define D6_pin 6
#define D7_pin 7
//為LM35溫度傳感器定義變量
浮點溫度;//定義臨時浮動變量
float tempf;//定義華氏浮點變量
int sensor = 0;//傳感器中間引腳在模擬引腳0上
然后我使用以下行初始化LCD:
//初始化LCD
LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin ,D4_pin,D5_pin,D6_pin,D7_pin);
在Void設置中,我告訴Arduinio我正在使用16X2 LCD,打開背光燈并打印一些不會改變的行。
void setup(){
lcd.begin(16,2);//將LCD定義為2列16列
//打開背光
lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE);
lcd.setBacklight(HIGH);
lcd.setCursor(0,0);//轉到第一列(第0列)和第一行(第0行)
lcd.print(“ Temp C =”);//在光標位置打印
lcd.setCursor(0,1);//轉到第一列(第0列)和第二行(第1行)
lcd.print(“ Temp F =”);//在光標位置打印
}
在Void循環中,我將從傳感器讀取溫度,將其更改為攝氏溫度并將其顯示在第一行,然后再次更改到華氏度并顯示在第二行。每5秒重復一次該過程
void loop(){
temp = AnalogRead(sensor);//將模擬輸出分配給temp
temp = temp * 0.48828125;//將電壓轉換為攝氏度----- 0.48828125 = [(5V * 1000)/1024] 10 tempf =(temp * 1.8)+32;//從攝氏溫度轉換為溫度
lcd.setCursor(8,0);//將光標移動到第1行的位置
lcd.print(temp);//以攝氏度為單位打印溫度
lcd.setCursor(8,1);//將光標移動到第2行的位置
lcd.print(tempf);//以華氏度打印溫度
delay(5000);//等待5秒鐘
}
-
溫度傳感器
+關注
關注
48文章
2940瀏覽量
156025 -
LM35
+關注
關注
2文章
83瀏覽量
18108 -
Arduino
+關注
關注
188文章
6469瀏覽量
186958
發布評論請先 登錄
相關推薦
評論