freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)基于單片機(jī)的超聲波測(cè)距系統(tǒng)實(shí)現(xiàn)-資料下載頁(yè)

2024-12-03 18:00本頁(yè)面

【導(dǎo)讀】本論文主要對(duì)單片機(jī)超聲波測(cè)距系統(tǒng)的原理,單片機(jī)的應(yīng)用等進(jìn)行了分析;:超聲波測(cè)距,單片機(jī),DS18B20溫度補(bǔ)償,LCD顯示,軟件設(shè)計(jì),引言……………………設(shè)計(jì)任務(wù)及主要內(nèi)容……………超聲波的基本理論………………40KHz超聲波發(fā)送程序………………………Altiumdesigner原理圖的繪制…………………

  

【正文】 讀取溫度寄存器 a = ReadOneChar()。 //讀取一個(gè)字節(jié) b = ReadOneChar()。 t = b。 t = 8。 t = t | a。 //字節(jié)合并 return (t)。 //返回結(jié)果給調(diào)用 } 距離計(jì)算程序 距離計(jì)算中,實(shí)行了溫度補(bǔ)償和夾角補(bǔ)償。程序如下: /**************************************** 距離計(jì)算函數(shù) 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 38 ****************************************/ void puter(void) //距離計(jì)算函數(shù) { float c,d,s。 uint t。 if(temp0x8000) //溫度大于 0 c=+*temp*。 else //溫度小于 0 c=*temp*。 t=jsh*256+jsl120。 //計(jì)數(shù)時(shí)間 d=(c*t*)/2。 d*=d。 //直角三角形勾股定理 s=。 //補(bǔ)償 distance=sqrt(s)。 //開方運(yùn)算 } 數(shù)據(jù)轉(zhuǎn)換程序 經(jīng)過(guò)求的數(shù)據(jù)原碼無(wú)法直接用于顯示,必須轉(zhuǎn)換為 LCD 所接受的 BCD 碼的形式,而且在溫度補(bǔ)償和距離計(jì)算中沒(méi)有考慮小數(shù)點(diǎn)的存在,而實(shí) 際顯示必須考慮小數(shù)和有效位數(shù),這樣就必須對(duì)數(shù)據(jù)進(jìn)行取舍。 /************************************** 數(shù)據(jù)轉(zhuǎn)換函數(shù) 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 39 **************************************/ void hextobcd(void) //轉(zhuǎn)化成 2進(jìn)制 { float tp。 unsigned long int tmp。 fuhao=0。 if(temp0x8000) tp=temp*。 else //溫度小于 0,求補(bǔ)碼得到原碼 { bm()。 tp=temp*。 fuhao=1。 } tp*=10。 tmp=tp。 num[12]=tmp/100。 //數(shù)據(jù)轉(zhuǎn)換后放到顯示數(shù)組里面 if(fuhao) num[12]=num[12]|0x80。 //最高位加上負(fù)號(hào) num[13]=tmp/10(tmp/100)*10。 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 40 tmp=distance。 num[25]=tmp/1000。 tmp%=1000。 num[26]=tmp/100。 tmp%=100。 num[27]=tmp/10。 tmp%=10。 num[28]=tmp/1。 } LCD 顯示程序 LCD 液晶顯示程序分為液晶初始化、讀忙、寫指令和寫數(shù)據(jù)操作,液晶顯示器是一塊慢器件,所以在執(zhí)行每條指令之前必須確定模塊忙標(biāo)志為低電平(不忙),否側(cè)此指令無(wú)效。液晶顯示程序如下: /************************************ LCD 顯示函數(shù) **************************************/ void display(void) { { uchar a,b,d。 //Init_LCD()。 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 41 Write_Comm(0x01)。//清顯示 Write_Comm(0x80)。//寫首地址 for(a=0。a16。a++) { d=dispbuf[a]。 if((a11)amp。amp。(a14)) { d=numcode[num[a]]。 //待顯示的結(jié)果 } if(14==a) { d=0xdf。 } Write_Data(d)。 //寫入要顯示的數(shù)據(jù) } Write_Comm(0xc0)。 //換行,換到第二行 for(b=16。b33。b++) { d=dispbuf[b]。 if((b24)amp。amp。(b29)) { d=numcode[num[b]]。 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 42 } Write_Data(d)。 } } } LCD 是一個(gè)慢顯示器件,所以在寫入數(shù) 據(jù)前必須確定 LCD 處在不忙的狀態(tài)。下面的函數(shù)是判讀 LCD 是否為忙狀態(tài)。 void Read_Busy(void)//讀忙信號(hào)判斷 { do{ Lcd_Data = 0xff。 RS = 0。 RW = 1。 E = 0。 delay()。 E = 1。 }while(Busy)。 } /*********************寫入指令函數(shù) ****************************/ void Write_Comm(uchar lcdm) { Lcd_Data = lcdm。 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 43 RS = 0。 RW = 0。 E = 0。 Read_Busy()。 E = 1。 } /*********************寫入數(shù)據(jù)函數(shù) ****************************/ void Write_Data(uchar lcddata) { Lcd_Data = lcddata。 RS = 1。 RW = 0。 E = 0。 Read_Busy()。 E = 1。 } /**********************LCD 的初始化 ***************************/ void Init_LCD(void) { delay()。 //稍微延時(shí),等待 LCD 進(jìn)入工作狀態(tài) 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 44 Write_Comm(0x01)。//清顯示 // Write_Comm(0x02)。//光標(biāo)歸位 Write_Comm(0x38)。//8位 2行 5*8 Write_Comm(0x06)。//文字不動(dòng),光標(biāo)右移 Write_Comm(0x0c)。//顯示開 /關(guān),光標(biāo)開閃爍開 // Write_Comm(0x18)。//左移 } 在程序中,我們將測(cè)量的各種結(jié)果存放到一個(gè)數(shù)組 num[]中,然后通過(guò)這個(gè)數(shù)組的數(shù)據(jù)到預(yù)先存放字符的數(shù)組中去按 num[]中的數(shù)據(jù)的順序去讀取出預(yù)存在 numcode[]中的字符然后送到 LCD 中顯示,注意 LCD 的顯示必須做一系列的初始化和忙標(biāo)志的判讀操作。 基于 Proteus 的軟件仿真 (注:因?yàn)槲艺趯W(xué)習(xí) proteus,所以本文中的 proteus 部分均為熱心網(wǎng)友幫助的仿真結(jié)果) Proteus 是一款功能強(qiáng)大的軟件,其 ISIS 用來(lái)做仿真十分方便,尤其是單片機(jī)系統(tǒng)的仿真, 我們?cè)诒驹O(shè)計(jì)的開發(fā)初期,用 Proteus 來(lái)仿真我們的設(shè)計(jì),以便驗(yàn)證我們的設(shè)計(jì) ,對(duì)設(shè)計(jì)的正確性 做出分析。首先在軟件中找到我們?cè)O(shè)計(jì)用的元件,然后連接好電路圖,設(shè)置好各個(gè)元件的參數(shù)值,特別注意液晶顯示屏的連接需要接上拉電阻。 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 45 圖 Proteus 仿真 用 Proteus 繪制好電路圖后導(dǎo)入程序文件(用 Keil編譯過(guò)后的 HEX文件),然后就可以執(zhí)行仿真,我們?cè)诜抡娴臅r(shí)候 得,由于在軟件中沒(méi)有 CX20216模型,所以 , 則程序開始就認(rèn)為返回信號(hào)獲得了,所以顯示了一個(gè)最小測(cè)量值 111mm,而溫度為 18176。 C,通過(guò)調(diào)節(jié) DS18B20模型的溫度可以測(cè)試顯示溫度是否正確,從圖中可以看出顯示的溫度就是 DS18B20的預(yù)設(shè)溫度值。下面我們?cè)趤?lái)看看 的產(chǎn)生。由于是頻率比較高的信號(hào)( 40KHz),所以不能通過(guò)二極管來(lái)觀察到,所以在仿真的時(shí)候 ,這時(shí)必須用示波器來(lái)查看,如圖: 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 46 圖 波形 從上圖看出, ,由于軟件是 間隔 60MS 發(fā)送一次 40KHz的信號(hào),所以 可以 看到這樣的尖脈沖信號(hào)產(chǎn)生。軟件仿真說(shuō)明我們的軟件設(shè)計(jì)非常成功。 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 47 第五章 PCB 設(shè)計(jì) (注: PCB 為我們培訓(xùn)時(shí)的重點(diǎn),所以對(duì) PCB 運(yùn)用還勉強(qiáng)可以 ,整個(gè)培訓(xùn)過(guò)程學(xué)的最好的就是 protel,在此再次感謝鄭樹華老師 ) 軟件和硬件設(shè)計(jì)完成后就可以開始制作樣機(jī),首先是元件的選擇,通過(guò)找資料和比較,本設(shè)計(jì)采用 STC 公司的 STC90C52RD+單片機(jī),液晶顯示采用YB1602A;超聲波發(fā)送采用 TI 公司的 74F04,接收采用索尼公司的紅外接收 芯片 CX20216,超聲波發(fā)射接收頭采用 40T, 40R。電源采用 LM7805穩(wěn)壓。溫度傳感器采用 DALLS 公司的 : 圖 DALLS 的 DS18B20 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 48 Altium Designer 原理圖的繪制 (注:因?yàn)槲矣⑽膶儆诓锁B級(jí)別,本文中的 Altium Designer 部分,多半為網(wǎng)友的杰作) Altium Desinger6是 Protel 的最新高端版本,其功能強(qiáng)大,集成原理圖設(shè)計(jì), PCB設(shè)計(jì),信號(hào)完整性分析, SPICE仿真, FPGA設(shè)計(jì)等。 Altium dedsigner6操作更加容易,功能更加完善。我們采用它來(lái)做我們的原理圖和 PCB 設(shè)計(jì)。首先繪制原理圖。 繪制原理圖時(shí)注意:連線簡(jiǎn)潔,在同一圖紙上元件線路多則使用網(wǎng)絡(luò)標(biāo)號(hào)來(lái)表示, 而多張圖紙使用端口 Port 來(lái)連接他們: 連線要清楚的表示連接關(guān)系,當(dāng)連接線路比較多而且集中時(shí)可以使用總線 來(lái)連接它們。繪制完成后對(duì)所有元件做一個(gè)編號(hào)操作和編譯檢查。 元件封裝的建立 在繪制完成原理圖后接下來(lái)就是確定元件的封裝。元件的封裝必須按照元件實(shí)務(wù)來(lái)確定其大小,比如焊盤大小、外輪廓的大小等,繪制封 裝過(guò)程中注意焊盤 必須設(shè)置成多層上,元件的外輪廓繪制在 Top OverLay,通常第一焊盤設(shè)置成方形。建立之后必須和原理圖元件關(guān)聯(lián)起來(lái)。一些典型的元件封裝如下: 云南機(jī)電職業(yè)技術(shù)學(xué)院 電氣工程系 —— 電氣自動(dòng) 化技術(shù) 49 圖 典型元件封裝 PCB 的電磁兼容設(shè)計(jì) 電磁兼容是指系統(tǒng)能在規(guī)定的電磁環(huán)境中正常工作而且不對(duì)該環(huán)境中其他設(shè)備產(chǎn)生過(guò)量的電磁干擾。為了提高系統(tǒng)的電磁兼容能力,必須從設(shè)計(jì)初始開始就對(duì)電磁兼容給予足夠的重視,電磁兼容可以從 3個(gè)要素考慮 .即電磁干擾源、電磁干擾可能的傳播途徑、極易接收電磁干擾的敏感器件很電路入手。在PCB 設(shè)計(jì)中基 本的原則如下: 1 抑制干擾源 (1) 繼電器線圈加續(xù)流二極管,消除斷開線圈時(shí)的反電動(dòng)勢(shì)干擾。 (2) 大電流機(jī)械開關(guān)處并接火花抑制電路(一般為 RC 串聯(lián)電路, R 一般選擇幾千歐到幾十千歐,電容選擇 )。 ( 3)給電機(jī)加濾波電路,電容電感引線要盡量短。 ( 4)電路板上每個(gè) IC 并接一個(gè) ~ F? 的高頻電容,減小 IC 對(duì)電源的影響。高頻電容布線盡量靠近電源并且粗短。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1