新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AT89S52的串口通信的測溫系統(tǒng)設(shè)計

基于AT89S52的串口通信的測溫系統(tǒng)設(shè)計

作者: 時間:2011-09-22 來源:網(wǎng)絡(luò) 收藏

介紹了以 單片機為核心的溫度控制的工作原理和方法。由芯片DS18B20 采集溫度信號傳輸給微控制器,通過外圍設(shè)備LCD1602 顯示現(xiàn)場溫度值,并上位機程序通過實時獲取溫度。包括硬件電路設(shè)計、軟件設(shè)計。單片機程序采用C51,在KEIL 開發(fā)環(huán)境中調(diào)試通過完成;PC 后臺軟件采用VB6.0 完成。給出了前后臺軟件設(shè)計流程圖。最后給出了設(shè)計實現(xiàn)的硬件實物圖和采集到的前后臺溫度顯示結(jié)果。

本文引用地址:http://2s4d.com/article/172483.htm

  溫度是工業(yè)控制中主要的被控參數(shù)之一,在日常生活及工農(nóng)業(yè)生產(chǎn)中經(jīng)常要用到溫度的檢測及控制,因此研究溫度的測量方法和裝置具有重要的意義。傳統(tǒng)方法多以熱電阻和熱電偶等為溫度傳感元件,而這種模擬溫度傳感器輸出為模擬信號,必須經(jīng)過A/D 轉(zhuǎn)換環(huán)節(jié)獲得數(shù)字信號后才能與單片機等微處理器接口,使得硬件電路結(jié)構(gòu)比較復(fù)雜、抗干擾性差、布線麻煩以及成本高等缺點。

  針對上述問題,該設(shè)計提出了Dallas 半導(dǎo)體公司的數(shù)字式溫度傳感器DS18B20[1-2]和ATMEL 公司 單片機構(gòu)成的溫度測量系統(tǒng),并可通過連接在PC 系統(tǒng)上進行實時顯示,該系統(tǒng)安裝簡易,可靠性高,適用于惡劣環(huán)境的現(xiàn)場溫度測量。

  1 系統(tǒng)構(gòu)成

  系統(tǒng)由微控制器、溫度采集、、LCD 顯示和上位機顯示等幾部分組成,如圖1 所示。

圖1 系統(tǒng)組成

  數(shù)據(jù)采集流程為:單片機 獲取溫度傳感器DS18B20 采集的溫度值,經(jīng)處理后傳輸給LCD1602 現(xiàn)實,并且通過串口上傳給上位機,供上位機顯示。

  1.1 DS18B20 數(shù)字式溫度傳感器

  DS18B20 溫度傳感器是美國DALLAS 半導(dǎo)體公司推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等元件相比,它能直接讀出被度,并且可根據(jù)實際要求通過簡單的編程讀取9~12 位數(shù)字溫度值。DS18B20 的性能特點如下:

 ?、龠m應(yīng)電壓范圍更寬(3.0~5.5 V),在寄生電源方式下可由數(shù)據(jù)線供電;

 ?、讵毺氐膯尉€接口方式。與微處理器連接時僅需要一條線即可實現(xiàn)雙向通訊;

 ?、跠S18B20 支持多點組網(wǎng)功能;

  ④DS18B20 在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在一只形如三極管的集成電路內(nèi);

 ?、轀胤秶?5℃~+125℃,在-10~+85℃時精度為±0.5℃;

 ?、蘅删幊痰姆直媛蕿?~12 位,對應(yīng)的分辨率分別為0.5℃、0.25℃、0.125℃和0.062 5℃,可實現(xiàn)高精度測溫;

 ?、咿D(zhuǎn)換時間為93.75 ms(9 位)和750 ms(12 位),對于一般的實時測溫系統(tǒng)已經(jīng)足夠了;

  ⑧測量結(jié)果直接輸出數(shù)字溫度信號,以丹總線串行傳送給CPU,同時可傳送CRC 校驗碼,具有極強的抗干擾糾錯能力;

 ?、嶝?fù)壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。

  1.2 RS_232 串口通信標(biāo)準(zhǔn)

  RS_232C 是美國電子工業(yè)協(xié)會(EIA)制定的異步串行通信中應(yīng)用最廣的標(biāo)準(zhǔn)總線。該標(biāo)準(zhǔn)適用于數(shù)據(jù)傳輸速率在0~20Kbps 范圍內(nèi)的通信,已成為數(shù)據(jù)終端設(shè)備DTE 與計算機和數(shù)據(jù)通信設(shè)備DCE 的接口標(biāo)準(zhǔn),是PC 機與通信工業(yè)中應(yīng)用最廣泛的一種串行接口。其工作電平規(guī)定如下:對于數(shù)據(jù)(邏輯“1”的電平低于-3V;邏輯“0”的電平高于+3V)。對于控制信號(“信號有效”的電平高于+3V,“信號無效”的電平低于-3V)。在實際工作中應(yīng)保證電平在±(3~15)V。其串行口的9 根針腳功能有其固定的定義。該設(shè)計中,只要用RXD 和TXD 兩條數(shù)據(jù)線即可。

  1.3 AT89S52

  AT89S52 是一款低功耗、高性能CMOS 工藝8 位微控制器,攜有8K 在系統(tǒng)可編程Flash 存儲器。與80C51 產(chǎn)品指令和引腳完全兼容。使其能為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52 還含有:256 字節(jié)RAM、32 位I/O 口線、看門狗定時器、2 個數(shù)據(jù)指針、三個16 位定時器/計數(shù)器、一個6 向量2 級中斷結(jié)構(gòu)、全雙工串行口、片內(nèi)晶振及時鐘電路。另外,AT89S52 可降至0 Hz靜態(tài)邏輯操作,支持2 種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保模式下,RAM 內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復(fù)位為止。


1.4 LCD1602 顯示模塊

  液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富、超薄輕巧等優(yōu)點,在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到廣泛的應(yīng)用。目前字符型液晶顯示模塊已經(jīng)是單片機應(yīng)用設(shè)計中最常用的信息顯示期間,LCD1602 液晶顯示模塊可以顯示兩行,每行16 個字符,其字符發(fā)生器ROM 中自帶數(shù)字和英文字母及一些特殊符號的字符庫,沒有漢字。利用LCD1602可以建立8 個6×8 點陣自定義字庫的特點。它采用單+5V電源供電,外圍電路配置簡單,價格便宜,具有很高的性價比。

  LCD1602 的驅(qū)動方式有并口驅(qū)動和串口驅(qū)動兩種,并口驅(qū)動須占用單片機大量寶貴的I/O 接口;而串口驅(qū)動須在單片機的UART 接口空閑的基礎(chǔ)上。其主要功能如下:40 通道點陣LCD 驅(qū)動、可選擇當(dāng)作行驅(qū)動或列驅(qū)動、輸入/輸出信號:輸出能產(chǎn)生20×2 個LCD 驅(qū)動波形;輸入接受控制器送出的串行數(shù)據(jù)和控制信號,偏壓(V1∽V6)、通過單片機控制將所測的頻率信號讀數(shù)顯示出來。

  2 硬件系統(tǒng)設(shè)計

  2.1 溫度采集電路

  在設(shè)計電路時,要想使DS18B20 能夠進行精確的溫度轉(zhuǎn)換,I/0 線必須在轉(zhuǎn)換期間保證供電。由于DS18B20 的工作電流達(dá)到了1 mA,所以僅靠5 K 上拉電阻提供電源是不行的,當(dāng)幾只DS18B20 掛在同一根I/0 線上并同時想進行溫度轉(zhuǎn)換時,這個問題變得更加尖銳??紤]到本系統(tǒng)只進行單點測量,故采用從VDD 引腳接入一個外部電源的方法。

  2.2 主控電路及復(fù)位電路

  AT89S52 具有多種封裝形式,該系統(tǒng)為便于焊接,采用PDIP 封裝形式。AT89S52 單片機內(nèi)資源豐富,為解決該系統(tǒng)的設(shè)計提供了多種多樣的方案設(shè)計,該系統(tǒng)占用AT89S52I/0 端口P1、P2、P3 的部分資源。

  2.3 電平轉(zhuǎn)換電路

  RS_232 是用正負(fù)電壓來表示邏輯狀態(tài),與TTL 以高低電平表示邏輯狀態(tài)的規(guī)定不同,因此,為了能夠同計算機接口或終端的TTL 器件連接,必須在RS_232 與TTL 電路之間進行電平和邏輯關(guān)系的變換,實現(xiàn)這種變換的方法可用分立元件,也可以用集成電路芯片。考慮到數(shù)據(jù)的雙向傳遞性,該系統(tǒng)采用MAX232 芯片,可以完成TTL 到RS_232 雙向電平轉(zhuǎn)換。

  2.4 顯示電路

  LCD1602 是常見的液晶顯示器,其特點是讀寫簡易,顯示精度高,與用動態(tài)數(shù)碼管顯示相比其占用資源較少,且顯示數(shù)據(jù)穩(wěn)定,抗干擾能力強。

  2.5 硬件構(gòu)成總電路圖

  系統(tǒng)整體硬件電路包括溫度采集電路、主控制器電路、電平轉(zhuǎn)換電路和顯示電路這四部分,電路如圖2 所示。

圖2 系統(tǒng)硬件電路總圖


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉