找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9881|回复: 10
打印 上一主题 下一主题
收起左侧

NTC热敏电阻测温的Proteus仿真与Arduino源码

  [复制链接]
跳转到指定楼层
楼主
ID:149389 发表于 2018-5-25 20:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
仿真原理图如下(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, 下载次数: 158)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:361231 发表于 2019-5-18 01:09 | 只看该作者
楼主方便把.hex文件摘出来么
回复

使用道具 举报

板凳
ID:149389 发表于 2019-5-18 14:15 | 只看该作者
doudoudou123 发表于 2019-5-18 01:09
楼主方便把.hex文件摘出来么

你要的HEX文件, NTC.rar (8.13 KB, 下载次数: 27)
回复

使用道具 举报

地板
ID:361231 发表于 2019-5-19 18:02 | 只看该作者
weidoit 发表于 2019-5-18 14:15
你要的HEX文件,

谢谢啦,不过我昨天安装了Aduino,自己摘出来了
回复

使用道具 举报

5#
ID:619565 发表于 2019-10-5 20:44 | 只看该作者
arduino uno可以用吗?刚学这个
回复

使用道具 举报

6#
ID:640409 发表于 2019-11-12 14:32 | 只看该作者
NTC 10K   arduino +1602显示模块,可以正常显示工作
回复

使用道具 举报

7#
ID:566448 发表于 2020-3-3 20:32 | 只看该作者
楼主你的proteus工程打不开啊 我用的pro8
回复

使用道具 举报

8#
ID:566448 发表于 2020-3-3 21:14 | 只看该作者
楼主,求proteus的keil源工程文件,tks
回复

使用道具 举报

9#
ID:725882 发表于 2020-4-9 22:30 | 只看该作者
请问我下载了以后 打不开仿真怎么办
回复

使用道具 举报

10#
ID:725882 发表于 2020-4-9 22:34 | 只看该作者
怎么打开仿真啊
回复

使用道具 举报

11#
ID:725882 发表于 2020-4-10 08:17 | 只看该作者
楼主 怎么打开仿真啊 我下载了压缩包 打不开里面的仿真
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表