【正文】
p microputer as a machine acquisition under various measurement signal and data, through serial munication information transmission to the upper machine willPC, by a PC global management.This course design uses keil software piler language C source code. After the missioning, loaded into the single chip microputer, and simulation plete intelligent instrument the core design.Keyword: STC89C51 singlechip microputer, A/D converter, platinum of resistance, EPROM, intelligent instrument, digital temperature thermometer第一章 設(shè)計(jì)目的及原理:題目要求:27. 試設(shè)計(jì)智能儀表實(shí)現(xiàn)智能數(shù)字顯示儀表。 By way of microputer choose the analog switch will each input channel one signal into programcontrolled gain amplifier, enlarge the signal after the A/D converter converted into the pulse signal into the single chip microputer after。此外,智能儀器還可以與PC機(jī)組成分布式測(cè)控系統(tǒng),由單片機(jī)作為下位機(jī)采集各種測(cè)量信號(hào)與數(shù)據(jù),通過(guò)串行通信將信息傳輸給上位機(jī)——PC機(jī),由PC機(jī)進(jìn)行全局管理。本次設(shè)計(jì)使用PT100熱電阻。它的出現(xiàn),極大地?cái)U(kuò)充了傳統(tǒng)儀器的應(yīng)用范圍。智能儀器憑借其體積小、功能強(qiáng)、功耗低等優(yōu)勢(shì),迅速地在家用電器、科研單位和工業(yè)企業(yè)中得到了廣泛的應(yīng)用。目前的智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀(jì)90年代中期問(wèn)世的,它是微電子技術(shù)、計(jì)算機(jī)技術(shù)和自動(dòng)測(cè)試技術(shù)(ATE)的結(jié)晶,特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控制器(MCU)。 本次課程設(shè)計(jì)采用keil編譯軟件編寫(xiě)C語(yǔ)言源代碼。 Single chip set by the instrument according to the initial corresponding data operation and treatment (such as nonlinear correction etc.)。要求8位數(shù)碼管顯示(4位顯示測(cè)量值,4位顯示設(shè)定值),4輸入按鈕(功能選擇、數(shù)碼管選擇、數(shù)字增加、數(shù)字減少),可設(shè)定上下限報(bào)警(蜂鳴器報(bào)警)。智能儀器課程設(shè)計(jì)是智能儀器課程教學(xué)的重要環(huán)節(jié),根據(jù)設(shè)計(jì)智能儀表產(chǎn)品的課程改革目的,特選擇一些小型智能儀表產(chǎn)品作為課設(shè)題目,滿足教學(xué)需求。通過(guò)課程學(xué)習(xí)熟悉單片機(jī)內(nèi)部資源,學(xué)會(huì)ADC、SPI接口、定時(shí)器、中斷、串口、I/O引腳等模塊的編程。在畫(huà)PCB前應(yīng)該購(gòu)買元件,因?yàn)橛辛嗽胖婪庋b尺寸,本次設(shè)計(jì)只到元件商店測(cè)量實(shí)際元件尺寸后,使用Protel99SE畫(huà)封裝圖。:PT100是溫度敏感元件,由于溫度不同,它的電阻值不同變化。其系統(tǒng)框圖如圖1所示,它通過(guò)Pt100熱電阻傳感器獲取繞組溫度值,經(jīng)信號(hào)調(diào)理電路處理后直接送入控制器的A/D轉(zhuǎn)換輸入端。該單片機(jī)具有如下資源:(1)一個(gè)8位算術(shù)邏輯單元(CPU)。(5)5個(gè)中斷源,具有兩個(gè)中斷優(yōu)先級(jí)。(9)開(kāi)放總線接口,P0口分時(shí)作為8位數(shù)據(jù)總線與8位地址總線,P2口作為地址總線高8位。SP:棧指針寄存器B:用于乘除等操作的寄存器,常保存運(yùn)算的第2操作數(shù)。PC+1:程序計(jì)數(shù)器加1處理模塊。WDT:看門(mén)狗。編程邏輯:控制ISP操作。 Pt100溫度測(cè)量接口技術(shù):下圖為Pt100電阻外觀:圖4 Pt100電阻(1)鉑金屬熱電阻簡(jiǎn)介鉑金屬電阻精度高,穩(wěn)定性好,具有一定的非線性,溫度越高電阻變化率越??;最常用鉑電阻按照0℃時(shí)的電阻值分為R0=10Ω、R0=100Ω和R0=1000Ω等幾種,稱為PtPt100、Pt1000;鉑電阻阻值與溫度之間的關(guān)系呈非線性,即Rt = R0 ( I +αt +βt2 ) (t在0~630℃之間) 式中: Rt是鉑熱電阻的電阻值,單位為Ω。;B 級(jí)R0=100177。若RT分度表沒(méi)該溫度下的電阻值,通過(guò)線性內(nèi)插法,大概估算溫度值。鉑熱電阻是一種精確、靈敏、穩(wěn)定的溫度傳感器。目前熱電阻的引線主要有三種方式 ○1二線制:在熱電阻的兩端各連接一根導(dǎo)線來(lái)引出電阻信號(hào)的方式叫二線制:這種引線方法很簡(jiǎn)單,但由于連接導(dǎo)線必然存在引線電阻r,r大小與導(dǎo)線的材質(zhì)和長(zhǎng)度的因素有關(guān),因此這種引線方式只適用于測(cè)量精度較低的場(chǎng)合 ○2三線制:在熱電阻的根部的一端連接一根引線,另一端連接兩根引線的方式稱為三線制,這種方式通常與電橋配套使用,可以較好的消除引線電阻的影響,是工業(yè)過(guò)程控制中的最常用的引線電阻。采用三線制是為了消除連接導(dǎo)線電阻引起的測(cè)量誤差。工業(yè)上一般都采用三線制接法。驅(qū)動(dòng)芯片74LS573、 圖12 數(shù)碼管段驅(qū)動(dòng) 圖13 數(shù)碼管位驅(qū)動(dòng)圖14 顯示電路圖15 HC595驅(qū)動(dòng)芯片圖16 指示電路指示電路是指示按鍵的輸入狀態(tài)的。蜂鳴器發(fā)出聲。元器件選型MOC3063。DS1302內(nèi)部有一個(gè)318的用于臨時(shí)性存放數(shù)據(jù)的RAM寄存器。1. 引腳功能及結(jié)構(gòu) ①DS1302 引腳:X1 X2 晶振管腳GND 地CE 復(fù)位腳I/O 數(shù)據(jù)輸入/輸出引腳SCLK 串行時(shí)鐘Vcc1,Vcc2 電源供電管腳②各引腳的功能為:Vcc1:主電源;Vcc2:備份電源。X1和X2是振蕩源。如果在傳送過(guò)程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。SCLK始終是輸入端。最低有效位(位0)如為0表示要進(jìn)行寫(xiě)操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開(kāi)始輸出。圖27 DS1302的控制字節(jié)圖28 典型電路此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。這三條線分別接到CPU的I/O線上。圖29 比例控制曲線不同比例系數(shù)Kp下對(duì)象溫度變化示意圖,但達(dá)不到無(wú)凈差輸出。out=kp*e+out0。溫度范圍0~200℃的熱電阻PT100的表格如下:unsigned char code R_TABLE[21]={100,,,}。Am 一次測(cè)量?jī)x表的上限(測(cè)量范圍最大值)。 溫度數(shù)據(jù)顯示子程序: 顯示數(shù)據(jù)子程序主要是對(duì)顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作,查表送段碼至LED,開(kāi)位碼顯示,采用動(dòng)態(tài)掃描方式。該算法偽代碼為:if(PV=SV)out =‘OFF’;else out =‘ON’;程序中,SV是設(shè)定值,通常保存在單片機(jī)系統(tǒng)中的E2PROM中,PV是測(cè)量值。若SV+為正設(shè)定值,SV為負(fù)設(shè)定值,則該算法偽代碼如下:if(PV SV+)out =‘OFF’;if (PV SV)out =‘ON’;圖33 具有回差的二位式控制(3)三位式控制三位式控制比二位式控制多了一個(gè)半功率加熱區(qū),當(dāng)測(cè)量溫度低于下限設(shè)定值SV時(shí),全功率加熱,當(dāng)高于下限設(shè)定值SV,低于上限設(shè)定值SV+時(shí),半功率加熱,在高于上限設(shè)定值SV+時(shí),停止加熱。 out2=’ON’。 out2=’OFF’。(2)按鈕任務(wù):檢測(cè)按鈕并執(zhí)行按鈕動(dòng)作,需要軟件消除抖動(dòng)。數(shù)值增加按鈕:用于設(shè)置數(shù)值的增加,每按下一次,數(shù)值加1。不需要每個(gè)主程序循環(huán)都發(fā)送顯示任務(wù),因此可在定時(shí)器0中斷中設(shè)置顯示任務(wù)執(zhí)行標(biāo)記,當(dāng)標(biāo)記為1時(shí),執(zhí)行顯示任務(wù)。要求連續(xù)讀取8個(gè)數(shù)據(jù),然后取平均值。圖35 是TLC1549 的引腳示意圖,其中A0~A10 是11路輸入,Vcc 和GND 分別是電源引腳,REF+和REF分別是參考電源的正負(fù)引腳,使用時(shí)一般將REF接到系統(tǒng)的地,達(dá)到一點(diǎn)接地的要求,以減少干擾。圖35 TLC1549 的引腳示意圖TLC1549時(shí)有六種基本串行接口時(shí)序模式可供選用,這些模式的區(qū)分主要取決于I/O CLOCK的速度和CS的變化,如表3。圖37 24CXX系列器件地址信息(6)TLC5615任務(wù),該任務(wù)是把溫度轉(zhuǎn)換成的代表電流的數(shù)字寫(xiě)入TLC5615,實(shí)現(xiàn)電流輸出。其主要特點(diǎn)如下:●單5V電源工作;●3線串行接口;●高阻抗基準(zhǔn)輸入端(見(jiàn)圖38);●DAc輸出的最大電壓為2倍基準(zhǔn)輸入電壓;●上電時(shí)內(nèi)部自動(dòng)復(fù)位;●微功耗,最大功耗為1.75mw;●轉(zhuǎn)換速率快,更新率為1.21MHz;TLC5615的內(nèi)部功能框圖如圖39所示,它主要由以下幾部分組成:10位DAC電路;一個(gè)16位移位寄存器,接受串行移入的二進(jìn)制數(shù),并且有一個(gè)級(jí)聯(lián)的數(shù)據(jù)輸出端DOUT;并行輸入輸出的l 0位DAC寄存器,為l 0位DAC電路提供待轉(zhuǎn)換的二進(jìn)制數(shù)據(jù);電壓跟隨器為參考電壓端REFIN提供很高的輸入阻抗,大約10MΩ:電路提供最大值為2倍于REFIN的輸出;上電復(fù)位電路和控制電路圖39 TLC5615內(nèi)部功能圖***引腳功能:8腳直插式TLC5615的引腳分布如圖40所示,各引腳功能如下:●DIN,串行二進(jìn)制數(shù)輸入端;●SCLK,串行時(shí)鐘輸入端;●CS,芯片選擇,低有效;●DOUT,用于級(jí)聯(lián)的串行數(shù)據(jù)輸出;●AGND,模擬地;●REFIN,基準(zhǔn)電壓輸入端;●OUT,DAC模擬電壓輸出端;●VDD,正電源電壓端。因?yàn)镻T100的電阻值與溫度之間呈非線性,因此需要查表法矯正。而有回差比例控制就是有兩個(gè)設(shè)定值,當(dāng)所測(cè)溫度高于上設(shè)定值時(shí)停止加熱;當(dāng)?shù)陀谙略O(shè)定值時(shí),開(kāi)始加熱,上下設(shè)定值之間的溫度差稱為回差。④計(jì)算TLC5615需要的數(shù)字,就是將溫度值轉(zhuǎn)換成電流值。}//DAC轉(zhuǎn)換語(yǔ)句:if (DAC_time= =1) //如果DAC轉(zhuǎn)換標(biāo)記DAC_time=1,將數(shù)據(jù)寫(xiě)入DAC{TLC5615數(shù)據(jù)輸出語(yǔ)句;DAC_time=0。if(n= = display_time0) //display_time0為顯示周期{n=0。}if(k= = control_time0) //control_time0為控制周期{k=0。}} 系統(tǒng)流程圖:開(kāi)始系統(tǒng)初始化DS1302時(shí)鐘信號(hào)采集PT100溫度數(shù)據(jù)采集處理讀到的數(shù)據(jù)結(jié)束 開(kāi)始初始化函數(shù)DS1302數(shù)據(jù)的寫(xiě)入DS1302數(shù)據(jù)的讀取返回圖41 系統(tǒng)總流程圖 圖42 DS1302時(shí)鐘流程圖開(kāi)始初始化函數(shù)A/D轉(zhuǎn)換器進(jìn)行A/D轉(zhuǎn)換將轉(zhuǎn)換后的電壓轉(zhuǎn)換為溫度返回 開(kāi)始初始化函數(shù)A/D轉(zhuǎn)換器進(jìn)行A/D轉(zhuǎn)換將轉(zhuǎn)換后的電壓轉(zhuǎn)換為溫度返回圖43 A/D轉(zhuǎn)換器流程圖 圖44 溫度轉(zhuǎn)換流程圖開(kāi)始系統(tǒng)初始化調(diào)用時(shí)間、溫度子程序調(diào)用顯示子程序調(diào)用掃描按鍵程序 Key1=0 ?NYYNNY開(kāi)始初始化按鍵掃描調(diào)用加鍵調(diào)時(shí)調(diào)用顯示程序調(diào)用減鍵調(diào)時(shí)調(diào)用顯示程序返回主程序Key2=0 ?Key3=0 ? 圖45 顯示流程圖 圖46 按鍵流程圖第四章 總電路圖 PROTEL99SE電氣原理圖:圖47 總電氣原理圖 PCB版圖:電源連接口,連接時(shí)注意極性,接錯(cuò)將損壞單片機(jī)作為電源開(kāi)關(guān)的跳線短路7805的跳線DX210k電位器模擬電源輸出JMN1LED燈與模擬輸入的跳線DADA2電源指示燈按鈕共陽(yáng)數(shù)碼管外晶體跳線、DS1302外參考電壓跳線外接晶體編程接口STC89C51單片機(jī)圖48 PCB版Protel99SE簡(jiǎn)介:Protel99SE是應(yīng)用于Windows9X/2000/NT操作系統(tǒng)下的EDA設(shè)計(jì)軟件,采用設(shè)計(jì)庫(kù)管理模式,可以進(jìn)行聯(lián)網(wǎng)設(shè)計(jì),具有很強(qiáng)的數(shù)據(jù)交換能力和開(kāi)放性及3D模擬功能,是一個(gè)32位的設(shè)計(jì)