PIC單片機數字式測溫計設計及仿真
在理論設計的基礎上,利用Protues軟件對其進(jìn)行仿真調試和測試,并利用調試和測試的結果來(lái)驗證理論設計的可靠性和正確性。
0引言
在日常生活經(jīng)常要用到溫度的檢測及控制,傳統的測溫元件有熱電偶和熱電阻,而熱電偶和熱電阻測出的一般是電壓,在轉換成對應的溫度,需要比較多的硬件支持,硬件電路很復雜,軟件調試也復雜,制作成本高。而且測出來(lái)的溫度精度也沒(méi)有技術(shù)成熟的溫度傳感器高。
本文基于PIC單片機來(lái)設計數字式測溫計,直接采用數字式溫度傳感器DS18B20,用單片機對18B20進(jìn)行控制,來(lái)進(jìn)行測溫。顯示部分可用lcd1602,單片機可直接驅動(dòng)lcd1602顯示溫度,硬件較簡(jiǎn)單,穩定。DS18B20采用單總線(xiàn)技術(shù),容易擴展,并且具有轉換速度快,轉換精度高,可由片機直接讀出溫度并顯示出來(lái)等優(yōu)點(diǎn)。
一、設計目標和思路
本文采用PIC16F877的USART異步通信模式,可廣泛應用于單片機與PC機,以及單片機與單片機之間的通信。USART接口由RC6、RC7這兩只引腳構成。RC6用于數據的發(fā)送,RC7用于接收數據。
當單片機需要通過(guò)USART發(fā)送數據時(shí),只需將所發(fā)送數據送入數據緩沖寄存器TXERG,然后系統會(huì )自動(dòng)將TXREG寄存器內容送入發(fā)送移位寄存器TSR,接著(zhù)系統會(huì )根據所設置的波特率脈沖信號,通過(guò)RC6引腳從高位到低位依次發(fā)送出去。當系統將TXERG寄存器內容加載到TSR中時(shí),會(huì )自動(dòng)將中斷發(fā)送標志位TXIF置位,根據程序決定是否進(jìn)入中斷。而當單片機需要通過(guò)USART接受數據時(shí),通過(guò)RC7引腳將數據依次送入接收移位寄存器RSR中,當收到一個(gè)停止位時(shí),移位寄存器RSR就把收到的8位數據自動(dòng)送入接收數據緩沖器RCREG中。在接收數據緩沖器RCREG收到一個(gè)穩定的數據后,接收中斷標志位RCIF將自動(dòng)置位,根據程序決定是否進(jìn)入中斷。
二、原理結構圖
本文利用PIC16F877和DS18B20傳感器設計了測溫計,其包含主控器部分、溫度顯示部分、傳感測試部分和按鍵設計部分。
基于PIC16F877的測溫計原理電路圖結構如圖1所示。
其中,電源部分的S1為復位按鈕它在被按得時(shí)候斷開(kāi)放開(kāi)后自動(dòng)閉合,在其斷開(kāi)又閉合的瞬間使整套電路中各芯片的供電電壓實(shí)現從5V降到0V再升到5V的過(guò)程,從而達到復位的目的。輸入電容C2一般情況不接,但當集成穩壓器遠離整流、濾波電路時(shí)應接入一個(gè)0.33μf的電容器,它的作用是改善紋波和抑制輸入的瞬時(shí)過(guò)電壓,保證78L05的輸入與輸出間的電壓差不會(huì )超過(guò)允許值。輸出電容C3一般不采用大容量的電解電容器,只要接入0.1μf的電容器便可以改善負載的瞬態(tài)響應。但是,為了減小輸出的紋波電壓,在輸出端并聯(lián)一只大容量的電解電容C4,會(huì )取得更好的效果。然而,這樣將隨之產(chǎn)生一種弊端:一旦78L05的輸入端出現短路時(shí),輸出端上的大電容器上儲存的電荷將通過(guò)集成穩壓器內部電路調整管的發(fā)射極與基極泄放,因大容量電容器釋放能量較大,會(huì )造成集成穩壓器內部調整管的損壞,導致電路無(wú)法工作。為了防止這一點(diǎn),在78L05的輸入端與輸出端之間跨接一個(gè)二極管,它為C4上電荷的泄放提供了一個(gè)分流通路,對集成穩壓器起保護作用。
串口接收溫度函數流程圖如圖2所示。
評論