




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、河南理工大學(xué)單片機(jī)應(yīng)用與仿真訓(xùn)練設(shè)計(jì)報(bào)告題目 縮距法出租車計(jì)價(jià)器設(shè)計(jì)姓 名:學(xué) 號(hào):專業(yè)班級(jí)指導(dǎo)老師所在學(xué)院:年 月 日縮距法出租車計(jì)價(jià)器設(shè)計(jì)摘要 隨著出租車行業(yè)的發(fā)展,對(duì)出租車計(jì)費(fèi)器的要求也越來越高。二十世紀(jì)后半期,隨著集成電路和計(jì)算機(jī)技術(shù)的飛速發(fā)展,單片機(jī)技術(shù)也得到了飛速發(fā)展,基于單片機(jī)的出租車計(jì)費(fèi)器不僅可以解決電子系統(tǒng)小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價(jià)格不斷降低,特別是對(duì)小批量、多品種的產(chǎn)品需求,單片機(jī)具有體積小、功能強(qiáng)可靠性高、價(jià)格低廉等一系列優(yōu)點(diǎn),不僅已成為工業(yè)測(cè)控領(lǐng)域普遍采用的智能化控制工具,而且已滲入到人們工作和和生活的各個(gè)角落,有力地推動(dòng)了
2、各行業(yè)的技術(shù)改造和產(chǎn)品的更新?lián)Q代,應(yīng)用前景廣闊。(使用單片機(jī)的外圍電路比較簡(jiǎn)單),在時(shí)間計(jì)數(shù)和速度的計(jì)算上便于擴(kuò)展功能很,系統(tǒng)能夠?qū)崿F(xiàn)升級(jí)。很多數(shù)值可以預(yù)先寫到芯片中。 本設(shè)計(jì)主要了解應(yīng)用單片機(jī)的定時(shí)器/計(jì)數(shù)器,以及中斷。這是一個(gè)比較小的系統(tǒng),故采用匯編語言來編輯。匯編語言是一種編譯型程序設(shè)計(jì)語言,它具有編譯速度快,占用系統(tǒng)空間小,具有一定的助記可讀性等特點(diǎn)。本系統(tǒng)假設(shè)起步價(jià)5.0元,超過三公里開始計(jì)費(fèi),每公里加2元。 關(guān)鍵詞:?jiǎn)纹瑱C(jī);霍爾傳感器;數(shù)碼管目錄1 概述3 1.1基本要求3 1.2設(shè)計(jì)參數(shù)3 1.3系統(tǒng)原理32 系統(tǒng)總體方案及硬件設(shè)計(jì)4 2.1 設(shè)計(jì)方案介紹42.2單片機(jī)的概念42
3、.3A44E霍爾傳感器檢測(cè)單元52.4 計(jì)時(shí)與時(shí)間顯示模塊電路設(shè)計(jì)6 2.5 鍵盤調(diào)整單元7 2.6鍵盤程序83 軟件設(shè)計(jì)9 3.1模塊介紹9 3.2 程序流程圖104 Proteus軟件仿真115課程設(shè)計(jì)體會(huì)11參考文獻(xiàn)12附1:源程序代碼12附2:系統(tǒng)原理圖221 概述1.1基本要求(1)能顯示里程,單位為公里,最后一位為小數(shù)位。(2)能顯示金額數(shù),單位為元,最后一位為小數(shù)位。(3)可設(shè)定單程價(jià)格和往返價(jià)格,單程價(jià)格為2元/公里,往返價(jià)格為1.5元/公里。(4)車速3總金額=起步價(jià)總金額+=(里程-3)*單價(jià)總金額+=等待時(shí)間*等待單價(jià)總金額+=等待時(shí)間*等待單價(jià)返 回總金額=起步價(jià)4 P
4、roteus軟件仿真圖7 整體硬件電路圖 5課程設(shè)計(jì)體會(huì) 經(jīng)過這些天有關(guān)于出租車計(jì)價(jià)器的課程設(shè)計(jì),使我對(duì)單片機(jī)的應(yīng)用有了更深的了解。在課程設(shè)計(jì)的過程中,還是碰到了許多的問題。比如,對(duì)于數(shù)碼管動(dòng)態(tài)掃描顯示和鍵盤的延時(shí)防抖的綜合編程不能較好地解決;對(duì)于代碼的前后順序及調(diào)用掌握得還不夠好;對(duì)于一些相關(guān)的應(yīng)用軟件沒能熟練掌握。通過這幾天晚上的苦想和反復(fù)調(diào)試,以及參考網(wǎng)上的程序,最終還是把問題解決了。 通過這次課程設(shè)計(jì),我最大的收獲就是自己的動(dòng)手能力和獨(dú)立解決問題的能力得到了很大的提高,也充分體會(huì)到了自己設(shè)計(jì)東西的樂趣、學(xué)會(huì)查閱資料和對(duì)別人的東西融會(huì)變通的重要性,也明白了很多知識(shí)光靠趴在書本上學(xué)是學(xué)不到
5、其中的精髓的,必須親自去試著實(shí)踐,親自去經(jīng)歷才能對(duì)它們真正的掌握,凡事都要自己去動(dòng)下手,去實(shí)踐一下,遇到困難,永遠(yuǎn)不要沮喪氣餒。在動(dòng)手的過程中,不僅能增強(qiáng)實(shí)踐能力,而且在理論上可以有更深的認(rèn)識(shí);這次設(shè)計(jì)給了我極大的鼓舞和信心,相信在以后的學(xué)習(xí)中可以通過不斷的摸索和實(shí)踐來提高其他方面的知識(shí)。通過本次課程設(shè)計(jì),又使我學(xué)到了許多書本上無法學(xué)到的知識(shí),也使也深該體會(huì)到單片機(jī)技術(shù)應(yīng)用領(lǐng)域的廣泛,不僅使我對(duì)學(xué)過的單片機(jī)知識(shí)有了很多的鞏固,同時(shí)也對(duì)單片機(jī)這一門課程產(chǎn)生了更大的興趣。在本次課程設(shè)計(jì)過程中,我學(xué)會(huì)了在網(wǎng)絡(luò)上查找有關(guān)本設(shè)計(jì)的各硬件的資源,其中包括:AT89S51單片機(jī)及其引腳說明、555引腳圖及其
6、引腳功能等,為本次課程設(shè)計(jì)提供了一定的資料。也為以后的進(jìn)一步學(xué)習(xí)打下了堅(jiān)實(shí)的基礎(chǔ)。參考文獻(xiàn)1張友德趙志英涂時(shí)亮編 單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn)上海:復(fù)旦大學(xué)出版社2005.12全書2徐光翔單片機(jī)原理接口及應(yīng)用南京大學(xué)出版社3張淑清等.單片微型計(jì)算機(jī)接口技術(shù)及其應(yīng)用北京:國(guó)防工業(yè)出版社,4王曉君等.MCS-51及兼容單片機(jī)原理與選型北京:電子工業(yè)出版社5張?chǎng)?、華臻、陳書謙單片機(jī)原理及應(yīng)用M電子工業(yè)出版社,2005P1101366丁元杰、吳大偉單片微機(jī)實(shí)題集與實(shí)驗(yàn)指導(dǎo)書M機(jī)械工業(yè)出版社,2004P1241257附1:源程序代碼#include#include #define uchar unsign
7、ed char#define uint unsigned int#define delayNOP(); _nop_();_nop_();_nop_();_nop_();_nop_();uchar code table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;sbit exter=P33; sbit key0=P10; sbit key1=P11; sbit key2=P12; sbit key3=P13; sbit p30=P30; /sbit p31=P31;sbit p32=P32;sbit p34=P34;sbit p35=P3
8、5;sbit p36=P36;sbit p37=P37;sbit SDA=P22; sbit SCL=P23;uint inter,aa,bb,temp,temp1;uint zongjine,licheng,dengdai;uint key3num,qiehuantemp,delaytemp;uchar danjia1,danjia2,danjia3,danjia,qibu;void delay(uint x) int i,j; for(i=x;i0;i-) for(j=340;j0;j-);void start() SDA = 1; SCL = 1; delayNOP(); SDA = 0
9、; delayNOP(); SCL = 0; void stop() SDA = 0; delayNOP(); SCL = 1; delayNOP(); SDA = 1;void respons() uchar i; SCL=1; delayNOP(); while(SDA=1)&(i250) i+; SCL=0; delayNOP();uchar read_byte() uchar i,j; for(i=0;i8;i+) SCL=1; j=1; j|=SDA; SCL=0; return(j);void write_byte(uchar date) uchar i,temp; temp=da
10、te; for(i=0;i8;i+) temp=temp1; SCL=0; delayNOP(); SDA=CY; delayNOP(); SCL=1; delayNOP(); SCL=0; delayNOP(); SDA=1; delayNOP();void write_data(uchar addr, uchar date) start(); write_byte(0xa0); respons(); write_byte(addr); respons(); write_byte(date); respons(); stop();uchar read_data(uchar addr) uch
11、ar date; start(); write_byte(0xa0); respons(); write_byte(addr); respons(); start(); write_byte(0xa1); respons(); date=read_byte(); stop(); return date;void display(uint zongjine0,uint licheng0,uint danjia0) uint jbai,jshi,jge,lshi,lge,dshi,dge; uint numwei,numshu; jbai=zongjine0/100; jshi=zongjine0
12、%100/10; jge=zongjine0%100%10; lshi=licheng0/10; lge=licheng0%10; dshi=danjia0/10; dge=danjia0%10; if(aa) aa=0; numshu+; if(numshu=7) numshu=0; P3=0xff; switch(numwei) case 0:p30=0;P0=tablejbai;break; case 1:p31=0;P0=tablejshi&0x7f;break; case 2:p32=0;P0=tablejge;break; case 3:p34=0;P0=tablelshi;bre
13、ak; case 4:p35=0;P0=tablelge;break; case 5:p36=0;P0=tabledshi&0x7f;break; case 6:p37=0;P0=tabledge;break; numwei+; if(numwei=7) numwei=0; void keyscan() if(key3=0) delay(5); if(key3=0) key3num=1; while(!key3); delay(5); while(!key3); while(key3num) if(key3num=1) if(key1=0) delay(5); if(key1=0) danji
14、a1+; if(danjia1=100) danjia1=0; while(!key1); delay(5); while(!key1); if(key2=0) delay(5); if(key2=0) danjia1-; if(danjia1=-1) danjia1=99; while(!key2); delay(5); while(!key2); display(1,0,danjia1); if(key3num=2) write_data(1,danjia1); if(key1=0) delay(5); if(key1=0) danjia2+; if(danjia2=100) danjia
15、2=0; while(!key1); delay(5); while(!key1); if(key2=0) delay(5); if(key2=0) danjia2-; if(danjia2=-1) danjia2=99; while(!key2); delay(5); while(!key2); display(2,0,danjia2); if(key3num=3) write_data(2,danjia2); if(key1=0) delay(5); if(key1=0) danjia3+; if(danjia3=100) danjia3=0; while(!key1); delay(5); while(!key1); if(key2=0) delay(5); if(key2=0) danjia3-; if(danjia3=-1) danjia3=99; while(!key2); delay(5); while(!key2); display(3,0,danjia3); if(key3num=4) write_data(3,danjia3); if(key1=0) delay(5); if(key1=0) qibu+; if(qibu=100) qibu=0; while(!key1); del
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信息技術(shù)教學(xué)資源開發(fā)能力提升計(jì)劃
- 實(shí)驗(yàn)室感染風(fēng)險(xiǎn)管理培訓(xùn)計(jì)劃
- 幼兒園中班第一學(xué)期環(huán)境保護(hù)計(jì)劃
- 中學(xué)寢室行為習(xí)慣養(yǎng)成工作計(jì)劃
- 城鎮(zhèn)小學(xué)一年級(jí)上冊(cè)語文第二單元教學(xué)計(jì)劃
- 四年級(jí)心理健康支持服務(wù)計(jì)劃
- 小學(xué)四年級(jí)班主任安全管理工作計(jì)劃
- 二年級(jí)上冊(cè)法治意識(shí)培養(yǎng)教學(xué)計(jì)劃
- 慢性蕁麻疹護(hù)理課件
- 結(jié)核性中耳炎護(hù)理措施
- GB 28755-2012簡(jiǎn)易升降機(jī)安全規(guī)程
- 鈷領(lǐng)域:華友鈷業(yè)企業(yè)組織結(jié)構(gòu)及部門職責(zé)
- 內(nèi)容參考zipc教程
- FZ/T 43022-2011莨綢工藝飾品
- 皮部經(jīng)筋推拿技術(shù)
- 基金投資管理系統(tǒng)O32用戶手冊(cè)-股指期貨套保系統(tǒng)
- 機(jī)械原理課程設(shè)計(jì)-自動(dòng)打印機(jī)設(shè)計(jì)說明書
- 冰山模型提出者麥克利蘭教授6族勝任力分析模型
- 建設(shè)工程消防設(shè)計(jì)審查申報(bào)表
- 江西省中考語文備考及答題技巧——語文考點(diǎn)及答題策略-人教版初中九年級(jí)全冊(cè)語文素材
- 成立生物安全委員會(huì)及工作制度管理辦法和職責(zé)
評(píng)論
0/150
提交評(píng)論