版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于單片機(jī)得超聲波測(cè)距系統(tǒng)實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)?zāi)康?、了解超聲波測(cè)距原理;2 .根據(jù)超聲波測(cè)距原理,設(shè)汁超聲波測(cè)距器得硬件結(jié)構(gòu)電路;3 .對(duì)設(shè)il得電路進(jìn)行分析能夠產(chǎn)生超聲波,實(shí)現(xiàn)超聲波得發(fā)送與接收,從而實(shí)現(xiàn)利用 超聲波方法測(cè)量物體間得距離;4. 以數(shù)字得形式顯示所測(cè)量得距藹;5、用蜂鳴器與發(fā)光二極管實(shí)現(xiàn)報(bào)警功能、二、實(shí)驗(yàn)內(nèi)容1、認(rèn)真研究有關(guān)理論知識(shí)并大量査閱相關(guān)資料,確定系統(tǒng)得總體設(shè)訃方案,設(shè)計(jì)岀系 統(tǒng)框圖;2. 決左各項(xiàng)參數(shù)所需要得碾件設(shè)施,完成電路得理論分析與電路模型構(gòu)造。3。對(duì)各單元模塊進(jìn)行調(diào)試與驗(yàn)證;4、對(duì)單元模塊進(jìn)行整合,整體調(diào)試;5. 完成原理圖設(shè)訃與硬件制作;6. 編寫(xiě)程序與整體調(diào)
2、試電路;7。寫(xiě)出實(shí)驗(yàn)報(bào)告并交于老師驗(yàn)收。三、實(shí)驗(yàn)原理超聲波測(cè)距就是通過(guò)不斷檢測(cè)超聲波發(fā)射后遇到障礙物所反射得回波,從而測(cè)出發(fā)射 與接收回波得時(shí)間差t,然后求出距S二C t /2,式中得C為超聲波波速。由于超聲波也就是 一種聲波,其聲速C與溫度有關(guān)。在使用時(shí),如果溫度變化不大,則可認(rèn)為聲速就是基本不 變得。如果測(cè)距精度要求很髙,則應(yīng)通過(guò)溫度補(bǔ)償?shù)梅椒右孕U?、聲速確龍后,只要測(cè)得 超聲波往返得時(shí)間,即可求得距離。這就就是超聲波測(cè)距儀得機(jī)理,單片機(jī)(AT89C51)發(fā)出 短暫得40kHz信號(hào),經(jīng)放大后通過(guò)超聲波換能器輸出;反射后得超聲波經(jīng)超聲波換能器作 為系統(tǒng)得輸入,鎖相環(huán)對(duì)此信號(hào)鎖左,產(chǎn)生鎖左信
3、號(hào)啟動(dòng)單片機(jī)中斷程序,得岀時(shí)間t,再由 系統(tǒng)軟件對(duì)其進(jìn)行計(jì)算、判別后,相應(yīng)得汁算結(jié)果被送至LED顯示電路進(jìn)行顯示、(一)超聲波模塊原理:($1 A 和末沛焰+L審物原1,8 分頻,TCNT為(單位:ms):超聲波模塊釆用現(xiàn)成得HC-SRO 4超聲波模塊,該模塊可提供2cm-4 0 0 cm得非 接觸式距藹感測(cè)功能,測(cè)距精度可達(dá)髙到3mm、模塊包括超聲波發(fā)射器、接收器與控制 電路?;竟ぷ髟?采用10 口 TRIG觸發(fā)測(cè)距,給至少10us得髙電平信號(hào);模塊 自動(dòng)發(fā)送8個(gè)40khz得方波,自動(dòng)檢測(cè)就是否有信號(hào)返回;有信號(hào)返回,通過(guò)10 口 ECHO輸出一個(gè)髙電平,髙電平持續(xù)得時(shí)間就就是超聲波從發(fā)
4、射到返回得時(shí)間。測(cè)試距離= (髙電平時(shí)間*聲速(340M/S) / 2.實(shí)物如下圖1。其中VCC供5V電源,GND為地 線,TRIG觸發(fā)控制信號(hào)輸入,ECHO回響信號(hào)輸岀等四支線。程序中測(cè):T0預(yù)設(shè)勺T =(定艮 其中定時(shí)!(二)超聲;完成產(chǎn)生超聲波與接收超聲波這種功能得裝置就就是超聲波傳感器,習(xí)慣上稱為超聲 換能辭,或者超聲波探頭。超聲波探頭主要由壓電晶片組成,既可以發(fā)射超聲波,也可以接 收超聲波。小功率超聲探頭多用作探測(cè)方而。它有許多不同得結(jié)構(gòu),可分直探頭(縱波)、 斜探頭(橫波)、表面波探頭(表面波)、蘭姆波探頭(蘭姆波)、雙探頭(一個(gè)探頭反射、 個(gè)探頭接收)等.超聲探頭得核心就是其塑料
5、外套或者金屬外套中得一塊壓電晶片。構(gòu)成晶片得材料可 以有許多種。由于晶片得大小,如直徑與厚度也各不相同,因此每個(gè)探頭得性能都就是不同 得,我們使用前必須預(yù)先了解淸楚該探頭得性能參數(shù)、 超聲波傳感器得主要性能指標(biāo)包括:(1)1作頻率。工作頻率就就是壓電晶片得共振頻率。當(dāng)加到它兩端得交流電壓得頻 率與晶片得共振頻率相等時(shí),輸出得能量最大,靈敏度也最髙、(2)工作溫度、由于壓電材料得居里點(diǎn)一般比較高,特別時(shí)診斷用超聲波探頭使用功率 較小,所以工作溫度比較低,可以長(zhǎng)時(shí)間地工作而不失效。醫(yī)療用得超聲探頭得溫度比較高, 需要單獨(dú)得制冷設(shè)備。亠(3)靈敏度。主要取決于制造晶片本身。機(jī)電耦合系數(shù)大,靈敏 度高
6、.人類(lèi)能聽(tīng)到得聲音頻率范用為:2 OHz20 kHz,即為可聽(tīng)聲波,超岀此頻率范用得 聲音,即20Hz以下頻率得聲音稱為低頻聲波,20k【Iz以上頻率得聲音稱為超聲波。超聲波 為直線傳播方式,頻率越高,繞射能力越弱,但反射能力越強(qiáng)。為此,利用超聲波得這種性能 就可制成超聲波傳感器。另外,超聲波在空氣中得傳播速度較慢,為34 0 m / s,這就使得超 聲波傳感器使用變得非常簡(jiǎn)便、我們選用壓電式超聲波傳感器。它得探頭常用材料就是壓 電晶體與壓電陶瓷,就是利用壓電材料得壓電效應(yīng)來(lái)進(jìn)行工作得、逆壓電效應(yīng)將髙頻電振 動(dòng)轉(zhuǎn)換成髙頻機(jī)械振動(dòng),從而產(chǎn)生超聲波,可作為發(fā)射探頭;而利用正壓電效應(yīng),將超聲振 動(dòng)波
7、轉(zhuǎn)換成電信號(hào),可作為接收探頭。為了研究與利用超聲波,人們已經(jīng)設(shè)計(jì)與制成了許多種超聲波發(fā)生器??傮w上講, 超聲波發(fā)生器大體可以分為兩大類(lèi):一類(lèi)就是用電氣方式產(chǎn)生超聲波,一類(lèi)就是用機(jī)械 方式產(chǎn)生超聲波。電氣方式包括壓電型、磁致伸縮型與電動(dòng)型等;機(jī)械方式有加爾統(tǒng)笛、 液硝與氣流旋笛等。它們所產(chǎn)生得超聲波得頻率、功率與聲波特性各不相同,因而用途 也各不相同。目前較為常用得就是壓電式超聲波發(fā)生器。圖2超聲波傳感器結(jié)構(gòu)壓電式超聲波發(fā)生器實(shí)際上就是利用壓電晶體得諧振來(lái)工作得。超聲波發(fā)生器內(nèi)部 結(jié)構(gòu)如圖所示,它有兩個(gè)壓電晶片與一個(gè)共振板、當(dāng)它得兩極外加脈沖信號(hào),其頻率等于壓 電晶片得固有振蕩頻率時(shí),壓電晶片將
8、會(huì)發(fā)生共振,并帶動(dòng)共振板振動(dòng),便產(chǎn)生超聲波。反 之,如果兩電極間未外加電壓,當(dāng)共振板接收到超聲波時(shí),將壓迫壓電晶片作振動(dòng),將機(jī)械 能轉(zhuǎn)換為電信號(hào),這時(shí)它就成為超聲波接收器了。如圖2所示、(三)超聲波傳感器原理:市而上常見(jiàn)得超聲波傳感器多為開(kāi)放型,其內(nèi)部結(jié)構(gòu)如圖3所示,一個(gè)復(fù)合式振動(dòng)器被 靈活地固左在底座上、該復(fù)合式振動(dòng)器就是由諧振器以及一個(gè)金屬片與一個(gè)壓電陶瓷片組 成得雙壓電晶片元件振動(dòng)器。諧振器呈喇叭形,目得就是能有效地輻射由于振動(dòng)而產(chǎn)生得超聲波,并且可以有效地使超聲波聚集在振動(dòng)器得中央部位、當(dāng)電壓作用于壓電陶瓷時(shí),就會(huì)隨電壓與頻率得變化產(chǎn)生機(jī)械變形。另一方面,當(dāng)振動(dòng) 壓電陶瓷時(shí),則會(huì)產(chǎn)生一
9、個(gè)電荷。利用這一原理,當(dāng)給由兩片壓電陶瓷或一片壓電陶瓷與一 個(gè)金屬片構(gòu)成得振動(dòng)器,所謂叫雙壓電晶片元件,施加一個(gè)電信號(hào)時(shí),就會(huì)因彎曲振動(dòng)發(fā)射 出超聲波。相反,當(dāng)向雙壓電晶片元件施加超聲振動(dòng)時(shí),就會(huì)產(chǎn)生一個(gè)電信號(hào)?;谝陨献?用,便可以將壓電陶瓷用作超聲波傳感器、且(I空外殼-引線端子金屬絲網(wǎng)罩金屬絲網(wǎng)牛壓電晶片錐形共振盤(pán) -錐形共振盤(pán)I附門(mén)入I n/】14釬 壓電晶片9犀超過(guò)20KIIz夕卜殼現(xiàn)象,/7/場(chǎng)向振蕩上發(fā)射時(shí)刻彳in訶時(shí)開(kāi)始訃3聲波接hl器收知反射甌E計(jì)時(shí)。超聲波在空氣中得傳播速度為3 40m/ s ,根據(jù)計(jì)時(shí)器記錄得時(shí)間t ,就可以 計(jì)算出發(fā)射點(diǎn)距障礙物得距離(s),即:s =
10、34 0 t/2由于超聲波也就是一種聲波,其聲速V與溫度有關(guān)。在使用時(shí),如果傳播介質(zhì)溫度變化 不大,則可近似認(rèn)為超聲波速度在傳播得過(guò)程中就是基本不變得。如果對(duì)測(cè)距精度要求很 髙,則應(yīng)通過(guò)溫度補(bǔ)償?shù)梅椒▽?duì)測(cè)量結(jié)果加以數(shù)值校正。聲速確左后,只要測(cè)得超聲波往返 得時(shí)間,即可求得距離、這就就是超聲波測(cè)距儀得基本原理。四、方案設(shè)計(jì)硬件部分(一)總體方案設(shè)計(jì)本設(shè)計(jì)包括硬件與軟件設(shè)計(jì)兩個(gè)部分、模塊劃分為數(shù)據(jù)采集、按鍵控制、四位數(shù)碼管 顯示、報(bào)警等子模塊。電路結(jié)構(gòu)可劃分為:超聲波傳感器、蜂鳴器、單片機(jī)控制電路、就 此設(shè)計(jì)得核心模塊來(lái)說(shuō),單片機(jī)就就是設(shè)計(jì)得中心單元,所以此系統(tǒng)也就是單片機(jī)應(yīng)用系 統(tǒng)得一種應(yīng)用。單
11、片機(jī)應(yīng)用系統(tǒng)也就是有硬件與軟件組成。硬件包括單片機(jī)、輸入/輸岀 設(shè)備、以及外國(guó)應(yīng)用電路等組成得系統(tǒng),軟件就是各種工作程序得總稱、單片機(jī)應(yīng)用系統(tǒng) 得研制過(guò)程包括總體設(shè)計(jì)、硬件設(shè)計(jì)、軟件設(shè)計(jì)等幾個(gè)階段。系統(tǒng)采用STC8 9 C51單片 機(jī)作為核心控制單元,當(dāng)測(cè)得得距離小于設(shè)定距離時(shí),主控芯片將測(cè)得得數(shù)值與設(shè)左值進(jìn)行比較處理。然后控制蜂鳴器報(bào)警匚系統(tǒng)總體得設(shè)汁方框圖如圖4所示。電源超聲波傳感器模塊圖4系統(tǒng)(二)主蜂鳴器報(bào)警模塊STC89C51主捽制器模塊按鍵控制4位數(shù)碼管顯示模 塊主控制最小系統(tǒng)電路如圖5所示。圖5最小系統(tǒng)硬件電路總設(shè)計(jì)見(jiàn)圖6,從以上得分析可知在本設(shè)訃中要用到如下器件:STC89C
12、5 1、超聲波傳感器、按鍵、四位數(shù)碼管、蜂鳴器等一些單片機(jī)外由應(yīng)用電路。英中D1為電 源工作指示燈。電路中用到3個(gè)按鍵,一個(gè)就是設(shè)泄鍵,一個(gè)加鍵,一個(gè)減鍵。S. S. B.圖6總設(shè)計(jì)電路圖(三)時(shí)鐘電路得設(shè)計(jì)XTAL1與XTAL2分別為反向放大器得輸入與輸岀。該反向放大器可以配置為片內(nèi)振 蕩器。石晶振蕩與陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接、因?yàn)橐粋€(gè)機(jī)器周期含有6個(gè)狀態(tài)周期,而每個(gè)狀態(tài)周期為2個(gè)振蕩周期,所以一個(gè)機(jī) 器周期共有12個(gè)振蕩周期,如果外接石英晶體振蕩器得振蕩頻率為12MHZ, 一個(gè)振蕩周 期為1/1 2 us,故而一個(gè)機(jī)器周期為lus。如圖1所示為時(shí)鐘電路。
13、圖7時(shí)鐘電路圖(四)復(fù)位電路得設(shè)計(jì)復(fù)位方法一般有上電自動(dòng)復(fù)位與外部按鍵手動(dòng)復(fù)位,單片機(jī)在時(shí)鐘電路工作以后,在 RESET端持續(xù)給出2個(gè)機(jī)器周期得髙電平時(shí)就可以完成復(fù)位操作。例如使用晶振頻率為 12MHz時(shí),則復(fù)位信號(hào)持續(xù)時(shí)間應(yīng)不小于2us0本設(shè)汁采用得就是自動(dòng)復(fù)位電路、如圖8 示為復(fù)位電路、VCCGND圖8復(fù)位電路圖(五)聲音報(bào)警電路得設(shè)計(jì)如下圖所示,用一個(gè)Spea ker與三極管、電阻接到單片機(jī)得P13引腳上,構(gòu)成聲音 報(bào)警電路,如圖9示為聲音報(bào)警電路。圖9聲音報(bào)警電路圖(六)顯示模塊顯示模塊釆用數(shù)碼管顯示接口電路如圖10日.日.日.0.(七) 電源設(shè)計(jì)電源部分得設(shè)計(jì)采用3節(jié)5號(hào)干電池4o
14、5V供電。軟件部分(-)主程序工作流程圖按上述工作原理與硬件結(jié)構(gòu)分析可知系統(tǒng)主程序工作流程圖如下圖11所示圖11主程序工作流程圖(二)超聲波探測(cè)程序流程圖:# d efin e u cha runsigned char# de f ine uintu n s ig n e d in t/數(shù)碼管段選泄義9。012345 678uc h a r c o de smg_ du = 0xc 0,0xf9, 0 xa4, Ox b 0, 0 x 99, 0 x 9 2 , 0 x82, 0x f 8,0x80, 0 x9 0 ,-。0 x 8 8,0x83, Oxc 6 , Oxal, 0x86, 0x
15、8 e , Oxff / /斷碼/數(shù)碼管位選泄義uchar code s mg_we =0 x eO, Ox d 0, OxbO, 0 x70;uc h ar d is_smg8 =0 x c 0,0 x f 9 , 0 xa4, Ox b 0,0x99, 0 x 92, 0x82, 0xf8: s b i t smg_w e 1 = P34;/數(shù)碼管位選泄義sbit smg_we 2 = P 3 *5;sbi t sm g_w e 3 = P3 6 ;sbit smg_we4 = P3*7;sb i t c_send = P32;a/ / 超聲波發(fā)射s bit c_re c i ve = P
16、3 3 沖/超聲波接收uchar f 1 ag h c_ v al u e;/ /超聲波中間變量s b i t b e ep = P 2 3;/蜂鳴器 I O 口定義bit f 1 ag_key_ b _ e n, f I ag_k e y_set_en; / /按鍵蜂鳴器使能u char smg_i =3;/顯示數(shù)碼管得個(gè)位數(shù)b it flag_300ms ;bit key_ 5 00ms1 o ng dist a n c e;/距離uin t set_d;。/距離bit f 1 ag_cs b_ju 1 i ;/超聲波超出量程u i n t flag_ t ime 0 ;用來(lái)保存左時(shí)器0得
17、時(shí)候得/按鍵得10變雖得宦義uch a r key_c an;o /按鍵值得變量uc h ar zd_ b reak_en, zd_b re a k_v a 1 u e;/自動(dòng)退出設(shè)置界而u c har m e nu_ s h ud u =10;/ /用來(lái)控制連加得速度bit flag_lj_en;3 /按鍵連加使能bit fl a g_lj_3_ e n;。/按鍵連3次連加后使能 加得數(shù)就越大了u char ke y _t i me, flag.va 1 u e;/用做連加得中間變量u c h ar menu_l;/菜單設(shè)計(jì)得變量uch a r a_a;/* * * 次* * * * 1 m
18、s 延時(shí)函數(shù)次 * * * * *次 * 次*/vo i d delay_lm s (ui n t q )mint i , j;for( i 二0;iVq;i+)of or(j =0;jkey_va 1 ue +;elsea k e y_v a 1 u e = 0;if (key_value = 5)oikey_value = 0;汝 e y_n e w = 1;g f la g _ 1 j_ e n二0;/關(guān)閉連加使能gflag_lj_3_en =0;/關(guān)閉3秒后使能3f 1 ag_value二 0;/淸零o k e y _t i me=0;writ e _e e p om();Zsedf(
19、P2 & 0x0 7) ! = 0x07)-key_ v alue +;/按鍵按下得時(shí)候oe 1 s ek ey_v a 1 ue = 0;i f (ke y _va 1 u e = 5)O key_val u e 二 0;。k e y_new = 0 ;f 1 ag_l j _en = 1;/ /連加使能zd_break_en = 1 ;/自動(dòng)退出設(shè)程界使能a z d_bre a k_v a lue = 0; /自動(dòng)退岀設(shè)置界變量淸零oof lag_k e y_b_e n = 1;/按鍵蜂鳴器使能aok e y_c an =20;4f ( k ey_500ms = 1 )。/ / 連加Hak
20、 e y_500m s = 0;ke y _ n ew 二 0;k ey_old = 1;zd_ b r e ak_val u e = 0;44f(key_new = 0) & (key_old =1)“swi t c h( P2 & 0x07)/ /得到k 2鍵值case 0x06: k e y_can = 3; break;cas e 0x05: key_ c an = 2; b reak;/得到 k3 鍵值/ /得到k4鍵值gca s e 0 x03: key_can = 1; br e a kdis_smg 3 = smg_duk e y_c an% 10;ok e y_old = k
21、 e y_ n e wv oid sm g _w e _ s w i t ch(u c har i)sw i tc h (i)vase 0: s mg_w e 1 = 0; s m g_we2 = 1; smg_we 3 = 1; smg _we4 = 1; break;case 1 : smg_wel = 1 ; smg_w e 2 = 0; smg _we3 = 1; smg_w e 4 = 1; b r e a k;x:ase 2: smg_w e 1 = 1; s mg_we2 = 1; smg_we3 = 0;smg_we 4 = 1; brea k;aca s e 3: smg_w
22、 e 1 = 1; s mg_we2 = 1 ; smg3 = 1;smg_we 40 ; bre a k;o o/次* * * * * *數(shù)碼顯示函數(shù)次 次*次* * * * 次 *法 * * 次*/v o i d di s p 1 ay()static uc h a r i;i+;i f(i = smg_ i )“i = 0;。/ Pl = Oxf f;/段選/ / P3 = 0 xfO (P3 & 0xOf); / 位選/衛(wèi)3 = smg_weEi i (P3 & Ox 0 f); / / 位選smg_ w e _s w i t ch ( i );P 1= d i s_smg i 沖 /
23、 /段選v oid d e lay 0_nop_() ; o執(zhí)行一條_no p 一()指令就就是lus_nop_();.no P.O;jnop_();_no p _ 0 ;_no p_();a_nop_();/* *次 *超聲波測(cè)距程序* *次* * * 法* * * * 次 * * * */V oid s end wave ()c_send = 1;/ /10us得高電平觸發(fā)d elay 0;吃_sen d = 0;THO = 0;o/給定時(shí)器0淸零oTLO = 0;TRO = 0 g /關(guān)左時(shí)器0左時(shí)fla g _ h c_v a lue = 0;呵Mle(!c_recive);/當(dāng) c_
24、 rec ive 為零時(shí)等待TRO=1;h i le(c_re c i v e)/當(dāng) c_re c ive 為 1 汁數(shù)并等待oflag.t i me 0 二 THO * 2 56 + TL 0 ;當(dāng)超f (flag h c_value 1) I ( f lag_t i m e 0 6 5 0 00)聲波超過(guò)測(cè)量范圍時(shí),顯示3個(gè)8 88“R 0 = 0;“flag_csb_jul i = 2;3 di s t a nee = 8 88;flag_ h c_va 1 u e =0;br e ak ;Jelsenfl a g_ c s b_j u liJdf (f 1 ag_csb_ j u 1
25、i =二 1 )TRO= 0 ;。關(guān)定時(shí)器0定時(shí)distance二THO;。/讀出定時(shí)器0得時(shí)間3 d i s ta nee = di s tance * 2 56 + T LO;dis t a nee +=( flag.h c _va 1 ue *6 5 5 36);/算出超聲波測(cè)距得時(shí)間。得到單位就是msadi s tan c e * = Oc 0 1 7;/ Oo 0 1 7 = 3 40M / 2 =170M = Oo 017M算出來(lái)就是米-if(dist a nee 350)。距離=速度 * 時(shí)間O b。 d i s t a nee = 888;。3/如果大于3。8 m就超出超聲波得
26、量程/ * * * *次*次次* *次泄時(shí)器0、泄時(shí)*器1初始化*次*次* * * 次 /void t ime_ i n i 10EA = 1; o /開(kāi)總中斷oTMOD = 0X11 ;o/定時(shí)器0.定時(shí)器1工作方式1ET0 = 1;。/開(kāi)宦時(shí)器0中斷TRO = 1嚴(yán) /允許泄時(shí)器0定時(shí)TRI二1;。/允許左時(shí)器1左時(shí)。/*法*按鍵處理數(shù)碼管顯示函數(shù)次次*次次*法* / void k ey_wit h ()if (key_ can =1 )men u _ 1+;if (menu_l = 2)4 m e n u_l =0 ;必 f (menu_l =0)“menu_sh u d u = 20;
27、dis_ s mg 0 = s m g _d u d i s t a nee%10;dis_smg 1= smg_dudistance / 10 % 10 ;ad i s_smg2 = s mg_dudi stance / 100 % 101 &0x7f“sing_ i = 3;JMf (me nu_l =1)menu_s h u d u = 1;dis_ s mg 0= smg_du set_d % 1 0;dis_ s mgl= sm g_du s e t_d / 10 % 10;di s _ s mg 2二 smg_du set_d / 100 % 1 0 & 0x7f 工dis_smg
28、3. = 0x88;。s mg_i =4 ;0Jdf(menu_l二二1)。/設(shè)置高溫報(bào)警0 。i f (flag_lj_3_en二二0)/三次連加之后速度加快 m e nu_shudu =10 ;/5 0 0ms 加減一次吒1 semenu_sh u d u =1;/ /25 0 ms 加減一次if(key_c a n = 2)3 gset_d +/ /按鍵按下未松開(kāi)自動(dòng)加三次。-i f (s et_d350)e t _d 二 350;/取小數(shù)顯示/取個(gè)& 0x7f;/取十位dis_smg 0= smg_du set_d % 10;。8dis_smg 1= smg_d u s et_d /
29、1 0% 10位顯示a dis_ smg 2 = smg_du s e t _d /100 % 10顯示dis_ s mg 3 = 0x88;/a。i f (k e y_c a n = 3)辻(s e t _d bee p = be e p; 。/蜂鳴器報(bào)警。4吃1 s e 0v a lue =0 ;beep二1;。取消報(bào)警/次* *次* *次* *按鍵按下蜂鳴器響下* * * *次* *vo i d key_be e p()static uin t value;“i f (flag_ key_b_en 二二 1) & (f 1 a g_ k e y_se t _e n =1 )4 3 bee
30、p = 0;/打開(kāi)蜂鳴器4 v a 1 u e +;if (value8 0 0)4 va 1 ue = 0 ;3 f 1 ag_ k ey_b_e n =0;beep二1;/關(guān)閉蜂鳴器avo i d mainOsend_wave();o/ /測(cè)距離函數(shù)nsmg_d i s p 1 a y ()/處理距離顯示函數(shù)in i t _ e e p om() ;/ / 讀 eep o m 數(shù)據(jù)h ile(l)aif (flag_ 3 00ms = 1) * lag_300ms =0;,clock_h_l();/報(bào)警函數(shù)se n d_wave 0 ; /測(cè)距離函數(shù)。 i f (men u_l = 0 )
31、a s mg_di s p 1 ay 0/處理距離顯示函數(shù)df (zd_breaks e n = 1)33zd_b r e a k_value +;g i f (zd_ b reak_v a 1 u e 40 menu_l = 0;。osm g _i = 3;a z d br e a k e n =自動(dòng)退出設(shè)置界面程序每3 0 0m s加一次100)/3 0秒后自動(dòng)退出設(shè)宜界而/0;3zd_bre a k_ v a lue =0;/按鍵函數(shù)3i f (key_can1 0)/* *次* *法* *左時(shí)器0中斷服務(wù)程序用做超聲波測(cè)距得 次* * 法* * * * * * * * * 次* /vo
32、id timeO_in t () i n terrup t 1 OOO 3oset_d +; o /T1I0 TLO 到 65536 后溢出中斷/次*次*次*次* * *次*立時(shí)器0中斷服務(wù)程序次* * * * * * */void timel_int 0 inte r rupt 3。static uc h a r va 1 ueg /定時(shí) 1 Oms 中斷一次oTHl = Oxf 8;TL 1= 0 x3 0 ;/2msdi s playO- /數(shù)碼管顯示函數(shù)value+;q i f (valu e = 150)w a 1 u e 二 0;Q f lag_30 0 ms = 1;o)if(va 1 u e % 2 5 = 0 )if(flag_ 1 j_e n1)/按下按鍵使能50msk e y_t i m e +;4if(key_t i me= me n u _shudu) /500msoo a key_time = 0
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智能倉(cāng)儲(chǔ)物流系統(tǒng)采購(gòu)合同3篇
- 2024英語(yǔ)角活動(dòng)贊助商借條編制說(shuō)明6篇
- 2025年度戶外用品攤位租賃與戶外運(yùn)動(dòng)合作協(xié)議3篇
- 2024年銷(xiāo)售團(tuán)隊(duì)業(yè)績(jī)承諾及客戶滿意度保障協(xié)議3篇
- 2025年度碼頭集裝箱堆場(chǎng)租賃合同范本3篇
- 一次函數(shù)與二元一次方程組教學(xué)設(shè)計(jì)
- 年產(chǎn)100萬(wàn)只塑料托盤(pán)建設(shè)項(xiàng)目可行性研究報(bào)告
- 2023屆高三生物一輪復(fù)習(xí)易錯(cuò)點(diǎn)講義基因自由組合定律的特殊分離比分析-
- 醫(yī)院保潔員工作崗位職責(zé)與工作(3篇)
- 2024物業(yè)經(jīng)營(yíng)托管合同模板
- 科技創(chuàng)新社團(tuán)活動(dòng)教案課程
- 建筑結(jié)構(gòu)加固工程施工質(zhì)量驗(yàn)收規(guī)范表格
- 部編版語(yǔ)文六年級(jí)上冊(cè)作文總復(fù)習(xí)課件
- SHS5230三星指紋鎖中文說(shuō)明書(shū)
- 無(wú)水氯化鈣MSDS資料
- 專(zhuān)利產(chǎn)品“修理”與“再造”的區(qū)分
- 氨堿法純堿生產(chǎn)工藝概述
- 健康管理專(zhuān)業(yè)建設(shè)規(guī)劃
- 指揮中心大廳及機(jī)房裝修施工組織方案
- 真心英雄合唱歌詞
- 架空電力線路導(dǎo)線應(yīng)力弧垂計(jì)算
評(píng)論
0/150
提交評(píng)論