多功能酒精測(cè)試儀_第1頁(yè)
多功能酒精測(cè)試儀_第2頁(yè)
多功能酒精測(cè)試儀_第3頁(yè)
多功能酒精測(cè)試儀_第4頁(yè)
多功能酒精測(cè)試儀_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、論 文課題名稱 基于單片機(jī)的酒精測(cè)試儀 武漢工程大學(xué)郵電與信息目錄一摘要與系統(tǒng)原理(3 )二 功能指標(biāo)(4 )三整機(jī)原理圖(5)四軟件流程(6)五MCS-51單片機(jī)引腳功能(7 )六ADC0809資料(9)七酒精傳感器TGS822(11)八. LCD資料(12)九整機(jī)程序(13)摘要本作品是基于單片機(jī)控制ADC0809對(duì)TGS822酒精濃度取樣來(lái)反映人體血液酒精濃度;以及對(duì)DS18B20獲取溫度系統(tǒng)框圖單片機(jī)LCD顯示輸出傳感器模擬輸入控制輸出實(shí)現(xiàn)原理TGS822對(duì)酒精濃度的變化,其阻值產(chǎn)生相應(yīng)的變化,然后通過(guò)取樣電阻分壓的變化表現(xiàn)出來(lái);人體血液酒精濃度的不同,其呼出的氣體中酒精濃度也不同。通

2、過(guò)TGS822對(duì)呼出氣體中酒精濃度的反應(yīng)以取樣電壓的形式送入到ADC0809,進(jìn)行A/D轉(zhuǎn)換后并將轉(zhuǎn)換的數(shù)據(jù)送入單片機(jī)進(jìn)行分析處理,并判斷是否醉酒駕車,再通過(guò)液晶板顯示出來(lái)。DS18B20其自身的溫度傳感器所產(chǎn)生的溫度數(shù)字?jǐn)?shù)據(jù)存入其自身的存儲(chǔ)器,單片機(jī)對(duì)其控制讀出溫度數(shù)據(jù),然后經(jīng)過(guò)計(jì)算處理,將當(dāng)前環(huán)境溫度由液晶板輸出。作品亮點(diǎn)該作品結(jié)構(gòu)簡(jiǎn)單,功能多樣,可擴(kuò)展性強(qiáng),成本低廉,便于攜帶,適用范圍廣。功能指標(biāo)車輛駕駛?cè)藛T血液中的酒精含量大于或等于80mg/100ml的駕駛行為。  血液酒精含量臨界值:行為類別對(duì)    象臨界值(mg/100ml)飲酒駕駛車輛駕

3、駛?cè)藛T20醉酒駕駛車輛駕駛?cè)藛T80   血液與呼氣酒精含量換算車輛駕駛?cè)藛T呼氣酒精含量檢驗(yàn)結(jié)果可按標(biāo)準(zhǔn)GA307換算成血液酒精含量。序 號(hào)呼出氣體中酒精濃度mg/L呼出氣體中酒精濃度10¯6血液中酒精濃度mg/100mL10.022711.85520.045423.691030.068135.531540.090947.432050.113659.282560.136371.133070.159183.023580.181894.864090.2045106.7145100.2272118.5650110.2500130.4555120.2727141.26601

4、30.2954154.1565140.3181166.0070150.3409177.8975160.3636189.7280170.3863201.1585180.4091213.4390190.4318225.3395200.4515237.12100210.6618355.68150220.9091474.24200整機(jī)原理圖軟件流程圖開始設(shè)置第一行顯示內(nèi)容設(shè)置顯示模式顯示第一行內(nèi)容延時(shí)延時(shí)關(guān)顯示延時(shí)初始化DS18B20跳過(guò)讀序列號(hào)清屏啟動(dòng)溫度轉(zhuǎn)換延時(shí)延時(shí)關(guān)顯示初始化延時(shí)跳過(guò)讀序列號(hào)設(shè)置第一行顯示位置讀取溫度值并計(jì)算顯示第一行內(nèi)容設(shè)置第一行顯示內(nèi)容控制ADC0809轉(zhuǎn)換顯示第一行內(nèi)容設(shè)置

5、第二行顯示內(nèi)容讀取數(shù)據(jù)顯示第二行內(nèi)容比較計(jì)算MCS-51單片機(jī)引腳功能MCS單片機(jī)都采用40引腳的雙列直插封裝方式。下圖為引腳排列圖, 40條引腳說(shuō)明如下:1、主電源引腳Vss和Vcc Vss接地 Vcc正常操作時(shí)為+5伏電源2、外接晶振引腳XTAL1和XTAL2 XTAL1內(nèi)部振蕩電路反相放大器的輸入端,是外接晶體的一個(gè)引腳。當(dāng)采用外部振蕩器時(shí),此引腳接地。 XTAL2內(nèi)部振蕩電路反相放大器的輸出端。是外接晶體的另一端。當(dāng)采用外部振蕩器時(shí),此引腳接外部振蕩源。3、控制或與其它電源復(fù)用引腳RST/VPD,ALE/ , 和 /Vpp RST/VPD 當(dāng)振蕩器運(yùn)行時(shí),在此引腳上出現(xiàn)兩個(gè)機(jī)器周期的高

6、電平(由低到高跳變),將使單片機(jī)復(fù)位在Vcc掉電期間,此引腳可接 下圖8051引腳排列圖上備用電源,由VPD向內(nèi)部提供備用電源,以保持內(nèi)部RAM中的數(shù)據(jù)。 ALE/ 正常操作時(shí)為ALE功能(允許地址鎖存)提供把地址的低字節(jié)鎖存到外部鎖存器,ALE 引腳以不變的頻率(振蕩器頻率的 )周期性地發(fā)出正脈沖信號(hào)。因此,它可用作對(duì)外輸出的時(shí)鐘,或用于定時(shí)目的。但要注意,每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖,ALE 端可以驅(qū)動(dòng)(吸收或輸出電流)八個(gè)LSTTL電路。 對(duì)于EPROM型單片機(jī),在EPROM編程期間,此引腳接收編程脈沖( 功能) 外部程序存儲(chǔ)器讀選通信號(hào)輸出端,在從外部程序存儲(chǔ)取指令(

7、或數(shù)據(jù))期間, 在每個(gè)機(jī)器周期內(nèi)兩次有效。 同樣可以驅(qū)動(dòng)八LSTTL輸入。 /Vpp 、 /Vpp為內(nèi)部程序存儲(chǔ)器和外部程序存儲(chǔ)器選擇端。當(dāng) /Vpp為高電平時(shí),訪問(wèn)內(nèi)部程序存儲(chǔ)器,當(dāng) /Vpp 為低電平時(shí),則訪問(wèn)外部程序存儲(chǔ)器。對(duì)于EPROM型單片機(jī),在EPROM編程期間,此引腳上加21伏EPROM編程電源(Vpp)。4、輸入/輸出引腳P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。 P0口(P0.0 - P0.7)是一個(gè)8位漏極開路型雙向I/O口,在訪問(wèn)外部存儲(chǔ)器時(shí),它是分時(shí)傳送的低字節(jié)地址和數(shù)據(jù)總線,P0口能以吸收電流的方式驅(qū)動(dòng)八個(gè)LSTT

8、L負(fù)載。 P1口(P1.0 - P1.7)是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口。能驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。 P2口(P2.0 - P2.7)是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口,在訪問(wèn)外部存儲(chǔ)器時(shí),它輸出高8位地址。P2口可以驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。 P3口(P3.0 - P3.7)是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口。能驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載 ADC0809資料1主要特性1)8路8位AD轉(zhuǎn)換器,即分辨率8位。 2)具有轉(zhuǎn)換起??刂贫恕?3)轉(zhuǎn)換時(shí)間為100s4)單個(gè)5V電源供電 5)模擬輸入電壓范圍05V,不需零點(diǎn)和滿刻

9、度校準(zhǔn)。 6)工作溫度范圍為-4085攝氏度 7)低功耗,約15mW。 2內(nèi)部結(jié)構(gòu) ADC0809是CMOS單片型逐次逼近式AD轉(zhuǎn)換器,它由8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型DA轉(zhuǎn)換器、逐次逼近 寄存器、三態(tài)輸出鎖存器等其它一些電路組成。因此,ADC0809可處理8路模擬量輸入,且有三態(tài)輸出能力,既可與各種微處理器相連,也可單獨(dú)工作。輸入輸出與TTL兼容。 3外部特性(引腳功能) ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖1323所示。下面說(shuō)明各引腳功能。 IN0IN7:8路模擬量輸入端。2-12-8:8位數(shù)字量輸出端。ADDA、ADDB、ADDC:3位地址輸入

10、線,用于選通8路模擬輸入中的一路。 ALE:地址鎖存允許信號(hào),輸入,高電平有效。 START: AD轉(zhuǎn)換啟動(dòng)信號(hào),輸入,高電平有效。 EOC: AD轉(zhuǎn)換結(jié)束信號(hào),輸出,當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。 OE:數(shù)據(jù)輸出允許信號(hào),輸入,高電平有效。當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。CLK:時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KHZ。 REF(+)、REF(-):基準(zhǔn)電壓。 Vcc:電源,單一5V。 GND:地。 ADC0809的工作過(guò)程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一

11、到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動(dòng) AD轉(zhuǎn)換,之后EOC輸出信號(hào)變低,指示轉(zhuǎn)換正在進(jìn)行。直到AD轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示AD轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作中斷申請(qǐng)。當(dāng)OE輸入高電平 時(shí),輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。 酒精傳感器TGS822資料特點(diǎn): 應(yīng)用: 對(duì)乙醇等有機(jī)溶劑有高靈敏度 酒精檢測(cè)器 長(zhǎng)期穩(wěn)定性優(yōu)良 工廠、干洗店、半導(dǎo)體產(chǎn)業(yè)的 長(zhǎng)壽命、低成本有機(jī)溶劑檢知 以簡(jiǎn)單電路即可使用費(fèi)加羅氣體傳感器的氣敏素子,使用在清潔空氣中電導(dǎo)率低的二氧化錫(SnO2)。當(dāng)存在檢知對(duì)象氣體時(shí),傳感器的電導(dǎo)率隨空氣中氣體濃度增加而增大。使

12、用簡(jiǎn)單的電路即可將電導(dǎo)率的變化,轉(zhuǎn)換為與該氣體濃度相對(duì)應(yīng)的輸出信號(hào)。TGS822 傳感器對(duì)酒精、有機(jī)溶劑的靈敏度高,在酒精檢測(cè)器等方面得到廣泛應(yīng)用。相同特性的 TGS823,采用了陶瓷底座,可以在200的高溫氣氛中使用。下縱坐標(biāo)以傳感器電阻比(Rs/Ro)表示,Rs,Ro 的定義如下:Rs 不同濃度氣體中的電阻值Ro 300ppm 乙醇中的電阻值靈敏度特性:圖中縱坐標(biāo)也以傳感器電阻比(Rs/Ro)表示,這里的Rs,Ro 定義如下:Rs=含300ppm 乙醇、各種溫/濕度下的電阻值Ro=含300ppm 乙醇、2065%R.H.下的電阻值 LCD資料1602字符型LCD通常有14條引腳線或16條引

13、腳線的LCD,多出來(lái)的2條線是背光電源線VCC(15腳)和地線GND(16腳),其控制原理與14腳的LCD完全一樣,其中: 引腳 符號(hào) 功能說(shuō)明 1 VSS 一般接地 2 VDD 接電源(+5V) 3 V0 液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度)。 4 RS RS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。 5 R/W R/W為讀寫信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作,低電平(0)時(shí)進(jìn)行寫操作。 6 E E(或EN)端為使能(enable)端,下降沿使能。 7 DB0 底4位

14、三態(tài)、 雙向數(shù)據(jù)總線 0位(最低位) 8 DB1 底4位三態(tài)、 雙向數(shù)據(jù)總線 1位 9 DB2 底4位三態(tài)、 雙向數(shù)據(jù)總線 2位 10 DB3 底4位三態(tài)、 雙向數(shù)據(jù)總線 3位 11 DB4 高4位三態(tài)、 雙向數(shù)據(jù)總線 4位 12 DB5 高4位三態(tài)、 雙向數(shù)據(jù)總線 5位 13 DB6 高4位三態(tài)、 雙向數(shù)據(jù)總線 6位 14 DB7 高4位三態(tài)、 雙向數(shù)據(jù)總線 7位(最高位)(也是busy flang) 15 BLA 背光電源正極 16 BLK 背光 電源負(fù)極 寄存器選擇控制表即為ASCII碼表 RS R/W 操作說(shuō)明 0 0 寫入指令寄存器(清除屏等) 0 1 都busy flag(DB7)

15、,以及讀取位址計(jì)數(shù)器(DB0DB6)值 1 0 寫入數(shù)據(jù)寄存器(顯示各字型等) 1 1 從數(shù)據(jù)寄存器讀取數(shù)據(jù) 1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”。因?yàn)?602識(shí)別的是ASCII碼,試驗(yàn)可以用ASCII碼直接賦值,在單片機(jī)編程中還可以用字符型常量或變量賦值,如'A。整機(jī)程序#include<reg51.

16、h>#include<intrins.h>sbit rs=P24; /LCD液晶引腳定義,p0接DB0_DB7sbit rw=P27;sbit ep=P26;sbit ale=P20; /ADC0809引腳定義sbit start=P37;sbit oe=P35;sbit eoc=P36;sbit adda=P25;sbit addb=P22;sbit adc=P23;sbit light=P30; /報(bào)警輸出sbit DQ=P33; /DS18B20輸入腳定義sbit DE=P31;unsigned char tempL=0;unsigned char tempH=0;fl

17、oat temperature;unsigned char code dis1="WORK START"unsigned char code dis2="ALCOHOL TEST"unsigned char code dis3="mg/100ml"unsigned char code dis4="SAFE DRIVING"unsigned char code dis5="DRINK-DRIVING"unsigned char code dis6="DRUNK DRIVING"

18、void delay(unsigned char ms) /延時(shí)1unsigned char i,j;while(ms-)for(i=0;i<250;i+)for(j=0;j<50;j+)_nop_();_nop_();void delay2(unsigned int time ) /延時(shí)2unsigned int n;n=0;while (n<time) n+;return;bit lcd_bz() /LCD判忙bit result;rs=0;rw=1;ep=1;_nop_();_nop_();result=(bit)(P0&0x80);ep=0;return re

19、sult;lcd_wcmd(unsigned char cmd) /寫指令數(shù)據(jù)到LCDwhile(lcd_bz()rs=0;rw=0;ep=0;_nop_();_nop_();P0=cmd;_nop_();_nop_();ep=1;_nop_();_nop_();ep=0;lcd_pos(unsigned char pos) /設(shè)定顯示位置lcd_wcmd(pos | 0x80);lcd_wdat(unsigned char dat) /寫入顯示數(shù)據(jù)到LCDwhile(lcd_bz();rs=1;rw=0;ep=0;P0=dat;_nop_();_nop_();ep=1;_nop_();_no

20、p_();ep=0;lcd_init() /LCD初始化lcd_wcmd(0x38);delay(1);lcd_wcmd(0x0c);delay(1);lcd_wcmd(0x06);delay(1);lcd_wcmd(0x01);delay(1);Init_DS18B20(void) /DS18B20初始化unsigned char x=0;DQ=1;delay2(8);DQ=0;delay2(85);DQ=1;delay2(14);delay2(20);ReadOneChar(void) / 向DS18B20讀一字節(jié)數(shù)據(jù)unsigned char i=0;unsigned char dat=

21、0;for(i=8;i>0;i-)DQ=1;delay2(1);DQ=0;dat>>=1; DQ=1;if(DQ) dat|=0x80;delay2(4);return(dat);WriteOneChar(unsigned char dat) /向DS18B20寫一字節(jié)數(shù)據(jù)unsigned char i=0;for(i=8;i>0;i-)DQ=0;DQ=dat&0X01;delay2(5);DQ=1;dat>>=1;delay2(4);ReadTemperature(void) /向DS18B20讀溫度值Init_DS18B20();WriteOne

22、Char(0xcc);WriteOneChar(0x44);delay2(125);Init_DS18B20();WriteOneChar(0xcc);WriteOneChar(0xbe);tempL=ReadOneChar();tempH=ReadOneChar();temperature=(tempH*256)+tempL)*0.0625;delay2(200);return(temperature);main()float x,y,k;unsigned int da,n,temp1,temp2,i,gw,sw,bw,kw,xw; light=0;lcd_init();delay(3);l

23、cd_pos(0);i=0;while(dis1i!='0')lcd_wdat(dis1i);i+;lcd_pos(0x41);i=0;while(dis2i!='0')lcd_wdat(dis2i);i+;delay(32);while(1)lcd_init();ale=0;start=0;adda=0;addb=0;adc=0;_nop_();ale=1;start=1;_nop_();start=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();while(eoc=0);oe=1;_nop_();da=P1

24、;oe=0;y=(2550/da-10)/9.27;if(y>2.68)x=61.61-4.08*y;else if(y>2.38)x=139.3-33.3*y;else if(y>2.23)x=218.7-66.7*y;else if(y>2.128)x=288.6-98*y;else if(y>2)x=262.88-85.9*y;else if(y>1.89)x=254.5-81.8*y;else if(y>1.62)x=450-185.2*y;else if(y>1.209)x=347.1-121.7*y;lse if(y>0.822

25、)x=816.5-516.8*y;else if(y>0.635)x=1279.2-1069.5*y;elsex=2238.7-2580.6*y;if(da<=17)x=0;n=(int)(x/0.23698);gw=n%10+0x30;temp1=n/10;sw=temp1%10+0x30;temp2=temp1/10;bw=temp2%10+0x30;kw=temp2/10+0x30;lcd_pos(0x84);lcd_wdat(0x2e); if(n>=1000)lcd_pos(0x85);lcd_wdat(gw);lcd_pos(0x83);lcd_wdat(sw);lcd_pos(0x82); lcd_wdat(bw);lcd_pos(0x81);lcd_wdat(kw);else if(n>=100)lcd_pos(0x85);lcd_wdat(gw);lcd_pos(0x83);lcd_wdat(sw);lcd_pos(0x82); lcd_wdat(bw);else lcd_pos(0x85);lcd_wdat(gw);lcd_pos(0x83);lcd_wdat(sw);lcd_pos(0x86);i=0;while(dis3i!=&

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論