• 大小: 890KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-20
  • 语言: 其他
  • 标签: k型  热电偶  ad  

资源简介

采集,protues仿真,51系列单片机,显示在1602上

资源截图

代码片段和文件信息

/********************************************************************
开发环境:Keil
单片机:AT89S52-24PU  晶振:12 MZ 
程序描述: K型热电偶+MAX6675,LCD1602 显示
designed by YING 
2012-08-29 21:16   完成
注:本程序只供学习参考之用,,请自行验证程序正确性及可靠性,请勿用于其它用途~~!!!
**************************定义头文件*****************************************/
#include 
#include
/*******************************************************************/
//lcd part
#define  LINE1     0
#define  LINE2     1
#define  LINE1_HEAD    0x80
#define  LINE2_HEAD    0xC0
#define  LCD_DELAY_TIME   40
#define  DATA_MODE    0x38
#define  OPEN_SCREEN    0x0C
#define  DISPLAY_ADDRESS   0x80
#define  CLEARSCREEN    LCD_en_command(0x01)
#define  HIGH   1
#define  LOW    0
#define  TRUE    1
#define  FALSE    0
#define  ZERO    0 
#define  MSB    0x80
#define  LSB    0x01
/*******************************************************************/
#define  LCDIO     P1
sbit LCD1602_RS=P2^0;   //设置RS 
sbit LCD1602_RW=P2^1;   //设置RW
sbit LCD1602_EN=P2^2;   //设置E
sbit MAX6675_SO=P2^4;    
sbit MAX6675_SCK=P2^5;    
sbit MAX6675_CS=P2^6; 
unsigned char data disdata[5];
unsigned int Value;
/********************************************************************/
void LCD_delay(void);//LCD延时函数
void LCD_en_command(unsigned char command);//LCD写指令
void LCD_en_dat(unsigned char temp);//LCD写数据
void LCD_set_xy( unsigned char x unsigned char y );//设置LCD显示位置
void LCD_write_char( unsigned xunsigned char yunsigned char dat);//向LCD写入一个字符
void LCD_write_string(unsigned char Xunsigned char Yunsigned char *s);//向LCD写入一串字符
void LCD_init(void);//LCD初始化函数
/********************************************************************/
void delay_nms(unsigned int n);//延时函数

/********************************************************************/
/***********************从MAX6675读取温度*********************************************/
unsigned int ReadMAX6675()   
{
 unsigned char count;
 MAX6675_CS=1; //关闭MAX6675
  //_nop_();
 //  _nop_();
 MAX6675_CS=0;//置低,使能MAX6675
 //_nop_();

 MAX6675_SCK=1;
 Value=0;
 //_nop_();
 //_nop_();
 for(count=16;count>0;count--) //获取16位MSB
 {
  MAX6675_SCK=0;  //sck置低
  Value=Value<<1;     //左移
    if(MAX6675_SO==1) //取当前值
   Value|=0x0001;
  else
   Value&=0xffff;
  MAX6675_SCK=1;
 //_nop_();
  //_nop_();
  //_nop_();
 //_nop_();
 }
 MAX6675_CS=1;  //关闭MAX6675
 return Value;
}
/***************************************************************************************/
/**************************温度值显示 **************************************************/
void tempdisp()  

  unsigned int temp;
  unsigned int TempValue;
  unsigned int testD2;
 unsigned int xiaoshu;
  
    TempValue=ReadMAX6675();//读取MAX6675 转换后的温度数值;   
   TempValue=TempValue<<1;         //去掉第15位
   TempValue=TempValue>>3;//去掉第0~2位   注意:实物MAX6675,这里要要右移4位,即TempValue=TempValue>>3;
   xiaoshu=TempValue*10;
   TempValue=TempValue/4;      //MAX6675最大数值为1023。75,而AD精度为12位,即2的12次方为40

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1154  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\header.htm

     文件     388352  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.htm

     文件      11726  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\16.LST

     文件      14048  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\STARTUP.LST

     文件       7064  2013-05-05 13:05  基于热电偶的测温系统设计\基于热电偶的测温系统设计\16.c

    .......     56188  2012-12-15 20:35  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602_uvopt.bak

    .......     13392  2012-04-25 00:18  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602_uvproj.bak

     文件      11800  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\16.OBJ

     文件        749  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\STARTUP.OBJ

     文件      11094  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602

     文件       6376  2009-05-07 14:37  基于热电偶的测温系统设计\基于热电偶的测温系统设计\STARTUP.A51

     文件      97441  2013-05-02 22:40  基于热电偶的测温系统设计\基于热电偶的测温系统设计\Last Loaded 1602.DBK

     文件      97441  2013-05-02 22:54  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.DSN

     文件       2236  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.hex

     文件         39  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.lnp

     文件      13860  2013-05-05 13:06  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.M51

     文件      20480  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\oledata.mso

     文件     361018  2005-03-10 21:27  基于热电偶的测温系统设计\IC说明书\at89S52中文手册.pdf

     文件     142080  2012-05-26 11:39  基于热电偶的测温系统设计\IC说明书\MAX6675ISA.pdf

     文件     261120  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\SMC1602A.pdf

     文件        516  2013-05-05 13:07  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.plg

     文件        768  2013-05-05 10:41  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.PWI

    .......     56184  2013-05-05 13:07  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.uvopt

    .......     13391  2012-09-01 08:41  基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.uvproj

     文件     150848  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image060.wmz

     文件       1855  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image062.wmz

     文件       1772  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image064.wmz

     文件       2358  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\filelist.xml

     文件         84  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image001.gif

     文件         84  2006-03-01 12:00  基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image002.gif

............此处省略69个文件信息

评论

共有 条评论