版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
PAGE威海職業(yè)學院畢業(yè)設計任務書 專業(yè)應用電子技術年級 班級3班姓名 學號威海職業(yè)學院教務處編印畢業(yè)設計指導須知一、畢業(yè)設計是高職教學過程中一個十分重要的環(huán)節(jié)。是鍛煉學生運用所學知識正確分析和解決實際問題的一個重要方面,也是高職培養(yǎng)應用型專門人才的要求。二、指導教師應為具有講師以上或相應職稱的有關專業(yè)人員,且專業(yè)對口(指所指導專業(yè)應同所聘教師專業(yè)職稱相一致)。經系、教務處審查同意后,才能指導學生的畢業(yè)設計。三、學生應以嚴肅認真,實事求是的態(tài)度完成設計。要獨立思考,自己動手,不得抄襲或找人代筆。四、畢業(yè)設計選題要符合專業(yè)培養(yǎng)目標的要求。論文(任務書)寫作要做到論點明確、論據(jù)充分,論理透徹,語言準確恰當,書面整潔、字跡工整,圖紙應清晰、工整,符合設計要求,符合國家有關標準和部頒標準。字數(shù)、圖紙數(shù)量符合有關要求。并在規(guī)定的時間內完成。五、答辯過程中學生要嚴肅認真,文明禮貌,謙虛謹慎,認真回答答辯主持人,委員等提出的問題。六、填報有關表格時,應按項目要求逐項填實、填全、填清。PAGEIII學號20080203115姓名李貴賓學制3年專業(yè)應用電子技術年級2008級教學班負責人張麗燕班級三班指導教師姓名劉振山職務或職稱講師設計題目基于51單片機的出租車計價器指導教師評語:成績:指導教師簽名:工作單位年月日系復審意見:成績:復審人簽名:職稱:公章年月日教務處終審意見:公章年月日答辯情況記錄答辯題目答辯情況正確基本正確經提示回答不正確未回答此表由主持答辯的同志填寫答辯委員會(或小組)評語:成績:主持答辯人簽名:職稱:月日畢業(yè)設計的任務和具體要求:本設計是基于AT89S51單片機的模擬計價器設計,利用制作的穩(wěn)壓電源提供所需的電壓,實現(xiàn)電機速度調節(jié),實時顯示速度、里程及停止計算金額。任務:1.設計出中心控制部分、模擬電機、液晶硬件結構電路;2.對設計的電路進行分析能夠使電機以一定速度轉動;3.可以調整電機速度;4.實時顯示速度及里程;5.停止時顯示里程及計算金額。具體要求:1.完成用單片機制作簡易出租車計價器的焊接,能夠實現(xiàn)模擬演練與使用的功能;2.對用單片機制作的原理分析清楚,運用所學專業(yè)知識進行獨立思考和綜合分析、解決設計當中出現(xiàn)的問題;3.通過畢業(yè)設計要使學生具備系統(tǒng)運用所學知識、正確的思想方法、較強的思維能力和一定工程應用能力。二、畢業(yè)設計應完成的圖紙:圖2-1穩(wěn)壓電源,見4頁圖2-2-1AT89S51引腳配置,見4頁圖2-2-2單片機小系統(tǒng),見5頁圖2-3-1液晶讀時序圖,見7頁圖2-3-2液晶寫時序圖,見7頁圖2-3-3液晶模塊,見7頁圖2-4按鍵部分,見8頁圖2-5H橋的應用,見9頁圖2-6傳感器模塊,見11頁附錄1PCB圖,見26頁附錄2實物圖,見26頁三、其他要求:1.對其他所需所有元器件須熟悉其阻值及作用;2.焊接時首先要檢測元器件,以免出現(xiàn)不良焊接;3.要以嚴肅認真,實事求是的態(tài)度完成設計。四、畢業(yè)設計的期限: 自2010年8月30日至2010年11月20日五、畢業(yè)設計(論文)進度計劃:起止日期工作內容備注2010.8.30-2010.9.52010.9.6-2010.9.102010.9.11-2010.9.152010.9.16-2010.9.202010.9.21-2010.10.22010.10.3-2010.10.102010.10.11-2010.11.192010.11.20總體方案的設計各部分模塊的設計查找資料,查找各部分的元器件功能確定元器件,購買元器件系統(tǒng)電路圖的設計各模塊的焊接各部分功能的調試完成畢業(yè)設計通過多種途徑收集相關資料。對多種方案進行比對,確定最終方案。認真細致的對電路進行焊接于測試。結合硬件電路對程序進行編寫與調試?;?1單片機的出租車計價器摘要出租車計價器是乘客與司機雙方的交易準則,它是出租車行業(yè)發(fā)展的重要標志,是出租車中最重要的工具。它關系著交易雙方的利益。具有良好性能的計價器無論是對廣大出租車司機朋友還是乘客來說都是很必要的。因此,汽車計價器的研究也是十分有一個應用價值的。而采用模擬電路和數(shù)字電路設計的計價器整體電路的規(guī)模較大,用到的器件多,造成故障率高,難調試,對于模式的切換需要用到機械開關,機械開關時間久了會造成接觸不良,功能不易實現(xiàn)。而采用單片機進行的設計,相對來說功能強大,用較少的硬件和適當?shù)能浖嗷ヅ浜峡梢院苋菀椎膶崿F(xiàn)設計要求,且靈活性強,可以通過軟件編程來完成更多的附加功能。針對計費模式的切換,通過軟件編程就可以輕易而舉的實現(xiàn)。避免了機械開關帶來的不穩(wěn)定因素。另外在本方案中那個使用了點陣的液晶,可以實現(xiàn)更加友好的使用界面。數(shù)據(jù)信息一目了然,并且即使是成品也可以方便的修改使用界面,更可根據(jù)不同的公司客戶使用不同的局面……關鍵詞:出租車計價器,單片機,液晶,控制穩(wěn)壓電源
目錄TOC\o"1-3"\f\u前言 1第一章設計思路 21.1出租車計價器概述 21.2可調速電機設計思路 2第二章系統(tǒng)硬件結構設計 32.1電源模塊 32.1.1三端集成穩(wěn)壓器 32.1.2穩(wěn)壓電源 32.2單片機主控模塊 42.2.1AT89S51單片機簡介 42.2.2單片機小系統(tǒng) 52.3液晶顯示模塊 62.3.1液晶顯示原理 62.3.2液晶顯示器的分類 62.3.3引腳功能及說明 62.3.4時序圖 72.3.5液晶的設計 72.4按鍵模塊 82.4.1按鍵的分類 82.4.2按鍵選擇 82.5電機驅動模塊 82.5.1H橋電機驅動原理 82.5.2H橋內部原理 82.5.3H橋設計 92.6傳感器模塊 92.6.1模塊原理 92.6.2傳感器模塊的設計 11第三章軟件部分 12第四章焊接與軟硬件調試 244.1電路的焊接 244.2軟硬件調試 244.2.1軟件的調試 244.2.2硬件的調試 24第五章結束語 255.1論文總結 255.2工作展望 25附錄1PCB 26附錄2實物圖 26附錄3程序流程圖 27參考文獻、資料索引 28致謝 29基于51單片機的出租車計價器前言步入21世紀,出租車已經廣泛地出現(xiàn)在我們周圍。隨著人們生活水平的不斷提高,出租車的使用頻率也越來越高,出租車行業(yè)也以高質量的服務給人們帶來了出行的享受。但是由于行業(yè)的特殊性,出租車行業(yè)總存在著買糾紛,困擾著行業(yè)的發(fā)展。而在出租車行業(yè)中解決這一矛盾的最好方法就是改良計價器,用更加精良的計價器來為乘客提供更加方便快捷的服務。
30年前,我國出現(xiàn)了出租車,但是由于當時的經濟水平,出租車并沒有普遍在我們生活中出現(xiàn)。隨著改革開放的深入,出租車行業(yè)的發(fā)展勢頭已十分突出。如今出租車在我國的交通運輸中承擔著重要的角色,出租車計價器是出租車上必不可少的重要儀器,它是負責出租車營運收費的專用智能化儀表。隨著城市旅游業(yè)的發(fā)展,出租車行業(yè)已成為城市的窗口,象征著一個城市的文明程度。
我們都知道,只要出租車開動,隨著行駛里程的增加,就會看到汽車前面的計價器里程數(shù)字顯示的讀數(shù)從零逐漸增大,而當行駛到某一值時(如4KM)計費數(shù)字顯示開始從起步價(如6元)增加。當出租車到達某地需要在那里等候時,司機只要按一下“計時”鍵,每等候一定時間,計費顯示就增加一個該收的等候費用。汽車繼續(xù)行駛時,停止計算等候費,繼續(xù)增加里程計費。到達目的地,便可按顯示的數(shù)字收費。
采用模擬電路和數(shù)字電路設計的計價器整體電路的規(guī)模較大,用到的器件多,造成故障率高,難調試,對于模式的切換需要用到機械開關,機械開關時間久了會造成接觸不良,功能不易實現(xiàn)。為此我們采用了單片機進行設計,相對來說功能強大,用較少的硬件和適當?shù)能浖嗷ヅ浜峡梢院苋菀椎膶崿F(xiàn)設計要求,且靈活性強,可以通過軟件編程來完成更多的附加功能第一章設計思路本次課程設計利用單片機技術來實現(xiàn)一臺多功能出租車計價器,具有性能可靠、電路簡單、成本低等特點1.1出租車計價器概述 采用電機模擬計價器,通過單片機控制電機起停、轉速,通過光電對管產生高低脈沖并送往單片機中斷,通過計算中斷次數(shù)而得出速度,進而得出里程、金額。數(shù)據(jù)在1602液晶上顯示。1.2可調速電機設計思路采用AT89S51單片機作為主控芯片,用軟件實現(xiàn)上述小車控制器的功能,使控制系統(tǒng)大為簡化,不僅降低了成本,而且控制方便,提高了可靠性。在電機的單片機控制系統(tǒng)中,脈沖的產生及速度的控制都是由單片機來實現(xiàn),利用單片機控制液晶顯示速度的大小,通過按鍵實現(xiàn)速度的調整。第二章系統(tǒng)硬件結構設計本系統(tǒng)的硬件設計主要包括單片機AT89S51、電機驅動、液晶顯示、傳感器電路、按鍵部分、蜂鳴器部分。在硬件設計過程中,充分利用各部件的功能,實現(xiàn)簡易的出租車計價器設計。硬件功能圖:單片機中心控制單片機中心控制電機驅動傳感器液晶顯示按鍵部分蜂鳴器2.1電源模塊本實驗需要穩(wěn)定的電源,電池可以滿足要求,但是電機轉動時消耗的電量較大,電池就有些不合適,所以本實驗需要制作穩(wěn)壓電源。2.1.1三端集成穩(wěn)壓器電子產品中,常見的三端穩(wěn)壓集成電路有正電壓輸出的78××系列和負電壓輸出的79××系列。顧名思義,三端IC是指這種穩(wěn)壓用的集成電路,只有三條引腳輸出,分別是輸入端、接地端和輸出端。用78/79系列三端穩(wěn)壓IC來組成穩(wěn)壓電源所需的外圍元件極少,電路內部還有過流、過熱及調整管的保護電路,使用起來可靠、方便,而且價格便宜。2.1.2穩(wěn)壓電源直流穩(wěn)壓電源采用經7805三端穩(wěn)壓器及濾波電路后輸出的直流電壓。如圖2-1,C4、C5為濾波電容,在經過7805穩(wěn)壓后,C6、C7來改善負載的瞬態(tài)響應,消除電路的高頻噪聲,同時也有消振作用。D9是保護二極管,用來防止在輸入端短路時輸出電容C4所存儲電荷通過穩(wěn)壓器放電而損壞器件。采用該直流穩(wěn)壓電源對該系統(tǒng)的供電穩(wěn)定性要比干電池穩(wěn)定的多。圖2-1穩(wěn)壓電源2.2單片機主控模塊2.2.1AT89S51單片機簡介AT89S51是一個低功耗,高性能CMOS8位單片機,片內含4kBytesISP(In-systemprogrammable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內集成了通用8位中央處理器和ISPFlash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。如圖2-2所示,AT89S51具有如下特點:40個引腳,4kBytesFlash片內程序存儲器,128bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(WDT)電路,片內時鐘振蕩器。圖2-2-1AT89S51引腳配置此外,AT89S51設計和配置了振蕩頻率可為0Hz并可通過軟件設置省電模式??臻e模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應不同產品的需求。2.2.2單片機小系統(tǒng)單片機是整個測試系統(tǒng)的核心,單片機小系統(tǒng)包括時序電路和復位電路。如圖2-2-2所示:圖2-2-2單片機小系統(tǒng)(1)時鐘電路系統(tǒng)的時鐘電路設計是采用的內部方式,即利用芯片內部的振蕩電路。AT89單片機內部有一個用于構成振蕩器的高增益反相放大器。引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外晶體諧振器一起構成一個自激振蕩器。外接晶體諧振器以及電容C1和C2構成并聯(lián)諧振電路,接在放大器的反饋回路中。對外接電容的值雖然沒有嚴格的要求,但電容的大小會影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12MHz,電容應盡可能的選擇陶瓷電容,電容值約為22μF。在焊接刷電路板時,晶體振蕩器和電容應盡可能安裝得與單片機芯片靠近,以減少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。(2)復位電路復位是由外部的復位電路來實現(xiàn)的。片內復位電路是復位引腳RST通過一個斯密特觸發(fā)器與復位電路相連,斯密特觸發(fā)器用來抑制噪聲,它的輸出在每個機器周期的S5P2,由復位電路采樣一次。復位電路通常采用上電自動復位和按鈕復位兩種方式,此電路系統(tǒng)采用的是上電電路。2.3液晶顯示模塊2.3.1液晶顯示原理液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅動、易于實現(xiàn)全彩色顯示的特點,目前已經被廣泛應用在便攜式電腦、數(shù)字攝像機、PDA移動通信工具等眾多領域。2.3.2液晶顯示器的分類液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段式、字符式、點陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅動方式來分,可以分為靜態(tài)驅動(Static)、單純矩陣驅動(SimpleMatrix)和主動矩陣驅動(ActiveMatrix)三種。2.3.3引腳功能及說明表2-3-31602LCD,各引腳符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負極2.3.4時序圖如圖2-3-1、2-3-2所示(1)讀操作時序圖2-3-1液晶時序圖(2)寫操作時序圖圖2-3-2液晶時序圖2.3.5液晶的設計圖2-3-3液晶模塊2.4按鍵模塊2.4.1按鍵的分類按鍵按照結構原理可分為兩類,一類是觸點式開關按鍵,另一類是無觸點式開關按鍵,目前,微機系統(tǒng)中最常見的是觸點式開關按鍵。按鍵按照接口原理可分為編碼鍵盤與非編碼鍵盤兩類,這兩類鍵盤的主要區(qū)別是識別鍵符及給出相應鍵碼的方法。編碼鍵盤主要是用硬件來實現(xiàn)對鍵的識別,非編碼鍵盤主要是由軟件來實現(xiàn)鍵盤的定義與識別。2.4.2按鍵選擇通過鍵盤控制軟件來改變電機的速度。單片機的P2.0控制開始,P2.1控制停止,P2.2和P2.3控制加減速。若加速到最大后,繼續(xù)按加速鍵則認為無效,系統(tǒng)不會作出響應。圖如2-4所示:圖2-4按鍵部分2.5電機驅動模塊2.5.1H橋電機驅動原理由兩個三極管,一個可以對正極導通實現(xiàn)上拉,另一個可以對負極導通實現(xiàn)下拉。由兩套這樣的電路,在同一個電路中,同時一個上拉,另一個下拉,或相反,兩者總是保持相反的輸出,這樣可以在單電源的情況下使負載的極性倒過來。由于這樣的接法加上中間的負載畫出來經常會像一個H的字樣,故得名H橋。H橋電路在功放、直流電機驅動或直流變換電路中被廣泛使用。2.5.2H橋內部原理如下圖a)、b)所示a)b)2.5.3H橋設計圖2-5H橋的應用2.6傳感器模塊2.6.1模塊原理(1)LM393概述與特點LM393為雙電壓比較器,LM393系列由兩個偏移電壓指標低達2.0的獨立精密電壓比較器構成。該產品采用單電源操作設計,且適用電壓范圍廣。該產品也可采用分離式電源,低電耗不受電源電壓值影響。本品還有一個特點是,即使是在單電源操作時,其輸入共模電壓范圍也包括接地。LM393系列可直接與TTL及CMOS邏輯電路接口。無論時正電源還是負電源操作,當?shù)碗姾谋葮藴时容^器的優(yōu)勢明顯時,LM393系列便與MOS邏輯電路直接接口。各引腳功能:8腳電源+,4腳電源-,1腳比較器A輸出,2腳比較器A反相輸入,3腳比較器A同向輸入,5腳比較器B同向輸入,6腳比較器B反相輸入,7腳比較器B輸出(2)LM339主要參數(shù)表:參數(shù)名稱符號數(shù)值單位電源電壓VCC±18或36V差模輸入電壓VID±36V共模輸入電壓VI-0.3~VCCV功耗Pd570mW工作環(huán)境溫度Topr0to+70℃貯存溫度Tstg-65to150℃電特性數(shù)名稱符號測試條件最小典型最大單位輸入失調電壓VIOVCM=0toVCC-1.5VO(P)=1.4V,Rs=0-±1.0±5.0mV輸入失調電流IIO--±5±50nA輸入偏置電流Ib--65250nA共模輸入電壓VIC-0-VCC-1.5V靜態(tài)電流ICCVCC=+5V,noload-1.12.0mAVCC=+30V,noload-1.32.5mA電壓增益AVVCC=15V,RL>15kΩ-200-V/mV灌電流lsinkVi(-)>1V,Vi(+)=0V,Vo(p)<1.5V616-mA輸出漏電流IOLEVi(-)=0V,Vi(+)=1V,VO=5V-0.1-nA使用說明LM393/339是高增益,寬頻帶器件,象大多數(shù)比較器一樣,如果輸出端到輸入端有寄生電容而產生耦合,則很容易產生振蕩.這種現(xiàn)象僅僅出現(xiàn)在當比較器改變狀態(tài)時,輸出電壓過渡的間隙.電源加旁路濾波并不能解決這個問題,標準PC板的設計對減小輸入—輸出寄生電容耦合是有助的.減小輸入電阻至小于10K將減小反饋信號,而且增加甚至很小的正反饋量(滯回1.0~10mV)能導致快速轉換,使得不可能產生由于寄生電容引起的振蕩.除非利用滯后,否則直接插入IC并在引腳上加上電阻將引起輸入—輸出在很短的轉換周期內振蕩,如果輸入信號是脈沖波形,并且上升和下降時間相當快,則滯回將不需要.比較器的所有沒有用的引腳必須接地.LM393/339偏置網絡確立了其靜態(tài)電流與電源電壓范圍2.0~30V無關.通常電源不需要加旁路電容。差分輸入電壓可以大于并不損壞器件.保護部分必須能阻止輸入電壓向負端超過-0.3V.LM393/339的輸出部分是集電極開路,發(fā)射極接地的NPN輸出晶體管,可以用多集電極輸出提供功能.輸出負載電阻能銜接在可允許電源電壓范圍內的任何電源電壓上,不受端電壓值的限制.此輸出能作為一個簡單的對地SPS開路(當不用負載電阻沒被運用),輸出部分的陷電流被可能得到的驅動和器件的β值所限制.當達到極限電流(16mA)時,輸出晶體管將退出而且輸出電壓將很快上升.輸出飽和電壓被輸出晶體管大約60ohm的限制。當負載電流很小時,輸出晶體管的低失調電壓(約1.0mV)允許輸出箝位在零電平。2.6.2傳感器模塊的設計圖2-6傳感器模塊第三章軟件部分出租車計價器的軟件設計主要由PWM脈沖產生程序,液晶顯示程序,中斷子程序組成。C語言程序具有較高的效率,本程序并不很復雜,所以選用C語言。主程序實現(xiàn)調用子程序及計算,子程序包括延時子程序,液晶顯示子程序,電機速度調節(jié)子程序,外部中斷子程序。通過P2.3、P2.1控制電機起停,P2.2、P2.0控制速度的增減。P2.5為蜂鳴器端口。單片機開始運行后執(zhí)行主程序,程序默認上電后按150轉/分順時針轉動,轉動的速度通過改變PWM的占空比實現(xiàn),子程序中檢測P2.2和P2.0口是否被置低電平,如果變?yōu)榈碗娖秸f明加速或減速鍵被按下,此時會相應的改變速度大小。1602液晶顯示也是在延時子程序中實現(xiàn),每執(zhí)行一次就會讓液晶改變顯示一次。模擬電機的速度計算是通過外部中斷實現(xiàn)的,如果外部中斷產生中斷申請時,執(zhí)行中斷子程序,在主程序中會相應的計算速度。程序清單#include<reg52.h>#defineucharunsignedchar#defineuintunsignedint#defineTH0_TL0(65536-1000)//設定中斷的間隔時長/********電機控制端口***************/sbitINPUT1=P2^6;//控制電機I/O口sbitber=P2^5; //蜂鳴器intcount0=80;intcount1=0;voidInit_MCU();voidStart();voidStop();voidGoahead();voidMotor_speed_high();voidMotor_speed_low();uintMA=0;uintSpeedA=0;//A電機速度變量(0-50對應PWM占空比0-100%)/*****************顯示用變量與數(shù)組***********************/uintDistance=0;//記錄0.5s間隔前后兩次行車里程uchari=0; //行車里程系數(shù)uintj1=0; //計算速度用的變量uintMoney=0;//總價格uintt=0; //t=50000時為0.5秒uchart1=0; //累計1秒時間,計算速度用uchart2=0; //累計5秒時間,計算速度用uintSpeed=0; //速度變量ucharSpe[4]={0,0,0,0}; //速度、距離、金額,保存當前值ucharDistan[4]={0,0,0,0};ucharMon[4]={0,0,0,0};/***************界面固定顯示******************/ucharcodetable[]="Welcome^-^"; ucharcodetable1[]="Unit-price:2";ucharcodetable2[]="Speed:"; ucharcodetable3[]="Distance:";ucharcodetable4[]="Money:";sbitlcdrs=P1^0;sbitlcdrw=P1^1;sbitlcden=P1^2;sbits1=P2^3; //開始sbits2=P2^1; //停止sbitjia_key=P2^2; //加速sbitjian_key=P2^0; //減速ucharnum;uchark;voiddelay(uintz){ uintx,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}voidBuzzer(void){ber =0;delay(50);ber =1;}ucharConvert(ucharIn_Date){uchari,Out_Date=0,temp=0;for(i=0;i<8;i++){temp=(In_Date>>i)&0x01;Out_Date|=(temp<<(7-i));}returnOut_Date;}voidwrite_com(ucharcom){ lcdrs=0; P0=Convert(com); delay(5); lcdrw=0; delay(5); lcden=1; delay(5); lcden=0;}voidwrite_data(uchardate){ lcdrs=1; P0=Convert(date); delay(5); lcdrw=0; delay(5); lcden=1; delay(5); lcden=0;}voidinit(void){ lcden=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x80+0x10);}/************************************************小車啟動,電機從速度開始加速到給定參數(shù)speed_l:輪加速,范圍從1—50************************************************/voidStart(void) //小車啟動{ INPUT1=0; TR0=1;SpeedA=count0; delay(10);}/************************************************小車停車************************************************/voidStop() { INPUT1=1; TR0=0; delay(10);}/************************************************小車前進************************************************/voidGoahead(void){ if(count0>100) count0=100; SpeedA=count0; TR0=1;}/******************按鍵處理減pwm占空比,電機加速******************/voidMotor_speed_high(void){ if(jia_key==0) { delay(10); if(jia_key==0) { while(!jia_key); //等待鍵松開 Buzzer(); count0+=5; if(count0>=100) { count0=100; } } }}/******************按鍵處理減pwm占空比,電機減速******************/voidMotor_speed_low(void){ if(jian_key==0) { delay(10); if(jian_key==0) { while(!jian_key); //等待鍵松開 Buzzer(); count0-=5; if(count0<=2) { count0=1; } } }}voidInit_MCU() //定時器0初始化{ TH0=0xFf; //定時10us TL0=0xf6; TMOD=0x01;//外部中斷0初始化EX0=1; IT0=1;//邊沿觸發(fā)方式 TR0=1; ET0=1; EA=1;}voidCalculation(void) //計算總價、里程、速度,準備顯示數(shù)據(jù){ Distan[0]=Distance/1000; Distan[1]=Distance%1000/100; Distan[2]=Distance%100/10; Distan[3]=Distance%10; Mon[0]=Money/1000; Mon[1]=Money%1000/100; Mon[2]=Money%100/10; Mon[3]=Money%10; Spe[0]=Speed/1000; Spe[1]=Speed%1000/100; Spe[2]=Speed%100/10; Spe[3]=Speed%10;}voiddisp1(void) //開機界面顯示{ init(); write_com(0x01); write_com(0x80); for(num=0;num<14;num++) { write_data(table[num]); //顯示“Welcome^-^” delay(5); } write_com(0x80+0x40); for(num=0;num<14;num++) { write_data(table1[num]); //顯示“Unit-price:2” delay(5); } }voiddisp2(void) //運行中顯示變化的速度和里程{ init(); write_com(0x80+0x0b); write_data(Spe[0]+0x30); write_data(Spe[1]+0x30); write_data(Spe[2]+0x30); write_data(Spe[3]+0x30); write_com(0x80+0x4b); write_data(Distan[0]+0x30); write_data(Distan[1]+0x30); write_data(Distan[2]+0x30); write_data(Distan[3]+0x30);}voiddisp3(void) //停車時的顯示{ init(); write_com(0x01); write_com(0x80); for(num=0;num<9;num++) { write_data(table3[num]); delay(5); } write_com(0x80+0x0b); write_data(Distan[0]+0x30); write_data(Distan[1]+0x30); write_data(Distan[2]+0x30); write_data(Distan[3]+0x30); write_com(0x80+0x40); for(num=0;num<6;num++) { write_data(table4[num]); delay(5); } write_com(0x80+0x4b); write_data(Mon[0]+0x30); write_data(Mon[1]+0x30); write_data(Mon[2]+0x30); write_data(Mon[3]+0x30);}voiddisp4(void) //顯示speed、distance{ write_com(0x01); write_com(0x80); for(num=0;num<6;num++) { write_data(table2[num]); delay(5); } write_com(0x80+0x40); for(num=0;num<9;num++) { write_data(table3[num]); delay(5); }}voidmain(){ Init_MCU(); init(); disp1(); //開機界面顯示 while(1) { if(t2==2) { t2=0; Speed=j1; j1=0; } Calculation(); if(s1==0) //啟動小車 { delay(2); if(s1==0) { while(!s1); Buzzer(); Start(); disp4();k=1; } } if(k==1){ Goahead(); Motor_speed_high(); Motor_speed_low(); disp2(); } if(s2==0) //停止小車 { delay(2); if(s2==0); { while(!s2); Buzzer(); Stop(); k=0; count0=80; SpeedA=count0; disp3(); } } } }voidtime0_int()interrupt1//定時器0中斷,用于產生PWM(脈寬調制)方波{ TR0=0; TH0=0xFf; //100T TL0=0x9c; MA++; if(MA<SpeedA) { INPUT1=0; } elseINPUT1=1; if(MA==100) { MA=0; } t++; if(t>=2000) { t=0; t2++; } TR0=1; }voidint_0()interrupt0{ EX0=0; i++; //行車里程系數(shù) j1++; //計算速度用的變量 if(i>144) //根據(jù)要求,經過計算,轉過72個點為0.1公里 { i=0; Distance++; } if(Distance>9999) Distance=0; Money=Distance*2; EX0=1;}第四章焊接與軟硬件調試焊接是電子產品組裝過程中的重要工藝。優(yōu)良的焊接質量,可為電路提供良好的穩(wěn)定性、可靠性。本設計是一個軟硬件結合的系統(tǒng),調試的時候要考慮軟硬件兩方面。4.1電路的焊接首先我們拿到電路板和元器件,我們一起通過研討得到一個最佳的排版樣式。然后我們開始插件并且焊接,在此過程中我們分工明確,以最快的效率達到最好的品質,通過本小組同志的努力我們在計劃的時間內高質量的完成了我們的設計。不論是布線還是焊接質量都非常好,但是由于我們的疏忽我們將復位電路中的電解電容焊反了,這是我們本次設計焊接過程中的唯一大的失誤,我們及時改正錯誤并且吸取教訓。最后我們全面檢查了一番,確認無誤后我們將程序寫入
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度文化傳媒內容制作合同
- 2024年大型活動保障車輛租賃合同
- 2024年上海房屋裝修工程分包合同
- 2024年廉潔承諾函:雙方誠信自律協(xié)議
- 教育工作者主要先進事跡(5篇)
- 中學生讀書演講稿
- 2024年度質量控制合同:MLB棒球帽正品知識分享
- 2024年工程監(jiān)測與檢測合同
- 2024室內外演唱會舞臺安全檢測合同
- 2024年國際商貿合同的科學與藝術
- (工作計劃)非物質文化遺產保護方案
- 下肢深靜脈血栓的預防和護理新進展
- 大學生國家安全教育學習通超星期末考試答案章節(jié)答案2024年
- 學術論文文獻閱讀與機助漢英翻譯智慧樹知到答案2024年重慶大學
- 2024分布式光伏并網發(fā)電系統(tǒng)設計導則
- 老年心房顫動診治中國專家共識(2024)解讀
- 供貨方案及保證措施供貨方案六篇
- 深入學習2024《軍隊生態(tài)環(huán)境保護條例》
- (初級)航空油料特設維修員(五級)理論考試題庫-上(單選題)
- 2024新人教版物理八年級上冊《第三章 物態(tài)變化》大單元整體教學設計
- 同仁堂集團招聘筆試題庫2024
評論
0/150
提交評論