基于C8051F020的檔案庫溫濕度控制器設計
ORL A,#WRITE本文引用地址:http://www.j9360.com/article/159969.htm
MOV WRIT_ADC, A
SETB SM_BUSY
SETB STA
JB SM_BUSY, $
//寫溫度測量命令
CLR RW
MOV A,# MEAMURE_TEMP
ORL A,#WRITE
MOV WRIT_ADC, A
SETB SM_BUSY
SETB STA
JB SM_BUSY, $
//讀測得的溫度
SETB RW
MOV A, # CHIP_A
ORL A,#READ
MOV READ_ADC, A
SETB SM_BUSY
SETB STA
ACALL DELAY
MOV TEMPR, RECEIVE_BYTE
------------------
//寫濕度測量命令
------------------
//讀測得的濕度值
由于濕度測量和溫度測量程序相同,所以沒有給出,測量后的溫度數據和濕度數據分別放在TEMPR和HUMIR兩個寄存器中,然后經過線性修正程序和棒棒算法程序后控制繼電器的動作。
結束語
本文設計溫濕度調節系統,主器件為8051F020,從器件為I2C總線數字溫濕度傳感器SHT11,接口電路用I/O端口初始化程序啟動優先權交叉開關譯碼器把引腳分別配置成串行數據及串行時鐘,并配置基本輸入輸出。軟件設計則采用Bang-Bang控制算法,需高低兩個溫度設置點,溫度高于高點則關閉電源,低于低點則打開電源。控制程序含系統復位、初始化、A/D轉換和讀取數據轉換、Bang-Bang控制算法及輸出控制子程序。
評論