基于C8051F041單片機的直流電源設計
溫度測量電路設計
溫度測量中,系統選用Dallas 半導體公司的數字化溫度傳感器DS1820。它具有微型化、低功耗、高性能、抗干擾能力強及易配微處理器等特點(diǎn),因而特別適合于構成多點(diǎn)溫度測控系統。DS1820 能提供九位溫度讀數,它無(wú)須任何外圍硬件即可方便的構成溫度檢測系統。
系統的溫度實(shí)際測量電路如圖3 所示。這里可采用任意只DS1820 同時(shí)測控多路路溫度,可視實(shí)際需要任意選定通道數。系統采用C8051F041 單片機,其P2.2 口接單線(xiàn)總線(xiàn)。DS18B20采用寄生電源供電方式,采用寄生電源供電方式時(shí)VDD 必須接地。為保證在有效的DS1820 時(shí)鐘周期內能提供足夠的電流,圖3 中采用一個(gè)MOSFET管和C8051F041 的P2.1 口來(lái)完成對DS1820 的總線(xiàn)上拉。由于單線(xiàn)制只有一根線(xiàn),因此發(fā)送接收口必須是三態(tài)的,為了操作方便我們用C8051F200 的P2.2 口作發(fā)送口Tx ,P2.3 口作接收口Rx。由于DS1820 是單線(xiàn)數字溫度傳感器,只須用它輸出線(xiàn)上的序列號就可以決定要讀取哪一個(gè)點(diǎn)上的溫度值,而且它的輸出量本來(lái)就是數字量,所以無(wú)須經(jīng)過(guò)A/ D 轉換,就可以直接連到單片機上。需要注意的是,在系統安裝及工作之前應將主機逐個(gè)與DS1820 掛接,以讀出其序列號。其工作過(guò)程為:主機發(fā)出一個(gè)脈沖,待“0”電平大于480μs 后,復位DS1820 ,在DS1820 所發(fā)響應脈沖由主機接收后,主機再發(fā)讀取ROM的命令代碼33H ,然后再發(fā)一個(gè)脈沖(15μs) ,并接著(zhù)讀取DS1820 序列號的一位。用同樣方法讀取序列號的56 位。另外,由于DS1820 單線(xiàn)通信功能是分時(shí)完成的,遵循嚴格的時(shí)隙概念,因此,系統對DS1820 和各種操作必須按協(xié)議進(jìn)行,即:初始化DS1820 (發(fā)復位脈沖) →發(fā)ROM 功能命令→發(fā)存儲器操作命令→處理數據。由于DS1820 輸出量就是數字量,所以它的輸出可直接連接到單片機上。
單片機及通信接口
C8051Fxxx 系列單片機
C8051Fxxx 系列單片機成是完全集成的混合信號系統級芯片,具有與8051 兼容的微控制器內核,與MCS - 51 指令集完全兼容。除了具有標準8052 的數字外設部件之外,片內還集成了數據采集和控制系統中常用的模擬部件和其它數字外設及功能部件。它有優(yōu)于51 系列單片機的性能,而且成本也不高,C8051Fxxx 單片機是真正能獨立工作的片上系統(SOC) 。每個(gè)MCU 都能有效地管理模擬和數字外設,可以關(guān)閉單個(gè)或全部外設以節省功耗。所以本系統選用C8051Fxxx 系列中的C8051F041 作為控制中心。
C8051F041 單片機的MCU 中的外設或功能部件包括模擬多路選擇器、可編程增益放大器、ADC、DAC、電壓比較器、電壓基準、溫度傳感器、SMBus/ I2C、UART、SPI、CAN 總線(xiàn)210B、可編程計數器/ 定時(shí)器陣列、數字I/ O 端口、電源監示器、看門(mén)狗定時(shí)器(WDT) 和時(shí)鐘振蕩器。
CAN 通信接口電路
CAN ,全稱(chēng)為“Controller Area Network”,即控制器局域網(wǎng),是國際上應用最廣泛的現場(chǎng)總線(xiàn)之一。CAN是一種多主方式的串行通訊總線(xiàn),基本設計規范要求有高的位速率,高抗電磁干擾性,而且能夠檢測出產(chǎn)生的任何錯誤。在信號傳輸距離達到10Km 時(shí),CAN 仍可提供高達5Kbit/ s 的數據傳輸速率。
基于C8051F041單片機的直流電源設計 直流電源
單片機C8051F041 自身帶有CAN 總線(xiàn)2.0B 接口,在收發(fā)器與單片機接口之間采用高速光耦來(lái)實(shí)現它們之間的電氣隔離,以保護單片機,最后收發(fā)器和CAN 協(xié)議控制器連接,這樣就實(shí)現了C8051F041 與CAN總線(xiàn)的通信。
軟件設計
該系統軟件是一個(gè)功能較強的監控軟件,它具有實(shí)時(shí)多任務(wù)處理的能力,能及時(shí)有效地響應突發(fā)事件。它完成顯示,A/ D 轉換,數據處理,聲光報警,通信等任務(wù)。實(shí)踐證明,本系統軟件工作圓滿(mǎn),完全符合系統設計的要求。系統軟件由五個(gè)模塊組成。
主程序模塊主要完成系統的初始化,設定各種常數,進(jìn)行預處理,顯示電池各種狀態(tài)參數。
采樣程序模塊完成對電池的電壓、電流、溫度等參數的測量,其中包含A/ D 轉換程序。
CAN 通信程序模塊主要完成本系統同上位機之間的CAN 通信功能。
電池電量計算程序模塊主要完成對采樣得到的電池電壓、電流來(lái)計算電池電量。
電池狀態(tài)分析程序模塊完成對采樣及計算得到的各種電池參數進(jìn)行分析,并發(fā)出聲光報警信號。
結論
本文基于C8031F041 單片機直流電源電池監控系統的設計與實(shí)現。通過(guò)實(shí)驗證明,系統的硬件和軟件完全符合系統設計的各種性能要求,能圓滿(mǎn)完成對電池組的工作狀態(tài)進(jìn)行監控。
評論