1. 程式人生 > 實用技巧 >590【畢設課設】基於微控制器爐溫溫度恆溫控制系統設計

590【畢設課設】基於微控制器爐溫溫度恆溫控制系統設計

【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

測溫,溫度可設定,繼電器電路,數碼管顯示。此係統用於控溫,當設定溫度高於實際溫度時,繼電器吸合加熱單元加熱,當實際溫度大於設定溫度時,繼電器釋放。

#define uchar unsigned char
#define uint   unsigned int
#define DATAPORT P0                    
sbit RED_ALARM=P1^0;
sbit WRITE_ALARM=P1^1;
sbit GREEN_ALARM=P1^2;          		 //綠色指示燈
sbit BLUE_ALARM=P1^3;
sbit P1_4=P1^4;                		 //時鐘調整
sbit P1_5=P1^5;                 		 //時鐘加
sbit P1_6=P1^6;                  	 //時鐘減
sbit DQ = P1^7;   
sbit   L1=P2^3;
sbit   L2=P2^2;
sbit   L3=P2^1;
sbit   L4=P2^0;            		 //定義ds18b20通訊埠 
sbit  sda=P2^4;                       //IO口定義
sbit  scl=P2^5;              			 //LCD使能訊號
sbit ad_busy=P3^2;              		 //adc中斷方式介面
sbit  OUT=P3^7;
sbit anjian=P2^6;//
sbit  RELAY=P2^7;//

 /******延時程式*******/ 

 void delay2(unsigned int m)  

  {  
unsigned int i,j;  
for(i=m;i>0;i--)  
for(j=60;j>0;j--);  
	}  



uchar ad_data;                  		//ad取樣值儲存					
uchar seconde;                	//定義並初始化時鐘變數
uchar minite;
uchar hour;
uchar mstcnt=0;
uchar temp1,temp2,temp,xs;        		//溫度顯示變數
uchar t,set;
uchar K;
bit ON_OFF=0;
bit outflag;
bit write=0;

void init_timer0(void);   //定時器初始化
void keyscan(void );      //鍵盤掃描子程式
void set_adj(void);
void inc_key(void);
void dec_key(void);
void delay_18B20(unsigned int i);//
void Init_DS18B20(void) ;
uchar ReadOneChar(void);
void WriteOneChar(unsigned char dat);
void ReadTemperature(void);
void ad0809(void);
void playalarm(void); 
void display();
void DelayMs(uint ms)
  {
   uchar t;
   while(ms--)for(t=0;t<8;t++);
  }