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

📄 headfile.h

📁 用单片机进行温度控制
💻 H
字号:
#include<AT89X52.H>
#include<intrins.h>

#define uint  unsigned int 
#define uchar unsigned char


/****************************************************
          Definition used for the LCD device
****************************************************/
#define Busy      0x80											//LCD忙闲检测标志字
#define LCD_Data  P0											//LCD数据口

//命令端口定义
sbit    LCD_RW  = P2^7;
sbit    LCD_RS  = P2^0;
sbit    LCD_E   = P2^1;

void    delay(uint);											//小延时函数
void    WriteDataLCD(uchar WDLCD);								//LCD写数据函数
void    WriteCommandLCD(uchar WCLCD,BuysC);						//LCD写命令函数
void    LCDInit(void);											//LCD初始化
void    DisplayOneChar(uchar X, uchar Y, uchar DData);			//显示单个字符
void    DisplayListChar(uchar X, uchar Y, uchar code *DData);	//显示字符串
uchar   ReadDataLCD(void);										//读LCD数据
uchar   ReadStatusLCD(void);									//读LCD状态
void    Delay5Ms(void);											//5ms精确延时
void    Delay400Ms(void);										//400ms精确延时
/****************End of LCD Definition**************/



/****************************************************
           Definition used for DS18B20
****************************************************/
void  Init_DS18B20(void);			//1820初始化
void  WriteOneChar(uchar dat);		//1820写函数
uchar ReadOneChar(void);			//1820读函数
uint  ReadTemperature(void);		//1820读温度函数

/*************End of DS18B20 Definition*************/



/****************************************************
          Definition used for other function
****************************************************/
#define WavePerCircle  250			//每周期波数
#define GainP          80			//Kp
#define GainI          32			//Ki
#define GainD          32			//Kd

//PID计算用中间变量
static  uint  ErrorFormer1 = 0;
static  uint  ErrorFormer2 = 0;
static  uint  ErrorPresent = 0;

//端口定义
sbit    TestTemp  = P2^2;			//温度检测口
sbit    HeatDrive = P1^4;			//驱动信号口

//函数定义
void    InitSys(void);				//系统初始化
void    KeyScan(void);				//键盘扫描
void    DisplaySetTemp(void);		//显示设定温度函数
void    DisplayNowTemp(void);		//显示当前温度函数
void    ReadTemp(void);				//读温度函数
uint    PIDFunction(void);			//PID计算函数

⌨️ 快捷键说明

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