【正文】
test has impact to our life, work, scientific research, each domain, has bee a very important thing, so the design of a temperature testing system is imperative. This paper introduces a detection system based on liquid crystal 1602 single chip microputer intelligent in detail using digital temperature sensor DS18B20 temperature measurement and control system in the development process, focusing on sensor under the single chip microputer hardware connection, software programming and the flow diagram of each module system are analyzed in detail, on the part of the circuit are introduced one by one, the system can easily realize the collection of temperature and alarm, and can according to need any upper and lower alarm temperature, it is quite convenient to use and has high precision, wide range, high sensitivity, small volume, low power consumption, suitable for our daily life and the temperature measurement in industrial and agricultural production, also can treat as temperature processing module into other systems, as an aid in the extension of other main with AT89S51 realize the minimalist temperature alarm system, the system structure is simple, strong antijamming capability, suitable for harsh environments onsite temperature measurement, have broad application prospects. Key words: single chip microputer。 1602 液晶也叫 1602 字符型液晶,它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的 點(diǎn)陣 型液晶模塊。 5 LCD1602 有 16 個(gè)管腳,下面結(jié)合我本人收集的關(guān)于 LCD1602 的數(shù)據(jù)手冊(cè)來(lái)對(duì)引腳做詳細(xì)的分析: 1602 采用標(biāo)準(zhǔn)的 16 腳接口,其中: 第 1 腳: GND 為 電源地 第 2 腳: VCC 接 5V 電源正極 第 3 腳: V0 為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過(guò)高時(shí)會(huì) 產(chǎn)生 “ 鬼影 ” ,使用時(shí)可以通過(guò)一個(gè) 10K 的電位器調(diào)整對(duì)比度)。 第 7~ 14 腳: D0~ D7 為 8 位雙向數(shù)據(jù)端。 LCD1602 的時(shí)序: 6 溫度傳感器 DS18B20 的選擇 DS18B20 是 Dallas 公司繼 DS1820 后推出的一種改進(jìn)型智能數(shù)字溫度傳感器,與傳統(tǒng)的熱敏電阻相比,只需一根線就能直接讀出被測(cè)溫度值,并可根據(jù)實(shí)際需求來(lái)編程實(shí)現(xiàn) 9~12 位數(shù)字值的讀數(shù)方式 [3]。因?yàn)槊恐?DS18B20 都可以設(shè)置成兩種供電方式,即數(shù)據(jù)總線供電方式和外部供電方式。它是一個(gè)大于 281*1012 的十進(jìn)制編碼,作為該芯片的唯一標(biāo)示代碼;最后 8 位為前 56 位的 CRC 循環(huán)冗余校驗(yàn)碼,由于每個(gè)芯片的 64 位 ROM 代碼不同,因此在單總線上能夠并接多個(gè) DS18B20 進(jìn)行多點(diǎn)溫度實(shí)習(xí)檢驗(yàn)。當(dāng)接收到溫度轉(zhuǎn)換命令( 44H)后,開始轉(zhuǎn)換,轉(zhuǎn)換完成后的溫度以 16 位帶符號(hào)擴(kuò)展的的二進(jìn)制補(bǔ)碼形式表示,存儲(chǔ)在高速緩存器 RAM 的第 0, 1 字節(jié)中,二進(jìn)制數(shù)的前 5 位是符號(hào)位。非易失性可點(diǎn)擦除 EEPROM 用來(lái)存放高溫觸發(fā)器 TH、低溫觸發(fā)器 TL 和配置寄存器中的信息。 9 DS18B20 分辨率的設(shè)置如表 所示: 表 DS18B20分辨率的設(shè)置 R1 R0 分辨率 最大轉(zhuǎn)換時(shí)間 /ms 0 0 9位 0 1 10位 1 0 11位 375 1 1 12位 750 DS18B20 依靠一個(gè)單線端口通訊。成功執(zhí)行完一條 ROM 操作序列后,即可進(jìn)行存儲(chǔ)器和控制操作,控制器可以提供 6 條存儲(chǔ)器和控制操作指令中的任一條。如果沒(méi)有對(duì) DS18B20使用報(bào)警搜索命令,這些寄存器可以做為一般用途的用戶存儲(chǔ)器使用。外部電源供電模式是將DS18B20 的 GND 直接接地, DQ 與但單總線相連 作為信號(hào)線, VDD 與外部電源正極相連。 單片機(jī) DS18B20 外部 +5V 電源 VDD DQ VCC 其它單線器件 圖 DS18B20 外部供電方式 單片機(jī) DS18B20 GND 圖 DS18B20 寄生電源供電方式 +5V VCC 11 圖 DS18B20 的測(cè)溫原理 DS1820 是這樣測(cè)溫的:用一個(gè)高溫度系數(shù)的振蕩器確定一個(gè)門周期,內(nèi)部計(jì)數(shù)器在這個(gè)門周期內(nèi)對(duì)一個(gè)低溫度系數(shù)的振蕩器的脈沖進(jìn)行計(jì)數(shù)來(lái)得到溫度值。然后計(jì)數(shù)器又開始計(jì)數(shù)直到 0,如果門周期仍未結(jié)束,將重復(fù)這一過(guò)程。 DS18B20 內(nèi)部對(duì)此計(jì)算的結(jié)果可提供 ℃的分辨 率。 表 溫度數(shù)據(jù)關(guān)系 溫度 ℃ 數(shù)據(jù)輸出(二進(jìn)制) 數(shù)據(jù)輸出(十六進(jìn)制) +125 00000000 11111010 00FA +25 00000000 00110010 0032 + 00000000 00000001 0001 0 00000000 00000000 0000 11111111 11111111 FFFF 25 11111111 11001110 FFCE 12 55 11111111 10010010 FF92 S18B20 遵循單總線協(xié)議,每次測(cè)溫時(shí)都必須有 4 個(gè)過(guò)程 [6]: ? 初始化; ? 傳送 ROM 操作命令; ? 傳送 ROM 操作命令; ? 數(shù)據(jù)交換; DS18B20 的 ROM 命令 read ROM(讀 ROM) .命令代碼為 33H,允許主設(shè)備讀出 DS18B20 的 64 位二進(jìn)制 ROM代碼。命令代碼為 CCH,在啟動(dòng)所有 DS18B20 轉(zhuǎn)換之前或系統(tǒng)只有一個(gè) DS18B20 時(shí),該命令將允許主設(shè)備不提供 64 位二進(jìn)制 ROM 代碼就適用存儲(chǔ)器操作命令。命令代碼為 ECH,該命令用于鑒別和定位系統(tǒng)中超出程序設(shè)定的報(bào)警溫度值。 Read scratchpad(讀暫存器 )。 Copy scratchpad(復(fù)制暫存器 )。命令 代碼為 44H,啟動(dòng)一次溫度轉(zhuǎn)換,若主機(jī)在該命令之后又發(fā)出其它操作,而 DS18B20 又忙于溫度轉(zhuǎn)換, DS18B20 就會(huì)輸出一個(gè)“ 0”,若轉(zhuǎn)換結(jié)束,則 DS18B20 輸出一個(gè)“ 1”。該操作是在 DS18B20 上電時(shí)自動(dòng)執(zhí)行,若執(zhí)行該命令后又發(fā)出讀操作, DS18B20 會(huì)輸出溫度轉(zhuǎn)換忙標(biāo)識(shí): 0 為忙, 1 完成。 串口通信 模塊 的選擇 如圖所示為該系統(tǒng)所選擇的串口通信模塊 的基本構(gòu)成 : 串口是計(jì)算機(jī)上一種非常 通用設(shè)備 通信的協(xié)議。 串口通信的概念非常簡(jiǎn)單,串口按位( bit)發(fā)送和接收字節(jié)。典型地,串口用 14 于 ASCII 碼字符的傳輸。串口通信最重要的參數(shù)是 波特率 、 數(shù)據(jù)位 、停止位和奇 偶校驗(yàn) 。當(dāng)我們提到 時(shí)鐘周期 時(shí),我們就是指波特率例如如果協(xié)議需要 4800 波特率,那么時(shí)鐘是 4800Hz。高波特率常常用于放置的很近的儀器間的通信,典型的例子就是 GPIB 設(shè)備的通信。擴(kuò)展的 ASCII 碼是 0~這是衡量通信中實(shí)際數(shù)據(jù)位的參數(shù)。由于實(shí)際數(shù)據(jù)位取決于通信協(xié)議的選取,術(shù)語(yǔ) “ 包 ” 指任何通信的情況。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計(jì)算機(jī)校正時(shí)鐘同步的機(jī)會(huì)。當(dāng)然沒(méi)有校驗(yàn)位也是可以的。高位和低位不真正的檢查數(shù)據(jù),簡(jiǎn)單置位邏輯高或者邏輯低校驗(yàn)。用于驅(qū)動(dòng)和連線的改進(jìn),實(shí)際應(yīng)用中 RS232 的傳輸長(zhǎng)度或者速度常常超過(guò)標(biāo)準(zhǔn)的值。 蜂鳴器模塊如下圖所示: 該蜂鳴器起到的是報(bào)警提示的作用 ,當(dāng)溫度過(guò)溫時(shí),蜂鳴器發(fā)出叫聲。 格式形式第二行: normal 若溫度不正常,則顯示: 液晶 1602 顯示 格式形式第一行: The temp is: 30’ C。 RW=0。 delay_1ms(2)。 RW=0。 delay_1ms(2)。 delay_1ms(5)。 writecmd(0x38)。 writecmd(0x01)。 writ