?? main.c
字號:
#include "REG51.h"
//系統參數配置
#define DELTA_T -20 //沸點偏移量
#define T_UNIT 10 //溫度單位,10表示1攝氏度
#define BOIL_POINT 1000 //1標準大氣壓下的沸點
#define ON 1 //打開電源或者電源處于開狀態
#define OFF 0 //關閉電源或者電源處于關狀態
//硬件配置
sbit POWER_CONTROL=P1^0; //P1.0口控制電源通斷
//外部函數聲明
int GetTemperature(void); //獲取當前溫度值
//內部函數聲明
void ControlPwr(unsigned char); //控制電源通斷
unsigned char ReadPwrStatus(void); //讀取當前電源狀態
//主程序
void main(void)
{
int i;
int t; //測量得到的當前水溫
while(1)
{
t = DELTA_T+GetTemperature(); //獲取當前測量溫度
if(t >= BOIL_POINT + DELTA_T) //水已沸騰
{
if(ReadPwrStatus() == OFF) //電源已經關閉
{
break; //跳出while循環
}
else
{
ControlPwr(OFF); //關閉電源
break; //跳出while循環
}
}
else //水還沒有開
{
if(ReadPwrStatus() == OFF) //電源還沒有開
{
ControlPwr(ON); //打開電源
}
for(i=0; i<20000; i++); //等待一段時間后開始下一周期
}
}
//完成燒水過程
while(1); //待機
}
//獲取當前水溫
int GetTemperature(void)
{
return(800);
}
//控制電源通斷
void ControlPwr(unsigned char status)
{
if(status == ON)
{
POWER_CONTROL = 0; //低電平打開電源
}
else
{
POWER_CONTROL = 1; //高電平關閉電源
}
}
//讀取電源通斷狀態
unsigned char ReadPwrStatus(void)
{
if(POWER_CONTROL == 0) //電源處于打開狀態
{
return ON;
}
else //電源處于關閉狀態
{
return OFF;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -