單芯片的溫度數(shù)據(jù)記錄儀設(shè)計及制作
簡介
一個數(shù)據(jù)記錄器是一種裝置,記錄一段時間的測量。測量該項目介紹了如何構(gòu)建一個小型的記錄器,記錄周圍環(huán)境的溫度值,可以是任何物理變量如溫度,壓力,電壓,濕度等。它具有以下特點:-只使用一個8引腳芯片,所以非常緊湊的尺寸電路?
-溫度范圍:0到+125 ° C
-最多可存儲254個測量
- 采樣間隔選項:1秒,1分鐘,10分鐘
-復(fù)位功能清除所有以前的測量
- 記錄測量到PC的串行
傳輸-用戶輸入和LED指示燈的觸覺開關(guān)。
說明
這個項目的妙處在于,它使用記錄只是一個單一的的芯片 。這是PIC12F683,一個8針從Microchip的微控制器。PIC12F683器件具有6個通用的I / O(GP0 GP5和GP3僅輸入)引腳和2K x 14的閃存程序存儲器
,256字節(jié)內(nèi)部EEPROM 。將與DS1820溫度傳感器測量溫度。DS1820是一個線從達拉斯半導(dǎo)體公司(現(xiàn)為MAXIM公司)的數(shù)字溫度傳感器。該器件的工作溫度范圍為-55 ° C至+125 ° C的精度為± 0.5 ° C的范圍在-10 ° C至+85 ° C。溫度傳感器輸出是9位攝氏溫度測量,溫度分辨率對應(yīng)的最低有效位,這是0.5 ° C。但在這個項目中,我們將使用唯一的最重要的8位。因此,溫度分辨率為1 ° C。測得的溫度將被記錄到的PIC12F683內(nèi)部EEPROM的內(nèi)存。內(nèi)部EEPROM的第一個位置,將存儲的數(shù)據(jù)記錄儀的采樣間隔。采樣間隔定義連續(xù)兩次測量之間的時間差距。該項目將有3個??選項為采樣時間:1秒,1分鐘和10分鐘。這些都是用戶可選擇。第二個位置的EEPROM存儲至今錄得的測量。而其余254 EEPROM的位置將存儲8位的溫度。因此,使用10分鐘的采樣時間間隔,254字節(jié)的EEPROM,將提供42小時的數(shù)據(jù)記錄。記錄的測量值可在任何時間發(fā)送到PC,通過在9600波特的串行鏈路。
將數(shù)據(jù)傳輸?shù)絇C
用戶輸入
將有三個輕觸開關(guān),為用戶的輸入,即啟動,停止,發(fā)送/復(fù)位。三層交換機將能夠接受以下4個用戶請求。1,開始:當(dāng)按下“開始”按鈕,數(shù)據(jù)記錄開始。2。停止:“停止”按鈕,按下后,數(shù)據(jù)記錄將停止 3。發(fā)送:通過串口傳輸數(shù)據(jù)到 PC。復(fù)位:控股的“發(fā)送”按鈕2秒或以上,清除內(nèi)部的EEPROM存儲器。
采樣時間的選擇
可以選擇的采樣間隔為1秒,1分鐘,或10分鐘,使用相同的三層交換機。假設(shè)如果我們需要1分鐘的采樣時間,先關(guān)閉電源,然后按住“停止”按鈕,打開電源,并等待,直到指示燈發(fā)出。一旦LED的發(fā)光,松開按鈕,采樣間隔將被設(shè)置為1分鐘。新設(shè)定的采樣時間將被更新到EEPROM的位置0,以便在停電的情況下,將恢復(fù)以前的采樣時間。同樣,使用1秒的“開始”和“發(fā)送”按鈕,10分鐘的采樣間隔分別。
LED指示燈
每次用戶按下輸入按鈕,LED發(fā)光一個時刻表明,輸入接受。它還閃爍三次,每次EEPROM寫操作發(fā)生。它也開始閃爍時,接通電源“ON”。它還發(fā)光時EEPROM存儲器已滿。
電路圖
該項目的完整的電路圖如下所示。
在六個I / O引腳的PIC12F683分配如下:
1。GP0(引腳7,I / P):此引腳將被用來讀取DS1820的傳感器的溫度值。
2。GP1的(6腳,O / P):這將是用于串行數(shù)據(jù)傳輸?shù)絇C。
3。GP2的(引腳5,O / P):LED輸出引腳。
4。GP3引腳(引腳4,I / P):發(fā)送(輕觸開關(guān))
5。GP4(引腳3,I / P):停止(輕觸開關(guān))
6。GP5(引腳2,I / P):啟動(輕觸開關(guān))
將使用一個簡單的晶體管的電平轉(zhuǎn)換,從PIC12F683的適當(dāng)?shù)拇袛?shù)據(jù)傳輸?shù)絇C的RS232電平轉(zhuǎn)換為TTL電壓。來自PC的RS232端口引腳3(TX),這仍然是空閑的,沒有數(shù)據(jù)傳輸時從PC到PIC所需的負電壓。我上通用的原型板焊接的所有組件。此外,我國成品運行在一系列反極性保護二極管,3節(jié)AAA電池。我也有一個在黑板上的電源開關(guān)。PIC的使用在4MHz內(nèi)部振蕩器,MCLR被禁用。
組件列表
輕觸開關(guān) -的PIC12F683微控制器
- DS1820溫度傳感器
- BC557 NPN晶體管
-電阻器:10K(4),4.7K(2),470歐姆(1)
-電容:10uF的,50V(1)
- LED(1)
- (3)
軟件
固件是用C語言編寫,并MikroElektronika mikroC編譯器 編譯 。我用它的免費版本,因為我們的hex輸出將是比2K 。mikroC下載鏈接http://www.mikroe.com/eng/downloads/get/29/mikroc_pro_pic_2010_v380_setup.zip3用戶輸入開關(guān)的工作中斷更改模式。這意味著任何時候用戶按下任何按鈕,產(chǎn)生一個中斷,當(dāng)單片機讀取DS1820的(這是溫度值的瞬時),當(dāng)它通過串口傳輸數(shù)據(jù)到電腦的時間除外。那些瞬間中斷被禁止。數(shù)據(jù)傳輸采用9600波特率的地方 。你可以寫自己的軟件,PC端接收數(shù)據(jù),但我已經(jīng)使用了用于此目的的超級終端應(yīng)用程序。我的超級終端設(shè)置BPS:9600,數(shù)據(jù)位:??8,奇偶校驗:無,停止位:1,流量控制:硬件
超級終端接收窗口
超級終端接收窗口
照片