单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 193|回复: 0
收起左侧

基于51单片机铂电阻PT100温度计程序设计与仿真

[复制链接]
51mcu 发表于 2019-5-11 19:29 | 显示全部楼层 |阅读模式
       基于51单片机铂电阻PT100温度计程序设计与仿真,使用用铂热电阻PT100作为温度传感器,用LM324作为放大电路、ADC0804模数转换电路将其随被测温度变化的电压信号采集下来送单片机进行处理,将被测温度数据送4位一体共阴数码管显示器上显示出来。温度测量范围:-50度到200度。

仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)

基于51单片机铂电阻PT100温度计程序设计与仿真

基于51单片机铂电阻PT100温度计程序设计与仿真


#include <REGX51.H>
#include <intrins.h>

#define Disdata P0
#define discan P2

sbit adrd=P3^7;          //IO口定义
sbit adwr=P3^6;
sbit csad=P3^4;
sbit  DIN=P0^7;       //LED小数点控制

unsigned char j,k,ad_data,t;
unsigned char dis[4]={0x00,0x00,0x00,0x00};

unsigned char code dis_7[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x40};

unsigned char code  scan_con[4]={0xfe,0xfd,0xfb,0xf7};      // 列扫描控制字   

void delay(unsigned int t)  
{  
  for(;t>0;t--)
  {
    ;
  }  
}  //11微秒延时函数

void scan()  
{  
   char k;      

   for(k=0;k<4;k++)        //四位LED扫描控制      
   {        
     Disdata=dis_7[dis[k]];        
         if(k==1)
         {
           DIN=1;                                  //加入小数点
         }        
         discan=scan_con[k];
         delay(90);
         discan=0xff;      
   }   
}
void ad0804()
{
  P1=0xff;              //读取P1口之前先给其写全1
  csad=0;               //选通ADCS
  adrd=0;               //AD读使能
  ad_data=P1;                        //AD数据读取赋给P1口
  adrd=1;
  csad=1;               //关闭ADCS
  adwr=0;
}


  {
    ad0804();
        ad_compute();
        scan();
  }
}
...............................................完整源程序请下下载附件

0.png

全部资料51hei下载地址:
基于51单片机铂电阻PT100温度计程序设计与仿真.zip (76.61 KB, 下载次数: 10, 售价: 10 黑币)

评分

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

查看全部评分

回复

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛5群 联系QQ:125739409;技术交流QQ群174280738

Powered by 单片机教程网

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