基于AT89S52單片機(jī)的溫度控制系統(tǒng)
2 系統(tǒng)流程圖
圖2為系統(tǒng)的流程圖,上電后先對系統(tǒng)進(jìn)行初始化,然后進(jìn)入while(1)循環(huán)語句,此循環(huán)體中包含兩個while語句,分別為while(state)和while(!state)。程序根據(jù)位變量state的值選擇進(jìn)入溫度設(shè)定狀態(tài)還是系統(tǒng)運(yùn)行狀態(tài)。在初始化的過程中將state的值設(shè)為1,因此剛開機(jī)系統(tǒng)進(jìn)入運(yùn)行狀態(tài)。運(yùn)行狀態(tài)下,系統(tǒng)不斷通過CD4051和AD7705聯(lián)合采集熱敏電阻兩端的電壓值,然后與設(shè)定電壓值對比,并通過MAX541定時輸出自動升溫電壓值,讓系統(tǒng)嚴(yán)格地在規(guī)定時間內(nèi)升到指定溫度。在循環(huán)的過程中還需要不斷地判斷bit變量kd的值,此變量為全局變量,由鍵盤中斷程序置1,同時鍵盤中斷程序還返回按鍵掃描值key,該值用來確定按下哪一個鍵。顯然從流程圖中可以看出,當(dāng)kd為0時,程序跳過按鍵程序模塊,當(dāng)kd為1時程序先判斷key值,然后運(yùn)行相對應(yīng)的按鍵功能程序。我們將某一鍵設(shè)為狀態(tài)切換鍵,當(dāng)按下此鍵時執(zhí)行程序state=!state,這樣就實(shí)現(xiàn)了狀態(tài)的切換。在進(jìn)入設(shè)定狀態(tài)后,MAX541的輸出停止改變。同時光標(biāo)不斷閃爍,提示使用者輸入溫度設(shè)定值。光標(biāo)閃爍程序和MAX541定時改變輸出值的程序都是采用定時器中斷來實(shí)現(xiàn)的。因?yàn)閮煞N功能處于不同的狀態(tài),同時為了避免中斷過多造成系統(tǒng)不穩(wěn)定,通過利用state變量的值和if語句,有效地將兩種功能用一個定時器來實(shí)現(xiàn)。進(jìn)入定時中斷程序后,當(dāng)state值為1時,即系統(tǒng)處于運(yùn)行狀態(tài)時,執(zhí)行定時改變MAX541輸出值的功能。當(dāng)state的值為0時,即系統(tǒng)處于設(shè)定狀態(tài)時,執(zhí)行光標(biāo)閃爍的功能。本文引用地址:http://www.ex-cimer.com/article/163442.htm
3 溫控儀的恒流源改進(jìn)
3.1 熱敏電阻
3.1.1 NTC熱敏電阻溫度特性方程
NTC熱敏電阻溫度特性方程用下列經(jīng)驗(yàn)公式描述:
式中:RT為T時的熱敏電阻阻值,RT0為T0時熱敏電阻阻值,從上述表達(dá)式可以看出電阻的變化與溫度的變化成指數(shù)關(guān)系,溫度升高,阻值迅速降低,靈敏度高是熱敏電阻測溫的主要優(yōu)點(diǎn)。
3.1.2 NTC熱敏電阻的熱電特性
熱敏電阻自身溫度變化1℃時,其電阻值的相對變化定義為熱敏電阻的熱溫度系數(shù),由熱敏電阻的經(jīng)驗(yàn)公式可以推出熱溫度系數(shù)a為:
從上式可以看出NTC熱敏電阻的溫度系數(shù)為負(fù),且與溫度變化有關(guān),溫度越低,溫度系數(shù)越高,靈敏度越高;反之則靈敏度越低。
評論