⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pt100_init.c

📁 温度仪表软件
💻 C
字号:
#include"reg52.h"

#include"my_type.h"
#include"function.h"  
#include"global_var.h"	   
#include"interface.h"

/****向EEPROM中写斜率K和内码值AD****/
void pt100_init()
{
	float *p;
	uchar i,addr;
	for(i=0;i<5;i++)
	{	
		p = &pt100_K[4*i];
		addr = 0x00+16*i;
		write_nbyte(0xa0,addr,(uchar*)p,16);  // 斜率K
		delay(50);
	}
	for(i=0;i<3;i++)
	{	
	    uint *s;
		s= &pt100_AD[8*i];
		addr = 0x50+16*i;	  // 每页EEPROM的个数用十六进制表示
		write_nbyte(0xa0,addr,(uchar*)s,16);   //内码值AD
		delay(50);
	}		
}
/*****从EEPROM中读四个字节****/
pt100_read4(uchar addr)
{
	float temp4;
	float *p;
	read_nbyte(0xa1,addr,(uchar*)p,4);
	temp4=*p;	
	return temp4;
}
/*****从EEPROM中读两个字节****/
pt100_read2(uchar addr)
{
	uint temp2;
	uint *s;
	read_nbyte(0xa1,addr,(uchar*)s,2);
	temp2 = *s;	
	return temp2;
}
/*****将内码值转换成温度值****/
void pt100_shift(ad_num)
{		  
	uint a,b,i;
	float c;
	for(i=0;i<17;i++)
	{
		a=pt100_read2(0x50+2*i);
		b=pt100_read2(0x52+2*i);
		c=pt100_read4(0x00+4*i);
		if(a<ad_num && ad_num<b)
	   		{
	  		 	ad_temp=(ad_num-a)*c+(-50)+10*i;
	   	   	}
	  }
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -