資源簡介
本設計仿真了電爐絲的溫度控制,采用51單片機控制繼電器的開或者關控制電爐絲的加熱,采用pt100溫度傳感器采集電爐絲的溫度,系統可按鍵設置電爐絲的溫度大小,通過溫度傳感器進行溫度反饋后控制繼電器的開和關的時間來控制電爐絲的溫度,使電爐絲溫度工作在設定的溫度值,達到穩定控制效果,本設計僅供參考,請勿他用

代碼片段和文件信息
#include?“DHT111.h“
#include?
#include?
sbit?DATA?=?P1^1;
sbit?SCK?=?P1^0;
/***********************************************************************************************************************************************************/
//SHT11程序
#define?noACK?0 //繼續傳輸數據,用于判斷是否結束通訊
#define?ACK???1?????????????//結束數據傳輸;
//地址??命令??讀/寫
#define?STATUS_REG_W?0x06???//000???0011????0
#define?STATUS_REG_R?0x07???//000???0011????1
#define?MEASURE_TEMP?0x03???//000???0001????1
#define?MEASURE_HUMI?0x05???//000???0010????1
#define?RESET????????0x1e???//000???1111????0
//寫字節程序
char?s_write_byte(unsigned?char?value)???
{?
unsigned?char?ierror=0;?
for?(i=0x80;i>0;i/=2)?????????????//shift?bit?for?masking?高位為1,循環右移
{?
if?(i&value)?DATA=1;??????????//和要發送的數相與,結果為發送的位
???? else?DATA=0;????????????????????????
???? SCK=1;??????????????????????????
???? _nop_();_nop_();_nop_();????????//延時3us?
???? SCK=0;
}
DATA=1;???????????????????????????//釋放數據線
SCK=1;????????????????????????????
error=DATA;???????????????????????//檢查應答信號,確認通訊正常
_nop_();_nop_();_nop_();
SCK=0;????????
DATA=1;
return?error;?????????????????????//error=1?通訊錯誤
}
//讀字節程序
char?s_read_byte(unsigned?char?ack)
//----------------------------------------------------------------------------------
{?
unsigned?char?ival=0;
DATA=1;???????????????????????????//釋放數據線
for(i=0x80;i>0;i>>=1)?????????????//高位為1,循環右移
{?
SCK=1;?????????????????????????
???? if(DATA)?val=(val|i);????????//讀一位數據線的值?
???? SCK=0;???????
}
DATA=!ack;????????????????????????//如果是校驗,讀取完后結束通訊;
SCK=1;????????????????????????????
_nop_();_nop_();_nop_();??????????//延時3us?
SCK=0;???
_nop_();_nop_();_nop_();???????
DATA=1;???????????????????????????//釋放數據線
return?val;
}
//啟動傳輸
void?s_transstart(void)
//?generates?a?transmission?start?
//???????_____?????????________
//?DATA:??????|_______|
//???????????___?????___
//?SCK?:?___|???|___|???|______
{?
??? DATA=1;?SCK=0;???????????????????//準備
??? _nop_();
?? SCK=1;
??? _nop_();
??? DATA=0;
??? _nop_();
?? SCK=0;?
?? ?_nop_();_nop_();_nop_();
??? SCK=1;
??? _nop_();
?? DATA=1;?????
?? _nop_();
??? SCK=0;?????
}
//連接復位
void?s_connectionreset(void)
//?communication?reset:?DATA-line=1?and?at?least?9?SCK?cycles?followed?by?transstart
//???????_____________________________________________________?????????________
//?DATA:??????????????????????????????????????????????????????|_______|
//??????????_????_????_????_????_????_????_????_????_????????___?????___
//?SCK?:?__|?|__|?|__|?|__|?|__|?|__|?|__|?|__|?|__|?|______|???|___|???|______
{?
unsigned?char?i;?
DATA=1;?SCK=0;????????????????????//準備
for(i=0;i<9;i++)??????????????????//DATA保持高,SCK時鐘觸發9次,發送啟動傳輸,通迅即復位
{?
SCK=1;
???? SCK=0;
}
s_transstart();???????????????????//啟動傳輸
}
//軟復位程序
char?s_softreset(void)
//?resets?the?sensor?by?a?softreset?
{?
unsigned?char?e
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-05-17?16:07??電爐絲控制\
?????文件??????128140??2017-05-17?14:16??電爐絲控制\Last?Loaded?pd.DBK
?????文件??????130642??2017-05-17?16:07??電爐絲控制\pd.DSN
?????文件????????1102??2017-05-17?16:07??電爐絲控制\pd.PWI
?????目錄???????????0??2017-05-17?14:17??電爐絲控制\project\
?????文件????????1187??2017-04-20?03:47??電爐絲控制\project\ADC0832.h
?????文件????????6629??2017-04-14?23:28??電爐絲控制\project\DHT111.c
?????文件?????????280??2017-04-14?20:09??電爐絲控制\project\DHT111.h
?????文件???????10757??2017-04-20?05:05??電爐絲控制\project\DHT111.LST
?????文件???????10192??2017-04-20?05:05??電爐絲控制\project\DHT111.OBJ
?????文件????????9732??2017-04-14?20:54??電爐絲控制\project\DS18B20.c
?????文件?????????218??2017-04-14?23:24??電爐絲控制\project\DS18B20.h
?????文件???????17240??2017-04-20?05:05??電爐絲控制\project\DS18B20.LST
?????文件????????5463??2017-04-20?05:05??電爐絲控制\project\DS18B20.OBJ
?????文件???????77758??2012-10-07?10:08??電爐絲控制\project\Last?Loaded?SHT11.DBK
?????文件????????4193??2017-05-17?14:07??電爐絲控制\project\lcd.c
?????文件????????1170??2017-05-17?13:40??電爐絲控制\project\lcd.h
?????文件????????7681??2017-05-17?14:07??電爐絲控制\project\lcd.LST
?????文件????????8124??2017-05-17?14:07??電爐絲控制\project\lcd.OBJ
?????文件??????????42??2017-05-17?14:07??電爐絲控制\project\lcd.__i
?????文件???????77758??2012-10-07?11:09??電爐絲控制\project\SHT11.DSN
?????文件?????????792??2012-10-07?15:57??電爐絲控制\project\SHT11.PWI
?????文件???????20042??2017-05-17?14:14??電爐絲控制\project\SHT11TEST
?????文件????????3118??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.C
?????文件???????11848??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.hex
?????文件??????????62??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.lnp
?????文件????????6120??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.LST
?????文件???????18013??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.M51
?????文件???????10901??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.OBJ
?????文件???????17136??2017-05-17?14:14??電爐絲控制\project\SHT11TEST.plg
?????文件???????74365??2017-05-17?14:17??電爐絲控制\project\SHT11TEST.uvgui.lifu
............此處省略8個文件信息
評論
共有 條評論