久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: NTC熱敏電阻測溫的Proteus仿真與Arduino源碼 [打印本頁]

作者: weidoit    時間: 2018-5-25 20:51
標題: NTC熱敏電阻測溫的Proteus仿真與Arduino源碼
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)




arduino源碼:
  1. /*********************************************************
  2. *         Rt= 10K                RES=4700
  3. *   GND----/\/\/\/\----/\/\/\/\----VCC=5V
  4. * Rt = R *EXP(B*(1/T1-1/T2))
  5. * 對上面的公式解釋如下:
  6. *
  7. * 1.Rt 是熱敏電阻在T1溫度下的阻值;
  8. * 2.R是熱敏電阻在T2常溫下的標稱阻值;
  9. * 3.B值是熱敏電阻的重要參數;
  10. * 4.EXP是e的n次方;
  11. * 5.這里T1和T2指的是K度即開爾文溫度,K度=273.15(絕對溫度)+攝氏度;
  12. *********************************************************/

  13. #include <math.h>
  14. #define RES 4700
  15. #include <Wire.h>
  16. #include <LiquidCrystal_I2C.h>
  17. LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

  18. double Water_temp;
  19. void setup(){
  20.   Serial.begin(9600);
  21.   lcd.init();                      // initialize the lcd
  22.   // Print a message to the LCD.
  23.   lcd.backlight();

  24.   lcd.clear();
  25.   lcd.setCursor(0, 0);
  26.   lcd.print("Temperature ");
  27. }



  28. void loop(){
  29.   double AD_val=analogRead(0);        //0-1023的范圍

  30.   double GetVoltage=(AD_val/1023)*5.0;        //采樣電壓值

  31.   // 歐姆定律 Rt/RES=GetVoltage/(5.0-GetVoltage),電流一致

  32.   double Rt=GetVoltage*RES/(5.0-GetVoltage);
  33.   //熱力學絕對溫度
  34.   //T1=1/(ln(Rt/R) /B + 1/T2   )
  35.   // Serial.println( 1/(  log(Rt/RES) /3000 + 1/(25+273.15)   ));
  36.   Water_temp=1/(log(Rt/10000) /3950 + 1/(25+273.15))-273.15;
  37.   if(Water_temp>-100.0)
  38.   {

  39.     Serial.print("RES= ");
  40.     Serial.print(RES);
  41.     Serial.print(" RT=  :");
  42.     Serial.println(Rt);
  43.     Serial.print("The temperature is :");  
  44.     Serial.print(Water_temp);
  45.     Serial.println(" ~C");

  46.     lcd.setCursor(0, 1);
  47.     lcd.print("T1=");
  48.     lcd.print(Water_temp);
  49.     lcd.print("  ");
  50.   }
  51.   else
  52.   {
  53.     Serial.println("Error! check sensor!");
  54.   }
  55.   delay(1000);
  56. }

復制代碼
全部資料51hei下載地址:
NTC測溫實驗.rar (37.16 KB, 下載次數: 176)

作者: doudoudou123    時間: 2019-5-18 01:09
樓主方便把.hex文件摘出來么
作者: weidoit    時間: 2019-5-18 14:15
doudoudou123 發表于 2019-5-18 01:09
樓主方便把.hex文件摘出來么

你要的HEX文件, NTC.rar (8.13 KB, 下載次數: 32)

作者: doudoudou123    時間: 2019-5-19 18:02
weidoit 發表于 2019-5-18 14:15
你要的HEX文件,

謝謝啦,不過我昨天安裝了Aduino,自己摘出來了
作者: dar_cj    時間: 2019-10-5 20:44
arduino uno可以用嗎?剛學這個
作者: peter2100    時間: 2019-11-12 14:32
NTC 10K   arduino +1602顯示模塊,可以正常顯示工作
作者: 雷布斯    時間: 2020-3-3 20:32
樓主你的proteus工程打不開啊 我用的pro8
作者: 雷布斯    時間: 2020-3-3 21:14
樓主,求proteus的keil源工程文件,tks
作者: dame666    時間: 2020-4-9 22:30
請問我下載了以后 打不開仿真怎么辦
作者: dame666    時間: 2020-4-9 22:34
怎么打開仿真啊
作者: dame666    時間: 2020-4-10 08:17
樓主 怎么打開仿真啊 我下載了壓縮包 打不開里面的仿真
作者: cxbi_123    時間: 2025-5-19 11:56
可以同時輸出的代碼,用跑馬燈代替輸出
作者: cxbi_123    時間: 2025-5-19 11:57
可以輸出的代碼,跑馬燈代表輸出
#include <math.h>         //包含數學庫
//熔絲位配置如下:
//外置晶體 16MH 主頻 低位 9F 高位 C9
//外置晶體 12MH 主頻 低位 9F 高位 C9
//內置RC  8MH  主頻 低位 D4   高位 C9


// 定義跑馬燈編號:

int LED0=6;//定義數字接口8為跑馬燈電源
int LED1=5;// 定義數字接口為1號跑馬燈
int LED2=10;// 定義數字接口為2號跑馬燈
int LED3=11;// 定義數字接口為3號跑馬燈
int LED4=12;// 定義數字接口為4號跑馬燈
int LED5=13;// 定義數字接口為5號跑馬燈
int LED6=14;// 定義數字接口為6號跑馬燈
int LED7=15;// 定義數字接口為7號跑馬燈
int LED8=0;// 定義數字接口為8號跑馬燈
int LED9=1;// 定義數字接口為9號跑馬燈
int LED10=16;// 定義數字接口2為10號跑馬燈
int LED11=3;// 定義數字接口3為11號跑馬燈
int LED12=4;// 定義數字接口4為12號跑馬燈

unsigned long time; //定義變量 time 類型

void setup()
{

int i; //定義變量
for(i=0;i<=21;i++)
pinMode(i,OUTPUT);  //設置0~21 引腳為輸出模式

int j;
for(j=0;j<=21;j++){  //全滅
digitalWrite(j,1);   
  }

digitalWrite(LED0,LOW); //開啟電源

}


// 使用循環函數重復運行
void loop() {
Serial.begin(115200); // 打開串口,設置速率為115200 bps 注:開啟串口,會使 0 和 1 號邏輯端口失效(7、8號跑馬燈不亮),原因不名!
/*
Serial.print("程序已運行");
time = millis();  // 賦值運行時間給變量time
Serial.print(time/1000); // 輸出程序運行時間
Serial.println("秒");
Serial.end(); // 關閉串口

delay(10000); // 等待10秒

digitalWrite(LED1,LOW); // 第一個跑馬燈亮
digitalWrite(LED2,0); //第二個跑馬燈亮
digitalWrite(LED3,0); //第三個跑馬燈亮
digitalWrite(LED4,0); //第四個跑馬燈亮
digitalWrite(LED5,0); //第五個跑馬燈亮
digitalWrite(LED6,0); //第六個跑馬燈亮
digitalWrite(LED7,0); //第七個跑馬燈亮
digitalWrite(LED8,0); //第八個跑馬燈亮
digitalWrite(LED9,0); //第九個跑馬燈亮
digitalWrite(LED10,0); //第十個跑馬燈亮
digitalWrite(LED11,0); //第十一個跑馬燈亮
digitalWrite(LED12,0); //第十二個跑馬燈亮

delay(5000); // 等待5秒

digitalWrite(LED1,HIGH); //第一個跑馬燈滅
digitalWrite(LED2,1); //第二個跑馬燈滅
digitalWrite(LED3,1); //第三個跑馬燈滅
digitalWrite(LED4,1); //第四個跑馬燈滅
digitalWrite(LED5,1); //第五個跑馬燈滅
digitalWrite(LED6,1); //第六個跑馬燈滅
digitalWrite(LED7,1); //第七個跑馬燈滅
digitalWrite(LED8,1); //第八個跑馬燈滅
digitalWrite(LED9,1); //第九個跑馬燈滅
digitalWrite(LED10,1); //第十個跑馬燈滅
digitalWrite(LED11,1); //第十一個跑馬燈滅
digitalWrite(LED12,1); //第十二個跑馬燈滅
*/
// if (Serial.available() > 0)  { // 只在收到數據時發送數據
   
double Digital_Value=analogRead(0);   //讀取串聯電阻上的電壓值(數字量)
double Voltage_Value=(Digital_Value/1023)*5.00;//換算成模擬量的電壓值
double Rt_Value=(3.3-Voltage_Value)/Voltage_Value*100;  //計算出熱敏電阻的阻值
Serial.println(1/(log(Rt_Value/10)/3000 + 1/( 25 + 273.15)) - 273.15,2); //計算所感知的溫度并發送到串口
Serial.print("\t\r\n"); //\t是制表,\r\n 回車換行
Serial.println("ok");
Serial.print("\t\r\n"); //\t是制表,\r\n 回車換行
delay(10000);   //十秒刷新一次
//  }
}





歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: www日韩高清| 久色视频在线 | h在线观看 | 欧美激情在线观看一区二区三区 | 一区二区三区四区五区在线视频 | 国产精品一区二区免费看 | 999视频| 色网在线播放 | 亚洲精品在线视频 | 国产精品久久久久久婷婷天堂 | 成人国产精品一级毛片视频毛片 | 九九精品在线 | 国产精品久久久久久久久婷婷 | 国产美女一区 | 午夜精品久久久久久久 | 三级在线免费观看 | 国产精品福利久久久 | 精品国产欧美在线 | 欧洲一区二区三区 | 国产一区二区三区久久久久久久久 | 久久久久国产成人精品亚洲午夜 | 亚洲欧美中文日韩在线v日本 | 久久狠狠 | 久久久久久国产 | www.久久| 国产成人免费 | 午夜久久久久久久久久一区二区 | 久久国产精品-国产精品 | 久久精品久久久久久 | 欧美一区二区三区在线观看 | 日韩综合在线视频 | 国产精品久久久久久久久久不蜜臀 | 日韩欧美亚洲一区 | 中文字幕日韩欧美一区二区三区 | 亚洲精品乱码久久久久久久久 | 免费激情网站 | 亚洲精品自拍视频 | 亚洲国产精品视频 | 亚洲视频欧美视频 | 亚洲一区二区三区四区五区午夜 | 99热精品6|