一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
創(chuàng)作
電子發(fā)燒友網>電子資料下載>電子資料>單像素溫度計開源分享

單像素溫度計開源分享

2022-11-10 | zip | 0.29 MB | 次下載 | 免費

資料介紹

描述

一像素溫度計

歡迎大家,今天我們正在創(chuàng)建一個單像素溫度計。

零件清單

我們將需要以下內容:

  • 1 x 共陽極 RGB LED
  • 1 x NTK100 熱敏電阻
  • 一些跳線
  • 一個阿杜諾
  • 和一個面包板

?

?
pYYBAGNsVDqAAsymAAEtxWeYN7s359.png
?

編碼

在我們構建電路之前,讓我們快速瀏覽一下代碼。

我的 LED 將從 0 攝氏度變?yōu)樗{色,42 攝氏度變?yōu)榧t色,在舒適的 21 攝氏度變?yōu)榫G色。

?

?
poYBAGNsVEaAPZRxAABwRtH0DkI250.png
?

代碼中的“定義”允許程序具有一定的靈活性,我將最高溫度設置為 42 攝氏度,將最低溫度設置為 0。我將使用 3 個 PWM 引腳 3、5 和 6 來控制“一個像素”。

#define minTemp 0   
#define maxTemp 42 
#define pinR 4     // Red PWM Pin       use 0 on ATTINY85 (pin 5) 
#define pinG 0     // Green PWM Pin     use 1 on ATTINY85 (pin 6) 
#define pinB 1     // Blue PWM Pin      use 4 on ATTINY85 (pin 3) 
#define pinT A1    // Thermistor Pin    use A1 on ATTINY85 (pin 7) 

聲明一些將在主循環(huán)中使用的全局變量。

// Variables to calculate Centigrade from the Thermistor Pin input value 
int Vo; 
float R1 = 10000, logR2, R2, T, c1 = 1.009249522e-03,  
c2 = 2.378405444e-04, c3 = 2.019202697e-07; // <<<---- Magic numbers apparently 

在 Setup 函數(shù)中,我設置了每個 in 將做什么。三個 PWM 引腳是 OUTPUT 引腳。熱敏電阻引腳為INPUT。

void setup() { 
// Init Serial 
//  Serial.begin(115200); 
// Init Pins 
 pinMode(pinR, OUTPUT); 
 pinMode(pinG, OUTPUT); 
 pinMode(pinB, OUTPUT); 
//Dont really need to do this for the UNO but I'm doing it anyway 
 pinMode(pinT, INPUT); 
} 

在我程序的主循環(huán)中,我根據(jù)熱敏電阻值計算攝氏度,然后將該數(shù)字轉換為 0 到 512 的范圍。然后我使用一些數(shù)學來獲得我的 LED 的紅色、綠色和藍色值。LED 的顏色每 100 毫秒更新一次。如果您希望它以較慢的速度更新,請將值更改得更高。

void loop() { 
// Calculate Centigrade : Got function from http://www.circuitbasics.com/arduino-thermistor-temperature-sensor-tutorial/ 
 Vo = analogRead(pinT); 
 R2 = R1 * (1023.0 / (float)Vo - 1.0); 
 logR2 = log(R2); 
 T = (1.0 / (c1 + c2*logR2 + c3*logR2*logR2*logR2)); 
 T = T - 273.15; 
// Map to the range outlined in minTemp and maxTemp 
 int temp = map(T,minTemp,maxTemp,0,512); 
// Assign a RGB value to the range 0 to 512 found in temp 
 int r = constrain(temp-256,0,255);             
 int g = constrain(256-abs(temp-256),0,255);    
 int b = constrain(256-temp,0,255);             
// PWM Write to get "faded colours" 
// Remove "255 -" if LED's are common Cathode 
 analogWrite(pinR,255 - r); 
 analogWrite(pinG,255 - g); 
 analogWrite(pinB,255 - b); 
// Print Temperature to Serial 
//  Serial.println(T); 
 delay(100); 
} 

將此草圖上傳到 Arduino,拔下它并從電路開始。

一個像素

我從 RGB LED 或 Pixel 開始

在最常見的陽極 RGB LED 上,長引腳是陽極。以陽極為 2nd pin 看 LED 時,第一個 Pin 為紅色;第三個是綠色,最后一個是藍色。

?
pYYBAGNsVE2AJfdyAAF03tLWJOM424.png
?
  • 我把 LED 放在面包板上
  • 連接紅色、綠色和藍色引腳和 3 個其他端子排上的三個 220 歐姆限流電阻。
  • 將一根引線連接到 LED 的陽極和 220 歐姆電阻器的 3 根引線。

我用紅色、綠色和藍色引線來表示,嗯,紅色綠色和藍色。我用白色做陽極

?
pYYBAGNsVFCAAPsIAAFO8zC0nf8227.png
?

溫度感應器

移動到溫度傳感器部分

  • 將熱敏電阻放在 2 個端子條之間
  • 然后是熱敏電阻一端和另一個接線板的 100k 電阻。
  • 連接熱敏電阻未連接端的引線和正軌。

當我在做正極引線時,我也會將陽極連接到正極軌,并準備 2 根正極和接地引線連接到 Arduino。我用白色表示正極,黑色表示接地

  • 將接地軌的引線連接到 100K 電阻器的另一端
  • 然后在兩部分相遇的地方連接一根引線,我用黃色表示輸入。
?
poYBAGNsVFOAJ2HvAAFEHqe0rWI994.png
?

Arduino聯(lián)播

現(xiàn)在可以快速輕松地將所有松散的引線連接到 Arduino

  • 白到5v
  • 黑去地
  • 黃色到 A0
  • 紅到 3
  • 綠色到 5 和
  • 藍色到 6
?
poYBAGNsVFeAf6AHAAEwFi5qb-c906.png
?

插入 Arduino

我們有一個 1 像素的溫度計

我用一個由熱膠和一管銀紙制成的擴散器覆蓋了 LED。

如果我在熱敏電阻上點燃火焰,您將看到 LED 變?yōu)榧t色,表示溫度為 42 或更高。

?
pYYBAGNsVF2AB9ZWAAFOAGDj6XQ777.png
?

如果我在熱敏電阻上放一個冷罐,LED 會變藍

?
poYBAGNsVGCAOrr5AAFnK7Vlhv0648.png
?

該程序還將溫度輸出到串行。

使用串行繪圖儀,當觸摸傳感器時,我可以看到火焰的閃爍和“冷罐”。

?
pYYBAGNsVGOAE1sHAACpvU6u2Vk678.png
?

這就是今天的內容。

?


評論

查看更多

下載排行

本周

  1. 1DD3118電路圖紙資料
  2. 0.08 MB   |  1次下載  |  免費
  3. 2AD庫封裝庫安裝教程
  4. 0.49 MB   |  1次下載  |  免費
  5. 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
  6. 1.12 MB   |  1次下載  |  免費
  7. 4網絡安全從業(yè)者入門指南
  8. 2.91 MB   |  1次下載  |  免費
  9. 5DS-CS3A P00-CN-V3
  10. 618.05 KB  |  1次下載  |  免費
  11. 6海川SM5701規(guī)格書
  12. 1.48 MB  |  次下載  |  免費
  13. 7H20PR5電磁爐IGBT功率管規(guī)格書
  14. 1.68 MB   |  次下載  |  1 積分
  15. 8IP防護等級說明
  16. 0.08 MB   |  次下載  |  免費

本月

  1. 1貼片三極管上的印字與真實名稱的對照表詳細說明
  2. 0.50 MB   |  103次下載  |  1 積分
  3. 2涂鴉各WiFi模塊原理圖加PCB封裝
  4. 11.75 MB   |  89次下載  |  1 積分
  5. 3錦銳科技CA51F2 SDK開發(fā)包
  6. 24.06 MB   |  43次下載  |  1 積分
  7. 4錦銳CA51F005 SDK開發(fā)包
  8. 19.47 MB   |  19次下載  |  1 積分
  9. 5PCB的EMC設計指南
  10. 2.47 MB   |  16次下載  |  1 積分
  11. 6HC05藍牙原理圖加PCB
  12. 15.76 MB   |  13次下載  |  1 積分
  13. 7802.11_Wireless_Networks
  14. 4.17 MB   |  12次下載  |  免費
  15. 8蘋果iphone 11電路原理圖
  16. 4.98 MB   |  6次下載  |  2 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191390次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183342次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81588次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73815次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65989次下載  |  10 積分