版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 河南理工大學(xué)河南理工大學(xué)河南理工大學(xué)單片機(jī)應(yīng)用與仿真訓(xùn)練單片機(jī)應(yīng)用與仿真訓(xùn)練設(shè)計(jì)報(bào)告設(shè)計(jì)報(bào)告基于單片機(jī)的出租車計(jì)價(jià)器的設(shè)計(jì)基于單片機(jī)的出租車計(jì)價(jià)器的設(shè)計(jì)姓 名: 學(xué) 號(hào): 專業(yè)班級(jí): 指導(dǎo)老師: 所在學(xué)院: 電氣工程與自動(dòng)化 2011 年 7 月 1 日基于基于 51 單片機(jī)原理出租車計(jì)價(jià)器的設(shè)計(jì)單片機(jī)原理出租車計(jì)價(jià)器的設(shè)計(jì)河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 摘要摘要本設(shè)計(jì)的是一個(gè)基于單片機(jī) at89s52 的出租車自動(dòng)計(jì)費(fèi)設(shè)計(jì),附有復(fù)位電路,時(shí)鐘電路,鍵盤電路等。復(fù)位電路是單片機(jī)的初始化操作,除了正常的初始化外,為擺脫困境,通過復(fù)位電路可以重新開始。時(shí)鐘電路采用
2、12mhz 的晶振,作為系統(tǒng)的時(shí)鐘源,具有較高的準(zhǔn)確性。在上電時(shí)四位共陰極 5461as 數(shù)碼管顯示最初的起步價(jià),里程收費(fèi),等待時(shí)間收費(fèi)三種收費(fèi),通過按鍵可以調(diào)整起步價(jià),里程收費(fèi),等待時(shí)間收費(fèi)。通過按鍵模擬出租車的運(yùn)行,暫停,停止。在 5461as 液晶上可以顯示運(yùn)行的時(shí)間,運(yùn)行時(shí)暫停的時(shí)間,通過計(jì)算可以得出總共的費(fèi)用和總的路程。在這里主要是以 at89s52 單片機(jī)為核心控制器,p0 口接 5461as 液晶顯示模塊,p1 口接按鍵的,通過按鍵輸入。關(guān)鍵詞關(guān)鍵詞:?jiǎn)纹瑱C(jī) at89c51; at89s52;5461as 液晶;出租車計(jì)費(fèi)器;河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 1 -目目 錄錄前
3、前 言言.- 2 -第一章第一章 出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì)要求與設(shè)計(jì)方案出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì)要求與設(shè)計(jì)方案 .- 3 -1.1出租車計(jì)價(jià)器設(shè)計(jì)要求.- 3 -1.2系統(tǒng)主要功能.- 3 -1.3方案論證與比較.- 3 -第二章第二章 出租車計(jì)價(jià)系統(tǒng)的硬件設(shè)計(jì)出租車計(jì)價(jià)系統(tǒng)的硬件設(shè)計(jì).- 5 -2.1振蕩電路 .- 5 -2.2復(fù)位電路設(shè)計(jì).- 5 -2.3鍵盤接口電路.- 6 -2.4顯示電路 .- 7 -2.5路程測(cè)量部分.- 7 -2.6單片機(jī)各引腳功能說明.- 8 -2.75461as 液晶的簡(jiǎn)介 .- 9 -第三章第三章 出租車計(jì)價(jià)系統(tǒng)出租車計(jì)價(jià)系統(tǒng)的軟件設(shè)計(jì)的軟件設(shè)計(jì).- 12 -3.1
4、單片機(jī)資源使用.- 12 -3.2中斷子函數(shù).- 12 -3.3判鍵子函數(shù).- 13 -3.4顯示子程序.- 13 -3.5總程序流程框圖.- 15 -第四章第四章 proteus 的簡(jiǎn)介的簡(jiǎn)介.- 16 -4.1proteus介紹.- 16 -第五章第五章 設(shè)計(jì)體會(huì)與小結(jié)設(shè)計(jì)體會(huì)與小結(jié).- 17 -參考文獻(xiàn)參考文獻(xiàn).- 18 -附附 錄錄.- 19 -一源程序.- 19 -二設(shè)計(jì)總圖.- 25 -河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 2 -前前 言言出租車計(jì)價(jià)器是出租車營(yíng)運(yùn)收費(fèi)的專用智能化儀表,隨著電子技術(shù)的發(fā)展,出租車計(jì)價(jià)器技術(shù)也在不斷進(jìn)步和提高。國(guó)內(nèi)出租車計(jì)價(jià)器已經(jīng)經(jīng)歷了4 個(gè)階段的發(fā)展。
5、從傳統(tǒng)的全部由機(jī)械元器件組成的機(jī)械式,到半電子式即用電子線路代替部分機(jī)械元器件的出租車計(jì)價(jià)器;再從集成電路式到目前的單片機(jī)系統(tǒng)設(shè)計(jì)的出租車計(jì)價(jià)器。出租車計(jì)價(jià)器計(jì)費(fèi)是否準(zhǔn)確、出租車司機(jī)是否作弊才是乘客最關(guān)心的問題,而計(jì)價(jià)器營(yíng)運(yùn)數(shù)據(jù)的管理是否方便才是出租車司機(jī)最關(guān)注的。因此怎樣設(shè)計(jì)出一種既能有效防止司機(jī)作弊又能方便司機(jī)的計(jì)價(jià)器尤為重要。因此, 本文以單片機(jī)a t89s52 為核心設(shè)計(jì)一款多功能出租車計(jì)價(jià)器,該計(jì)價(jià)器能實(shí)現(xiàn)按時(shí)間和里程綜合計(jì)算車價(jià),能顯示時(shí)間、里程、單價(jià)、總車價(jià)等相關(guān)信息顯示。它比市場(chǎng)上的一些計(jì)價(jià)器使用更方便,功能更全,還具有有效防止司機(jī)作弊和系統(tǒng)穩(wěn)定性好的優(yōu)點(diǎn)。河南理工大學(xué)大學(xué)課程
6、設(shè)計(jì)說明書 - 3 -第一章第一章 出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì)要求與設(shè)計(jì)方案出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì)要求與設(shè)計(jì)方案1.1 出租車計(jì)價(jià)器出租車計(jì)價(jià)器設(shè)計(jì)要求設(shè)計(jì)要求設(shè)計(jì)一個(gè)出租車自動(dòng)計(jì)費(fèi)器,計(jì)費(fèi)包括起步價(jià)、行車?yán)锍逃?jì)費(fèi)、二部分,用 5461as 液晶 顯示總金額,運(yùn)行時(shí)間,暫停時(shí)間,最大值為 99.9 元,起步價(jià)為 5.0 元,3km 之內(nèi)起步價(jià)計(jì)費(fèi),超過 3km,增加 2.0 元(即 1km 增加 2.0 元),用液晶顯示總里程,同時(shí)用液晶顯示等待時(shí)間和運(yùn)行花費(fèi)時(shí)間。、計(jì)費(fèi)功能費(fèi)用的計(jì)算是按行駛里程收費(fèi)。設(shè)起步價(jià)為 5.00 元。1、當(dāng)里程3km 時(shí),每公里按 2.0 元計(jì)費(fèi)、顯示功能1、顯示行駛里程:
7、用四位數(shù)字顯示,顯示方式為“xxxx”,單位為 km。計(jì)程范圍 0-99km,精確到 1km。2、顯示等候時(shí)間:用兩位數(shù)字顯示,顯示方式為“xx”,單位為 min。計(jì)時(shí)范圍 0-59min,精確到 1min。3、顯示總費(fèi)用:用四位數(shù)字顯示,顯示方式為“xxx.x”,單位為元。計(jì)價(jià)范圍 0-999.9 元,精確到 0.1 元。1.2 系統(tǒng)主要功能系統(tǒng)主要功能本出租車自動(dòng)計(jì)費(fèi),上電后顯示最初的起步價(jià),里程計(jì)費(fèi)單價(jià),等待時(shí)間計(jì)費(fèi)單價(jià),通過按鍵可以調(diào)節(jié)起步價(jià),里程計(jì)費(fèi)單價(jià),等待時(shí)間計(jì)費(fèi)單價(jià)。同時(shí)具有運(yùn)行,暫停,停止等狀態(tài),可以顯示運(yùn)行的時(shí)間,同時(shí)可以顯示暫停的時(shí)間,具有累加功能,暫停和運(yùn)行時(shí)間在暫停和
8、運(yùn)行前一次的狀態(tài)上計(jì)時(shí)。出租車停止后能夠顯示行駛的總費(fèi)用。1.3 方案論證與比較方案論證與比較方案一:采用數(shù)字電子技術(shù),利用 555 定時(shí)芯片構(gòu)成多諧振蕩器,或采用外圍的晶振電路作為時(shí)鐘脈沖信號(hào),采用計(jì)數(shù)芯片對(duì)脈沖盡心脈沖的計(jì)數(shù)和分河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 4 -頻,最后通過譯碼電路對(duì)數(shù)據(jù)進(jìn)行譯碼,將譯碼所得的數(shù)據(jù)送給數(shù)碼管顯示,一下是該方案的流程框圖,方案一如圖 1-1 所示:圖 1-1 方案一案二:采用 eda 技術(shù),根據(jù)層次化設(shè)計(jì)理論,該設(shè)計(jì)問題自頂向下可分為分頻模塊,控制模塊 計(jì)量模塊、譯碼和動(dòng)態(tài)掃描顯示模塊,其系統(tǒng)框圖如圖1-2 所示:圖 1-2 方案二方案三:采用 mcu
9、 技術(shù),通過單片機(jī)作為主控器,利用 1602 字符液晶作為顯示電路,采用外部晶振作為時(shí)鐘脈沖,通過按鍵可以方便調(diào)節(jié),以下是方案三的系統(tǒng)流程圖,本方案主要是必須對(duì)于數(shù)字電路比較熟悉,成本又不高。方案圖如圖 1-3 所示:河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 5 -圖 1-3 方案三方案總結(jié):通過各個(gè)方案的比較,本次采用方案三,不但控制簡(jiǎn)單,而且成本低廉,設(shè)計(jì)電路簡(jiǎn)單。河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 6 -河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 7 -第二章第二章 出租車計(jì)價(jià)系統(tǒng)的硬件設(shè)計(jì)出租車計(jì)價(jià)系統(tǒng)的硬件設(shè)計(jì)4.14.1 振蕩電路振蕩電路單片機(jī)內(nèi)部有一個(gè)高增益、反相放大器,其輸入端為芯片引腳 x
10、tal1,其輸出端為引腳 xtal2。通過這兩個(gè)引腳在芯片外并接石英晶體振蕩器和兩只電容(電容和一般取 33pf)。這樣就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。 振蕩電路脈沖經(jīng)過二分頻后作為系統(tǒng)的時(shí)鐘信號(hào),再在二分頻的基礎(chǔ)上三分頻產(chǎn)生 ale 信號(hào),此時(shí)得到的信號(hào)時(shí)機(jī)器周期信號(hào)。振蕩電路如圖 2-1 所示:圖 2-1 振蕩電路4.24.2 復(fù)位電路設(shè)計(jì)復(fù)位電路設(shè)計(jì)復(fù)位操作有兩種基本形式:一種是上電復(fù)位,另一種是按鍵復(fù)位。按鍵復(fù)位具有上電復(fù)位功能外,若要復(fù)位,只要按圖中的 reset 鍵,電源 vcc 經(jīng)電阻r1、r2 分壓,在 reset 端產(chǎn)生一個(gè)復(fù)位高電平。上電復(fù)位電路要求接通電源后,通過外部電容充電
11、來實(shí)現(xiàn)單片機(jī)自動(dòng)復(fù)位操作。上電瞬間 reset 引腳獲得高電平,隨著電容的充電,rerst 引腳的高電平將逐漸下降。rerst 引腳的高電平只要能保持足夠的時(shí)間(2 個(gè)機(jī)器周期) ,單片機(jī)就可以進(jìn)行復(fù)位操作。按鍵復(fù)位電路圖如圖 2-2 所示。河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 8 -圖2-2 at89c52引腳配置4.34.3 鍵盤接口電路鍵盤接口電路獨(dú)立式鍵盤:獨(dú)立式鍵盤中,每個(gè)按鍵占用一根 i/o 口線,每個(gè)按鍵電路相對(duì)獨(dú)立。i/o 口通過按鍵與地相連,i/o 口有上拉電阻,無鍵按下時(shí),引腳端為高電平,有鍵按下時(shí),引腳電平被拉低。i/o 口內(nèi)部有上拉電阻時(shí),外部可不接上拉電阻。鍵盤接口電路
12、如圖 2-3 所示:圖2-3鍵盤接口電路4.44.4 顯示顯示電路電路對(duì)于現(xiàn)實(shí)電路我們可以采用數(shù)碼管,也可以采用液晶顯示,液晶又分字符型和點(diǎn)陣型,我們使用的液晶是字符型液晶,并且?guī)ё址麕斓?,不需要查找代碼。英文字符就可。液晶電路使用時(shí),如果發(fā)現(xiàn)液晶不亮可以調(diào)節(jié)連接液晶的點(diǎn)位器,改變液晶的亮度。顯示電路如圖 2-4 所示:河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 9 -圖 2-4 數(shù)碼管封裝圖及數(shù)據(jù)線與數(shù)碼管管腳關(guān)系4.54.5 路程測(cè)量部分路程測(cè)量部分出租車中需要一個(gè)能準(zhǔn)確獲得車輪轉(zhuǎn)動(dòng)即路量信號(hào)的裝置,以得到標(biāo)準(zhǔn)的脈沖信號(hào)送入單片機(jī)的定時(shí)/ 計(jì)數(shù)器 t1 即 p3. 5 引腳,利用單片機(jī)的 t1 的
13、計(jì)數(shù)功能完成 100 次的計(jì)數(shù)后產(chǎn)生一中斷來完成路程的測(cè)量。(設(shè)車輪周長(zhǎng)為 1 m ,則霍爾傳感器每產(chǎn)生 100 個(gè)脈沖便表示車已行程 0. 1 km ,根據(jù)際情況在程序中進(jìn)行設(shè)置) 。汽車聯(lián)軸器按圓周間隔嵌入磁鋼,用霍傳感器集成芯片 a44e 測(cè)并輸出脈沖,其工作原理如圖 4 所示,霍爾傳感器集成芯片 a44e 有信號(hào)轉(zhuǎn)換、電壓放大、等功能,為增加其抗干擾的能力,經(jīng)過 74l s14 對(duì)信號(hào)整形后再通過光偶送入 p3. 5 引腳。圖 2-5 路程測(cè)量電路河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 10 -4.64.6 單片機(jī)各引腳功能說明單片機(jī)各引腳功能說明at89s52電路圖如圖 2-6 所示:
14、vcc:供電電壓。gnd:接地。p0 口:p0 口為一個(gè) 8 位漏級(jí)開路雙向 i/o 口,每腳可吸收 8ttl 門流。當(dāng) p1 口的管腳第一次寫 1 時(shí),被定義為高阻輸入。p0 能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在 fiash 編程時(shí),p0 口作為原碼輸入口,當(dāng) fiash 進(jìn)行 圖 2-6校驗(yàn)時(shí),p0 輸出原碼,此時(shí) p0 外部必須被拉高。 圖 2-6 at89s52 p1 口:p1 口是一個(gè)內(nèi)部提供上拉電阻的 8 位雙向 i/o 口,p1 口緩沖器能接收輸出 4ttl 門電流。 p1 口管腳寫入 1 后,被內(nèi)部上拉為高,可用作輸入,p1 口被外部下拉為低電平時(shí),
15、將輸出電流,這是由于內(nèi)部上拉的緣故。在 flash 編程和校驗(yàn)時(shí),p1 口作為第八位地址接收。 p2 口:p2 口為一個(gè)內(nèi)部上拉電阻的 8 位雙向 i/o 口,p2 口緩沖器可接收,輸出 4 個(gè) ttl門電流,當(dāng) p2 口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),p2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2 口當(dāng)用于外部程序存儲(chǔ)器或 16 位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),p2 口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),p2 口輸出其特殊功能寄存器的內(nèi)容。p2 口在 flash 編程和校驗(yàn)時(shí)
16、接收高八位地址信號(hào)和控制信號(hào)。p3 口:p3 口管腳是 8 個(gè)帶內(nèi)部上拉電阻的雙向 i/o 口,可接收輸出 4 個(gè)ttl 門電流。當(dāng) p3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,p3 口將輸出電流(ill)這是由于上拉的緣故。p3 口也可作為 at89s52 的一些特殊功能口,p3 口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。rst:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持 rst 腳兩個(gè)機(jī)器周期的高電河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 11 -平時(shí)間。ale/prog:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 flash
17、編程期間,此引腳用于輸入編程脈沖。在平時(shí),ale 端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的 1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè) ale 脈沖。如想禁止 ale 的輸出可在 sfr8eh 地址上置 0。此時(shí), ale 只有在執(zhí)行 movx,movc 指令是 ale 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ale 禁止,置位無效。/psen:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/psen 有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/psen 信號(hào)將不出現(xiàn)。/
18、ea/vpp:當(dāng)/ea 保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000h-ffffh) ,不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式 1 時(shí),/ea 將內(nèi)部鎖定為reset;當(dāng)/ea 端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在 flash 編程期間,此引腳也用于施加 12v 編程電源(vpp) 。xtal1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。xtal2:來自反向振蕩器的輸出。4.74.7 5461as 液晶的簡(jiǎn)介液晶的簡(jiǎn)介5461as 共陰四位數(shù)碼管主要技術(shù)參數(shù)如表 2-1 所示:顯示容量:16*2 個(gè)字符芯片工作電壓:4.55.5v工作電流:2.0ma(5.0v)模塊最佳工作電壓:5.
19、0v字符尺寸:2.95*4.35(w*h)mm表 2-1 5461as 共陰四位數(shù)碼管主要技術(shù)參數(shù)接口信號(hào)說明如圖 2-6 所示:河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 12 -圖 2-5 5461as 共陰四位數(shù)碼管接口信號(hào)說明控制器接口說明(hd44780 及兼容芯片)1、 基本操作時(shí)序a 讀狀態(tài):輸入:rs=l, rw=h, e=h 輸出:d0d7=狀態(tài)字b 寫指令:輸入:rs=l, rw=l, d0d7=指令碼 輸出:無 e=高脈沖c 讀數(shù)據(jù):輸入:rs=h, rw=l, e=h 輸出:d0d7=數(shù)據(jù)d 寫數(shù)據(jù):輸入:rs=h, rw=l, d0d7=數(shù)據(jù) 輸出:無 e=高脈沖狀態(tài)字說明如
20、表 2-2 所示:sta7d7sta6d6sta5 d5sta4 d4sta3 d3sta2 d2sta1 d1sta0 d0表 2-2 狀態(tài)字說明(a)sta0-6當(dāng)前數(shù)據(jù)地址指針的數(shù)值sta7讀寫操作使能1:禁止 0:允許表 2-3 狀態(tài)字說明(b)注:對(duì)控制器進(jìn)行讀寫操作之前,都必須進(jìn)行讀寫檢測(cè),確保 sta7 為 0ram 地址映射圖控制器內(nèi)部帶有 80*8 位的 ram 緩沖區(qū),對(duì)應(yīng)關(guān)系如下圖 2-5 所示:表 2-4 ram 地址映射圖 lcd16 字*2 行000102030405060708090a0b0c0d0e0f10 27404142434445464748494a4b4
21、c4d4e4f50 67河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 13 -顯示模式設(shè)置如表 2-5 所示:指令碼功能00111000設(shè)置 16*2 顯示,5*7 點(diǎn)陣,8 位數(shù)據(jù)接口表 2-5 顯示模式設(shè)置顯示開關(guān)及光標(biāo)設(shè)置如表 2-6 所示:指令碼功能00001dcbd=1 開顯示; d=0 關(guān)顯示c=1 顯示光標(biāo); c=0 不顯示光標(biāo)b=1 光標(biāo)閃爍; b=0 光標(biāo)不顯示000001nsn=1 當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加一,且光標(biāo)加一n=0 當(dāng)讀或?qū)懸粋€(gè)字后地址指針減一,且光標(biāo)減一s=1 當(dāng)寫一個(gè)字符后,整屏顯示左移(n=1)或右移(n=0),以得到光標(biāo)不移動(dòng)而屏幕移動(dòng)的效果s=0 當(dāng)寫一個(gè)字
22、符,整屏顯示不移動(dòng)表 2-4 顯示開關(guān)及光標(biāo)設(shè)置數(shù)據(jù)控制控制器內(nèi)部沒有一個(gè)數(shù)據(jù)地址指針,用戶可通過它們來訪問內(nèi)部的全部 80 字節(jié)ram。河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 14 -第三章第三章 出租車計(jì)價(jià)系統(tǒng)出租車計(jì)價(jià)系統(tǒng)的軟件設(shè)計(jì)的軟件設(shè)計(jì)4.14.1 單片機(jī)資源使用單片機(jī)資源使用在本次設(shè)計(jì)中像電路鍵盤用到了 p1 口,其中 p1.0 到 p1.4 口作為鍵盤的輸入,直流電機(jī)電路的控制線用了 p2 口線,p3.0、p3.1、p3.2 分別為 led 信號(hào)控制腳。顯示電路用到了 p0 和 p2 口,p0 口為液晶的數(shù)據(jù)口。4.2 中斷子函數(shù)中斷子函數(shù)對(duì)于中斷程序,只要定時(shí)器計(jì)數(shù)滿就會(huì)產(chǎn)生中斷
23、 50ms 中斷一次,共計(jì) 20次,秒鐘加 1,秒鐘計(jì)滿再分鐘加,當(dāng)分鐘加到 99 時(shí)全部清零。以下是中斷子函數(shù)的流程圖如圖 3-1 所示:圖 3-1 中斷子程序流程圖count+開始second+count=0是否產(chǎn)生中斷?count=20?second=60?minite+second=0minite=99?minite=0結(jié)束否否否否是是是是河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 15 -4.3 判鍵子函數(shù)判鍵子函數(shù)對(duì)于獨(dú)立式鍵盤判鍵,首先看有鍵按下不,如果有鍵按下則延時(shí)一會(huì)兒,在判斷是否真的有鍵按下,如果確實(shí)有鍵按下,在判鍵釋放,最后執(zhí)行鍵功能程序。判鍵子函數(shù)的流程框圖如圖 3-2 所示:
24、 圖 3-2 判鍵子程序流程圖4.4 顯示子程序顯示子程序1602 液晶是字符型液晶,它的內(nèi)部自帶字符庫,它可以寫兩行的字符,同時(shí)每行可以寫 40 個(gè)字符,在寫顯示程序的時(shí)候,我們先寫命令,再設(shè)定字符顯示,最后寫數(shù)據(jù),在每寫一次命令或數(shù)據(jù)都需要判斷液晶是否忙。液晶顯示程序流程圖如圖 3-3 所示:河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 16 -圖 3-3 顯示子程序流程圖圖 3-3 液晶顯示程序流程圖4.5 總程序流程框圖總程序流程框圖lcd初始化開始lcd寫命令lcd判忙p0.7=0?寫數(shù)據(jù)判忙p0.7=0?寫完成了?寫完成了?設(shè)置字符位置結(jié)束否否是是否否是是定時(shí)器初始化開始液晶初始化判斷按鍵函
25、數(shù)1v=?value1+10value2+5value3+5數(shù)據(jù)處理顯示函數(shù)jump_in=1?液晶清屏判斷按鍵函數(shù)v1=?運(yùn)行暫停停止數(shù)據(jù)處理顯示函數(shù)jump_out=1?液晶清屏清零函數(shù)結(jié)束否是v=1v=2v=3否是v1=1v1=2v1=3是否否是河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 17 -圖 3-4 整體程序流程圖河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 18 -第四章第四章 proteus 的簡(jiǎn)介的簡(jiǎn)介4.1 proteus 介紹介紹proteus 軟件是來自英國(guó) labcenter electronics 公司的 eda 工具軟件,它組合了高級(jí)原理布圖、混合模式 spice 仿真,pcb
26、設(shè)計(jì)以及自動(dòng)布線來實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)系統(tǒng)。此系統(tǒng)受益于 15 年來的持續(xù)開發(fā),被電子世界在其對(duì) pcb 設(shè)計(jì)系統(tǒng)的比較文章中評(píng)為最好產(chǎn)品“the route to pcb cad”。proteus 產(chǎn)品系列也包含了我們革命性的 vsm 技術(shù),用戶可以對(duì)基于微控制器的設(shè)計(jì)連同所有的周圍電子器件一起仿真。用戶甚至可以實(shí)時(shí)采用諸如led/lcd、鍵盤、rs232 終端等動(dòng)態(tài)外設(shè)模型來對(duì)設(shè)計(jì)進(jìn)行交互仿真。 其功能模塊:個(gè)易用而又功能強(qiáng)大的 isis 原理布圖工具;prospice 混合模型 spice 仿真;ares pcb 設(shè)計(jì)。prospice 仿真器的一個(gè)擴(kuò)展 proteus vsm:便于包
27、括所有相關(guān)的器件的基于微處理器設(shè)計(jì)的協(xié)同仿真。此外,還可以結(jié)合微控制器軟件使用動(dòng)態(tài)的鍵盤,開關(guān),按鈕,leds 甚至 lcd 顯示 cpu 模型。支持許多通用的微控制器,如 pic,avr,hc11 以及 8051。最新支持 arm。交互的裝置模型包括:led 和 lcd 顯示,rs232 終端,通用鍵盤,i2c,spi 器件。強(qiáng)大的調(diào)試工具,包括寄存器和存儲(chǔ)器,斷點(diǎn)和單步模式。iar c-spy 和 keil uvision2 等開發(fā)工具的源層調(diào)試。應(yīng)用特殊模型的 dll 界面-提供有關(guān)元件庫的全部文件。河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 19 -第五章第五章 設(shè)計(jì)體會(huì)與小結(jié)設(shè)計(jì)體會(huì)與小結(jié)
28、出租車計(jì)費(fèi)器系統(tǒng)的設(shè)計(jì)已經(jīng)全部完成,能按預(yù)期的效果進(jìn)行模擬汽車啟動(dòng),停止,暫停等功能并能夠通過 lcd 顯示車費(fèi)數(shù)目。本款出租車計(jì)價(jià)器包括單價(jià)輸出、單價(jià)調(diào)整、顯示當(dāng)前的系統(tǒng)時(shí)間等功能。另外,多功能出租車計(jì)價(jià)器還具有性能可靠、電路簡(jiǎn)單、成本低、實(shí)用性強(qiáng)等特點(diǎn),加上經(jīng)過優(yōu)化的程序,使其有很高的智能化水平。一個(gè)月來,經(jīng)過自己努力,基本上完成了設(shè)計(jì)要求的內(nèi)容,在系統(tǒng)可行性分析、原理圖設(shè)計(jì)等方面都作了許多實(shí)際工作,取得了一些成績(jī),同時(shí)也遇到了一些問題,存在一些不足。經(jīng)過這一個(gè)月的學(xué)習(xí),我覺得自己不論是在理論知識(shí)方面還是在動(dòng)手能力方面都有了不小的進(jìn)步,自己從中受益匪淺。這次設(shè)計(jì)很好的把以前學(xué)到的理論知識(shí)應(yīng)
29、用于實(shí)踐,使我認(rèn)識(shí)到理論知識(shí)與實(shí)踐之間有一定的差距,只有通過不斷的努力學(xué)習(xí)和實(shí)踐才能很好的把理論知識(shí)應(yīng)用到實(shí)踐當(dāng)中,也只有通過不斷的實(shí)踐才能對(duì)理論知識(shí)的理解。通過這次設(shè)計(jì)不僅學(xué)會(huì)了如何去查找相關(guān)資料,更重要的是通過查找資料和翻閱書籍學(xué)到了不少知識(shí),擴(kuò)大了知識(shí)面,提高了知識(shí)水平。經(jīng)過單元設(shè)計(jì)和系統(tǒng)設(shè)計(jì)鞏固了以前所學(xué)的專業(yè)知識(shí),自己真正認(rèn)識(shí)到理論聯(lián)系實(shí)際的重要性,為以后的學(xué)習(xí)和工作提供了很多有價(jià)值的經(jīng)驗(yàn)。通過這次設(shè)計(jì)不僅增強(qiáng)了自己的動(dòng)腦能力和動(dòng)手能力,也提高了我思考問題、分析問題、解決問題的能力,更重要的是學(xué)會(huì)用工程化的思想來解決問題。這在以前的學(xué)習(xí)過程中是不曾學(xué)到的。這次設(shè)計(jì)是我認(rèn)真認(rèn)識(shí)到完整、
30、嚴(yán)謹(jǐn)、科學(xué)分析問題、解決問題的思想是多么的重要,只有擁有了科學(xué)的態(tài)度才能設(shè)計(jì)出有用的產(chǎn)品。另外通過本次設(shè)計(jì),是我認(rèn)識(shí)到自己理論知識(shí)的應(yīng)用能力有很大的欠缺,需要在以后的學(xué)習(xí)中進(jìn)一步提高。河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 20 -參考文獻(xiàn)參考文獻(xiàn)1. 李廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ)m.第 3 版.北京航空航天大學(xué)出版社,20072. 李華.mcs-51 系列單片機(jī)實(shí)用接口技術(shù)m.北京航空航天大學(xué)出版社,19963. 李群芳,肖看.單片機(jī)原理接口與應(yīng)用.北京:清華大學(xué)出版社,20054. 朱承高.電工及電子技術(shù)手冊(cè)m.北京:高等教育出版社,19905. 高峰.單片微型應(yīng)用系統(tǒng)設(shè)計(jì)及實(shí)用技術(shù).北
31、京:機(jī)械工業(yè)出版社,20046. 胡輝,單片機(jī)原理及應(yīng)用設(shè)計(jì)21 世紀(jì)高等院校規(guī)劃教材m,水利水電出版社,2005.77.劉守義,單片機(jī)應(yīng)用技術(shù)m,西安:西安電子科技大學(xué)出版社,1996河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 21 -附附 錄錄一源程序一源程序#include #define uchar unsigned char #define uint unsigned int uchar qianwei,baiwei,shiwei,gewei; /顯示數(shù)據(jù)各個(gè)位置數(shù)字的臨時(shí)變量 char led_seg_code10=0 x3f,0 x06,0 x05b,0 x04f,0 x66,0 x6d
32、,0 x7d,0 x07,0 x7f,0 x6f;/段碼表示 0-9 uint tt,aa,pulse,distance,cost,danjia,wait,way;/定義路程、價(jià)錢、等待時(shí)間及一些全局的變量等; uchar dengdai,second,minute;/按鍵的定義,所有按鍵按下去為低電平sbit key0=p10; /清零sbit key1=p11; /切換路程與等待時(shí)間sbit key2=p12; /單程還是往返設(shè)置sbit key3=p13; /暫停按鈕sbit led1=p14;/ 指示 sbit led2=p15;sbit led3=p16;sbit led4=p17;
33、 bit key1_flag;/由于按鍵會(huì)自動(dòng)復(fù)位,這個(gè)為標(biāo)志位bit key2_flag;bit key3_flag;bit flag; /初始化函數(shù)void initial_data(void)distance=0;cost=0;second=0;minute=0;way=0;key1_flag=1; /key2_flag=0; /單程 or 往返,接指示燈;key3_flag=1; /暫停,接指示燈;flag=0;pulse=0;dengdai=0;河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 22 -led1=1; /雙程指示led2=1; /暫停指示led3=1; /堵車指示led4=1; /
34、 等待時(shí)間切換標(biāo)志 /暫停程序void zanting(void) if(key3_flag) ex0=0; /關(guān)閉中斷 定時(shí)器tr0=0;elseex0=1;tr0=1; key3_flag=!key3_flag; /計(jì)算數(shù)據(jù)處理 void jisuan()if(pulse180) distance=pulse/6+way/3000;cost=danjia*(distance-30)/10+50; wait=minute*100+second; /顯示的輔助程序,分離一個(gè)數(shù)的各個(gè)數(shù)字 void fenli(uint temp) /數(shù)據(jù)的分離處理 河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 23 -i
35、f(temp9999) temp=9999;qianwei=temp/1000;baiwei=temp/100%10;shiwei=temp%100/10;gewei=temp%10; /延時(shí)約 1ms,數(shù)碼管顯示時(shí)使用void diplay_delay(void) uchar i; for(i=0;i0;i-) for(j=340;j0;j-); /鍵盤的掃描 void keyscan() if(key1=0) / 按鍵消抖并判斷按下去的次數(shù)為基數(shù)還是偶數(shù) delay(5); if(key1=0) key1_flag=!key1_flag; if(key0=0) / 清零 delay(5);
36、 if(key0=0) initial_data(); if(key3=0) / 暫停 delay(5); if(key3=0) zanting(); if(key2=0) / 單程還是往返 delay(5); if(key2=0) key2_flag=!key2_flag; /指示等掃描 led1=!key2_flag; / 指示,單程還是往返,燈低電平點(diǎn)亮; 往返亮; led2=key3_flag; / 指示,暫停時(shí)亮;河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 25 - led3=flag; / 指示是否等待; led4=key1_flag; /切換指示,顯示路程還是等待時(shí)間; diplay_d
37、elay(); /定時(shí)器初始化 void initial_time() tmod=0 x01;th0=(65536-10000)/256;tl0=(65536-10000)%256;ie=0 x83;it0=1; /外部邊沿觸發(fā)方式 tr0=1;/ 中斷記錄脈沖數(shù)void zd() interrupt 0 /中斷 0aa+;if(flag)pulse+; /進(jìn)入中途等待計(jì)價(jià) /* 定時(shí)器 *void time0() interrupt 1 /定時(shí) 0th0=(65536-10000)/256; /10mstl0=(65536-10000)%256;tt+;if(tt=100) /1s 采樣tt
38、=0;aa=aa/5; /速度(n*圈/s)if(aa=5) flag=0;else flag=1;aa=0;if(!flag) way+; dengdai+; if(dengdai=100) dengdai=0; second+; if(second=60)河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 26 - minute+;second=0; /主程序 void main(void) initial_data(); /初始化數(shù)據(jù) initial_time(); /初始化定時(shí)器 while(1) keyscan();jisuan(); led_show(); 河南理工大學(xué)大學(xué)課程設(shè)計(jì)說明書 - 27
39、 -二二設(shè)計(jì)總圖設(shè)計(jì)總圖ut2apodfxxc02gybkskcww97mrqqwhoj5tl15zt6jipyytycummtarp3v1n5luizi3xh3bhwyreko8d9g7nmzqowpjetldrw08gvs8dsdqqygc3ce7moo2tlf0jf1gk74iuxybmtivr97ckrfvqult5fn2t6mpjr6rbzvpsortzvij5nb5ndvvsr4iwr1twlfkglspzuhrjq3cmzu98euouijdlszqpmvrw9zkupxf8wfug9l2g9277g2rtipa1ypczeuqxpkbhtvdcooqozxuz3vjrzmoci
40、jym62zchmeootyes8ebmm932tbz2yo09rtszeys8zrd2yktj8l6jeazvajnfbtrylvsm6ofbftoxvrffn7owiygjlamkunxjybz5rrb7r4vsur9zpfzfmfsjhcfca37lnw2vvlrkn7r8psz1bn6oric5hu5z6hcxayqynpog8duybawqsl20csg06dh2sm8hltgpkicskrgopdpuhbj1lmpk7lydvc6nnmwl3fwhzftfvyaary7lhssxj10v3ph3y19bxyr77ib7cpzsu2tijqe3hkqkkau9kskcphkxuikvvyjzpg2yijrkqfbggovyqkuxnwi9omnjtt6qilzxtyrf7d20fbmabcfiixrqkusvnxbppfux
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆云南省云南大學(xué)附屬中學(xué)中考生物模擬預(yù)測(cè)題含解析
- 江西省南昌一中學(xué)2025屆中考二模生物試題含解析
- 2025年度商業(yè)綜合體攤位租賃合同
- 2025年度鐵藝大門制作安裝與知識(shí)產(chǎn)權(quán)保護(hù)合同
- 拖欠租金被解除合同答辯狀
- 美容院借給別人經(jīng)營(yíng)的合同
- GB/T 44926-2024納米技術(shù)微區(qū)表面及亞表面表征光學(xué)暗場(chǎng)共焦顯微法
- 2025屆福建省寧德市名校中考生物四模試卷含解析
- 江蘇省無錫市濱湖區(qū)重點(diǎn)中學(xué)2025屆中考生物仿真試卷含解析
- 湖南省岳陽臨湘市2025屆中考五模生物試題含解析
- 旅游文本翻譯策略之轉(zhuǎn)換法-語態(tài)轉(zhuǎn)換
- 食品進(jìn)駐超市的談判計(jì)劃書
- 辦公區(qū)域巡檢與安全檢查規(guī)定
- 宮頸癌篩查及預(yù)防講課課件
- 《跟單信用證統(tǒng)一慣例》UCP600中英文對(duì)照版
- 2023年數(shù)學(xué)競(jìng)賽AMC8試卷(含答案)
- SMA分子檢測(cè)進(jìn)展
- 醫(yī)師定期考核機(jī)構(gòu)信息登記表
- 風(fēng)力發(fā)電風(fēng)機(jī)拆除方案
- 杭州出租車區(qū)域考試復(fù)習(xí)備考題庫(含答案)
- 普通高中地理課程標(biāo)準(zhǔn)簡(jiǎn)介課件
評(píng)論
0/150
提交評(píng)論