單片機(jī)課程設(shè)計(jì)自行車?yán)锍逃?jì)速度計(jì)[14頁]_第1頁
單片機(jī)課程設(shè)計(jì)自行車?yán)锍逃?jì)速度計(jì)[14頁]_第2頁
單片機(jī)課程設(shè)計(jì)自行車?yán)锍逃?jì)速度計(jì)[14頁]_第3頁
單片機(jī)課程設(shè)計(jì)自行車?yán)锍逃?jì)速度計(jì)[14頁]_第4頁
單片機(jī)課程設(shè)計(jì)自行車?yán)锍逃?jì)速度計(jì)[14頁]_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、一、 概述1.1設(shè)計(jì)目的本設(shè)計(jì)采用AT89C52單片機(jī)作控制,利用霍爾元件等器件設(shè)計(jì)一個(gè)可用LED數(shù)碼管顯示當(dāng)前自行車行駛的距離及速度并具有超速報(bào)警功能的自行車?yán)锍?速度表,使其作為自行車的一種輔助工具,讓自行車的功用更強(qiáng)大,給人們帶來更多的方便。1.2課題簡(jiǎn)介自行車被發(fā)明及使用到現(xiàn)在已有兩百多年的歷史,在這兩百年間人類在不斷的嘗試與研發(fā)過程中,自行車發(fā)展的目的也從最早的代步工具轉(zhuǎn)換成休閑娛樂的用途,隨著生活水平的提高,人們希望自行車的功能更強(qiáng)大,而里程計(jì)/速度計(jì)正滿足了這個(gè)需求?,F(xiàn)在先進(jìn)的里程/速度計(jì)不僅能顯示實(shí)時(shí)的速度和里程,還顯示時(shí)間,甚至具有測(cè)量騎車人的心跳、顯示騎車人熱量消耗等功能。

2、由于時(shí)間有限,本設(shè)計(jì)完成的功能減為兩個(gè),即測(cè)量并通過LED數(shù)碼管進(jìn)行動(dòng)態(tài)顯示當(dāng)前的速度和里程,并在超速時(shí)發(fā)出警報(bào)。要求達(dá)到的各項(xiàng)指標(biāo)及實(shí)現(xiàn)方法如下:1. 利用霍爾傳感器產(chǎn)生里程數(shù)的脈沖信號(hào)。2. 對(duì)脈沖信號(hào)進(jìn)行計(jì)數(shù)。實(shí)現(xiàn):利用單片機(jī)自帶的計(jì)數(shù)器T1對(duì)霍爾傳感器脈沖信號(hào)進(jìn)行計(jì)數(shù)。3. 對(duì)數(shù)據(jù)進(jìn)行處理,要求用LED顯示里程總數(shù)和即時(shí)速度。實(shí)現(xiàn):利用軟件編程,對(duì)數(shù)據(jù)進(jìn)行處理得到需要的數(shù)值。最終實(shí)現(xiàn)目標(biāo):自行車的速度里程表具有里程、速度測(cè)試與顯示功能,采用單片機(jī)作控制,顯示電路可顯示里程及速度。 二、系統(tǒng)設(shè)計(jì)2.1總體設(shè)計(jì)方案采用AT89C52芯片,用霍爾元件將車輪的轉(zhuǎn)速轉(zhuǎn)換成電脈沖,經(jīng)過處理后送入單

3、片機(jī)。里程及速度的測(cè)量,是經(jīng)過AT89C52的定時(shí)/計(jì)數(shù)器測(cè)出總的脈沖數(shù)和每轉(zhuǎn)一圈的時(shí)間,再經(jīng)過單片機(jī)的計(jì)算得出,計(jì)算結(jié)果通過LED顯示器顯示出來。傳感器是獲取自然或生產(chǎn)領(lǐng)域中信息的關(guān)鍵器件,是現(xiàn)代信息系統(tǒng)和各種設(shè)備不可缺少的信息采集工具。磁傳感器是一種將磁學(xué)量信號(hào)轉(zhuǎn)變?yōu)殡娦盘?hào)的器件或裝置。隨著信息產(chǎn)業(yè)、工業(yè)自動(dòng)化、醫(yī)療儀器等的飛速發(fā)展和計(jì)算機(jī)應(yīng)用的普及,需要大量的傳感器將被測(cè)或被控的非電信號(hào)轉(zhuǎn)換成可與計(jì)算機(jī)兼容的電信號(hào)。作為輸入信號(hào),這就給磁傳感器的快速發(fā)展提供了機(jī)遇,形成了磁傳感器的產(chǎn)業(yè)。其中最具代表的磁傳感器就是霍爾傳感器,在自動(dòng)檢測(cè)系統(tǒng)中,利用霍爾傳感器測(cè)轉(zhuǎn)數(shù)是一種最基本的測(cè)量工作。單

4、片機(jī)是該設(shè)計(jì)的核心部件,它是信號(hào)從采集到輸出的橋梁,而且包括計(jì)算、定時(shí)、信息處理等功能。當(dāng)輪子每轉(zhuǎn)一圈,通過開關(guān)型霍爾元件傳感器采集到一個(gè)脈沖信號(hào),并從引腳12即P3.2外部中斷0端輸入,傳感器每獲取一個(gè)脈沖信號(hào)即對(duì)系統(tǒng)提供一次計(jì)數(shù)中斷。每次中斷代表車輪轉(zhuǎn)動(dòng)一圈,中斷數(shù)n、輪圈的周長為L,它們的乘積為里程值。計(jì)數(shù)器T1計(jì)算每轉(zhuǎn)一圈所用的時(shí)間t,就可以計(jì)算出即時(shí)速度v。當(dāng)里程鍵按下時(shí),里程指示燈亮,LED切換顯示當(dāng)前里程,與當(dāng)速度鍵按下時(shí),速度指示燈亮,LED切換顯示當(dāng)前速度,若自行車超速,系統(tǒng)發(fā)出報(bào)警信號(hào),指示燈閃爍。里程數(shù)據(jù)自動(dòng)記憶,也可用于電動(dòng)自行車、摩托車、汽車等機(jī)動(dòng)車儀表上。設(shè)計(jì)包括硬

5、件、軟件兩部分,硬件電路包括AT89C52單片機(jī)的外圍電路以及LED顯示電路等,這里對(duì)硬件部分只做簡(jiǎn)單介紹,主要闡述的是軟件部分的設(shè)計(jì),包括數(shù)據(jù)初始化程序的設(shè)計(jì)、主程序的設(shè)計(jì)、處理子程序的設(shè)計(jì)、顯示子程序的設(shè)計(jì);最后針對(duì)仿真過程遇到的問題進(jìn)行了具體說明與分析,對(duì)本次設(shè)計(jì)進(jìn)行總結(jié)。 2.2硬件部分介紹2.2.1 AT89C52芯片簡(jiǎn)介AT89C52是一種帶4K字節(jié)閃存可編程可擦除的只讀存儲(chǔ)器即為(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。管腳說明:VCC:供電電壓,+5V。 G

6、ND:接地。 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)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8

7、位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。P3口也可作為AT89C52的一些特殊功能口,如下表所示: P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持R

8、ST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。PSEN*:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取值期間,每個(gè)機(jī)器周期兩次PSEN*有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN*信號(hào)將不出現(xiàn)。 2.2.2 硬件設(shè)計(jì)自行車?yán)锍逃?jì)/速度計(jì)電路原理圖見圖1。圖1 電路原理圖表一 各元器件清單序號(hào)名稱代號(hào)型號(hào)數(shù)量1芯片U1AT89C5112芯片U3TC402413芯片U2AT24C0114電阻R1,R21K25電阻R3,R4,R7,R8,R9,R10,R11,R12,R1

9、34.7K96電阻R25,R26,R278.2K37電阻R15,R16,R17,R18,R19,R20,R21,R221.8K88電阻R24,R633029電容C2,C333pf210電容C110uf111三極管Q1,Q2,Q3,Q4,Q78550512三極管Q5,Q6,Q88050313發(fā)光二極管D1,D2,D35mm紅色314晶振X112MHZ115四位共陰極數(shù)碼管7SEG-MPX4-CC116蜂鳴器LS1SREAKER117按鍵開關(guān)SW1,SW2,SW3,SW4,SW5,SW6,SW7SW-SPST7 本次設(shè)計(jì)信號(hào)的捕獲采用的是霍爾傳感器。霍爾器件具有許多優(yōu)點(diǎn),它們的結(jié)構(gòu)牢固、體積小、重

10、量輕、壽命長、安裝方便、功耗小、頻率高(可達(dá)1MHz)、耐震動(dòng)、不怕灰塵、油污、水汽及煙霧等的污染或腐蝕。霍爾線性器件的精度高、線性度好;霍爾開關(guān)器件無觸點(diǎn)、無磨損、輸出波形清晰、無抖動(dòng)、無回跳、位置重復(fù)精度高。取用各種補(bǔ)償和保護(hù)措施的霍爾器件工作溫度范圍寬,可達(dá)55150。XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。由于輸入至內(nèi)部時(shí)鐘信號(hào)要通過一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。P0口作為輸出口用于顯示歷程狀態(tài)和速度狀態(tài)。由于

11、P0口沒有上拉電阻,因此作為輸出口時(shí)要加上上拉電阻來驅(qū)動(dòng)LED數(shù)碼管的點(diǎn)亮。接于引腳10即P3.2、RXD的開關(guān)用于控制改變顯示的方式,當(dāng)開關(guān)閉合時(shí),顯示速度;開關(guān)打開時(shí)顯示里程。第12腳即外部中斷0用于對(duì)輪子圈數(shù)的計(jì)數(shù)輸入,輪子每轉(zhuǎn)一圈,霍爾傳感器輸出一個(gè)低電平脈沖。13腳即外部中斷1用于控制定時(shí)器T1的啟停,當(dāng)輸入為0時(shí)關(guān)閉定時(shí)器。此控制信號(hào)是將輪子圈數(shù)的計(jì)數(shù)脈沖經(jīng)二分頻后形成,這樣,每次定時(shí)器T1的開啟時(shí)間剛好為轉(zhuǎn)一圈的時(shí)間,根據(jù)輪子的周長就可以計(jì)算出自行車的速度。P1.4口和P1.5口用于EEPROM存儲(chǔ)器24C01的存取控制。11腳輸出用于超速時(shí)的報(bào)警,此時(shí)蜂鳴器發(fā)出聲音,同時(shí)LED

12、燈閃爍。LED數(shù)碼管采用四位相連的共陰極數(shù)碼管,片選信號(hào)分別通過三極管接至21-24管腳即P2.0-P2.4口,從而實(shí)現(xiàn)里程和速度的動(dòng)態(tài)顯示。自行車的速度里程表的硬件電路設(shè)計(jì)是基礎(chǔ)部分,它包括信號(hào)的捕獲、放大、整形,單片機(jī)的計(jì)算處理,數(shù)碼管的實(shí)時(shí)顯示和單片機(jī)外圍基本電路的設(shè)計(jì),兩大主要器件就是傳感器和單片機(jī)。 2.3軟件部分模塊化結(jié)構(gòu)設(shè)計(jì)即是根據(jù)要求和硬件設(shè)計(jì)的結(jié)構(gòu),將整個(gè)系統(tǒng)的功能分成許多小的功能模塊,再根據(jù)這些小的功能模塊進(jìn)行程序編寫的過程。這樣的設(shè)計(jì)方法,使得系統(tǒng)的整個(gè)功能和各部分的功能趨于明朗化。當(dāng)系統(tǒng)出現(xiàn)問題,就可以根據(jù)功能設(shè)置找出問題的根源,從而更快地解決問題。所以說,在整個(gè)設(shè)計(jì)過

13、程中,軟件設(shè)計(jì)必須與硬件設(shè)計(jì)緊密地結(jié)合在一起。軟件設(shè)計(jì)包括初始化程序、主程序、行車過程中里程和速度計(jì)算子程序、延時(shí)子程序、中斷服務(wù)子程序、顯示子程序等。系統(tǒng)軟件總體流程圖如圖2所示初始化P3.0=1?計(jì)算里程顯示里程計(jì)算速度顯示速度N開始Y圖 2 系統(tǒng)整體流程圖總體設(shè)計(jì)思路:首先進(jìn)行初始化,選擇車輪周長,P3.0是用于里程和速度切換的,低電平為顯示速度,高電平為顯示里程。根據(jù)P3.0的狀態(tài)來決定顯示內(nèi)容,P3.0=1時(shí),轉(zhuǎn)到計(jì)算速度子程序并進(jìn)行顯示;P3.0=0時(shí),轉(zhuǎn)到計(jì)算里程子程序并進(jìn)行顯示。P1.0和P1.1口分別用于顯示里程狀態(tài)和速度狀態(tài)。P1.2、P1.3、P1.6和P1.7口分別用于

14、設(shè)置輪圈的大小,低電平有效。中斷0用于對(duì)輪子圈數(shù)的計(jì)數(shù)輸入,輪子每轉(zhuǎn)一圈,霍爾傳感器輸出一個(gè)低電平脈沖。將根據(jù)里程寄存器中的內(nèi)容計(jì)算和判斷出行駛里程數(shù)。中斷1用于控制定時(shí)器T1的啟/停,當(dāng)輸入為0時(shí)關(guān)閉定時(shí)器。此控制信號(hào)是將輪子圈數(shù)的計(jì)數(shù)經(jīng)二分頻后形成。這樣,每次定時(shí)器T1的開啟時(shí)間剛好為轉(zhuǎn)一圈的時(shí)間,根據(jù)輪子的周長就可以計(jì)算出自行車的速度。 2.4主要內(nèi)存單元及用處2.4.1 初始化程序初始化程序主要完成以下工作:將T1設(shè)為外部控制定時(shí)器方式;外部中斷0及外部中斷1設(shè)為邊沿觸發(fā)方式;將部分內(nèi)存單元清0;設(shè)置輪子周長;開中斷及定時(shí)器;將EEPROM中的數(shù)據(jù)調(diào)入內(nèi)存。初始化具體過程:首先對(duì)P1.

15、2口的內(nèi)容進(jìn)行查詢,若P1.2=0,則說明P1.2口接的按鈕被按下,即選擇第一種車輪周長,同時(shí)將周長存入21H單元內(nèi);若P1.2=1,則第一個(gè)按鈕沒被按下,再對(duì)P1.3口的內(nèi)容進(jìn)行查詢,內(nèi)容為0則將其周長值存入21H中,不為0則掃描P1.6,內(nèi)容為0則將其周長值存入21H中,不為0則掃描P1.7,若P1.7為0則將其周長值存入21H中,不為0則說明沒有選擇車輪直徑,此時(shí)開始報(bào)警,并調(diào)用延時(shí)子程序。接著再從P1.2口掃描,如此循環(huán),直到有鍵按下后停止報(bào)警。 初始化P1.2=1?NP1.3=1?P1.6=1?P1.7=1?出錯(cuò)提示將車圈周長調(diào)入21H開中斷,啟動(dòng)定時(shí)器NNNYYYY開報(bào)警器并延時(shí)關(guān)

16、報(bào)警器圖 3 初始化程序流程圖2.4.2主程序主程序根據(jù)P3.0口的開關(guān)狀態(tài)選擇里程速度顯示。初始化開始P3.0=1?調(diào)用里程處理子程序Y調(diào)用速度處理子程序N 圖 4 主程序流程圖2.4.3 用外部中斷0實(shí)現(xiàn)的里程計(jì)數(shù)程序定時(shí)中斷是為滿足定時(shí)或計(jì)數(shù)的需要而設(shè)置的。在單片機(jī)內(nèi)部有兩個(gè)定時(shí)/計(jì)數(shù)器,以對(duì)其中的計(jì)數(shù)結(jié)構(gòu)進(jìn)行計(jì)數(shù)的方法,來實(shí)現(xiàn)定時(shí)或計(jì)數(shù)功能。當(dāng)結(jié)構(gòu)發(fā)生計(jì)數(shù)溢出時(shí),即表明定時(shí)時(shí)間或計(jì)數(shù)值已滿,這時(shí)就以計(jì)數(shù)溢出信號(hào)作為中斷請(qǐng)求,去置位一個(gè)溢出標(biāo)志,作為單片機(jī)接受中斷請(qǐng)求的標(biāo)志。這種中斷請(qǐng)求是在單片機(jī)芯片內(nèi)部發(fā)生的,因此無須在芯片上設(shè)置引入端。定時(shí)/計(jì)數(shù)器控制寄存器TCON是8位寄存器,地址

17、為88H,可以位尋址。其高4位用于定時(shí)/計(jì)數(shù)器中斷控制,低4位借給外部中斷,用做中斷標(biāo)志和觸發(fā)方式選擇位。本設(shè)計(jì)采用定時(shí)中斷,對(duì)自行車的里程和速度進(jìn)行計(jì)數(shù)。 關(guān)中斷開始現(xiàn)場(chǎng)保護(hù)開中斷中斷處理關(guān)中斷現(xiàn)場(chǎng)恢復(fù)開中斷中斷返回圖 5 中斷流程圖2.4.4 里程、速度處理程序里程處理程序外中斷0服務(wù)程序用于對(duì)單片機(jī)P3.2口輸入的圈脈沖進(jìn)行計(jì)數(shù),為十六進(jìn)制計(jì)數(shù)器。60H為低位,62H為高位。每次計(jì)數(shù)一次后,對(duì)里程數(shù)據(jù)進(jìn)行一次存儲(chǔ)操作。當(dāng)車輪每轉(zhuǎn)一圈,通過霍爾元件將脈沖數(shù)輸入單片機(jī)內(nèi),通過計(jì)數(shù)器計(jì)出脈沖數(shù),再用乘法子程序算出里程數(shù)。 點(diǎn)亮里程指示燈開始將車圈數(shù)轉(zhuǎn)換成里程顯示里程值返回圖 6 里程處理程序流

18、程圖速度處理程序外中斷1服務(wù)程序用于處理輪子轉(zhuǎn)動(dòng)一圈后的計(jì)時(shí)數(shù)據(jù)。當(dāng)標(biāo)志位(00H)為1時(shí),計(jì)數(shù)溢出,放入最大時(shí)間值(為#0FFH);當(dāng)標(biāo)志位為0時(shí),將計(jì)數(shù)單元(TL1、TH1、6CH、6DH)的值放入68H6BH單元。定時(shí)器計(jì)出每轉(zhuǎn)一圈所用的時(shí)間,用自行車車輪的周長除以時(shí)間就得出自行車的速度。開速度指示燈計(jì)算速度報(bào)警顯示速度NY返回P3.0=1? P3.0=1?22速?開始圖 7速度處理程序流程圖 2.4.5 顯示子程序采用動(dòng)態(tài)掃描顯示接口電路,動(dòng)態(tài)顯示接口電路是把所有顯示器的8個(gè)筆劃段a-h同名端連在一起,而每一個(gè)顯示器的公共極COM各自獨(dú)立地受I/O線控制。CPU向字段輸出口送出字型碼時(shí)

19、,所有顯示器接收到相同的字型碼,但究竟是哪個(gè)顯示器亮,則取決于COM端。可以采用分時(shí)的方法,輪流控制各個(gè)顯示器的COM端,使各個(gè)顯示器輪流點(diǎn)亮。在輪流點(diǎn)亮掃描過程中,每位顯示器的點(diǎn)亮?xí)r間是極為短暫的(約1ms),由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位顯示器并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感。本設(shè)計(jì)P2.0、P2.1、P2.2、P2.3信號(hào)一起組成位選通的位選信號(hào),P0.0P0.7信號(hào)一起組成段碼選通的段選信號(hào),通過軟件編程,先把所要顯示的數(shù)據(jù)放入存儲(chǔ)單元,然后把數(shù)據(jù)送入段選通對(duì)應(yīng)的地址,再選通某一個(gè)LED,逐步完成四個(gè)LED

20、的顯示。里程顯示控制程序2.4.6 延時(shí)子程序1ms延時(shí)程序 利用循環(huán)實(shí)現(xiàn)延時(shí)如圖 8顯示程序流程圖 開始顯示單元首址取顯示數(shù)據(jù)送段碼到P0口取段碼表首址調(diào)用延時(shí)送位選到P2口4位顯示結(jié)束返回YN修改顯示單元地址求下一位位選碼圖 8 顯示程序流程圖 三、調(diào)試3.1軟件調(diào)試先用KEIL軟件輸入完整的程序,進(jìn)行編譯。首先,新建一個(gè)項(xiàng)目選擇AT89C52,新建一個(gè)文件,將程序輸入,輸完后保存,保存時(shí)需加后綴名.ASM。然后將文件添加到新建的工程下。進(jìn)行檢錯(cuò)和編譯,窗口如圖9所示。 圖 9 KEIL編譯窗口編譯無誤后即可運(yùn)行,運(yùn)行時(shí)可從Peripherals中調(diào)出輸出口P0P3來觀察輸出情況。運(yùn)行時(shí)窗

21、口如圖10所示。 圖 10 KEIL運(yùn)行窗口 接著再使用PROTEUS仿真軟件進(jìn)行仿真。首先新建一個(gè)文件,選擇所需的元件并排列好,根據(jù)電路原理圖進(jìn)行布線。當(dāng)完成原理圖布線后,利用PROTEUS ISIS編輯環(huán)境所提供的電器規(guī)則檢查命令對(duì)設(shè)計(jì)進(jìn)行檢查,并根據(jù)系統(tǒng)提供的錯(cuò)誤檢查報(bào)告修改原理圖。直到通過電器規(guī)則檢查為止。然后在KEIL中生成HEX文件,雙擊AT89C52芯片,將完整的程序灌入芯片,單擊左下角的開始箭頭即可開始模擬仿真。在仿真過程中遇到過一些問題,針對(duì)這些問題做了些軟件方面的調(diào)整。 剛開始仿真時(shí),P0口是灰色的,數(shù)碼管沒有點(diǎn)亮。經(jīng)檢查是由于P0口內(nèi)部沒有上拉電阻,因此,必須另外加上,上

22、拉電阻一段接P0口,另一端直接接到電源的正集。接上后數(shù)碼管點(diǎn)亮,但顯示的是亂碼經(jīng)過仔細(xì)的檢查,發(fā)現(xiàn)了程序中的錯(cuò)誤,硬件中選用的是共陰極數(shù)碼管,而程序中錯(cuò)用了共陽極的段碼表,從而造成了應(yīng)該點(diǎn)亮的部分沒亮,而不該點(diǎn)亮的部分反而亮了的錯(cuò)誤情況。 四、操作說明 本設(shè)計(jì)為自行車?yán)锍逃?jì)/速度計(jì),實(shí)現(xiàn)了里程速度計(jì)的基本功能。接通電源后,由于未選擇車輪周長,蜂鳴器報(bào)警提示,同時(shí)LED燈D3閃爍,直到有鍵按下。當(dāng)按下P1.2口所接開關(guān)SW2時(shí)選擇車輪周長1,按下P1.3口所接開關(guān)SW3時(shí)選擇車輪周長2,按下P1.6口所接開關(guān)SW4時(shí)選擇車輪周長3,P1.7口所接開關(guān)SW5時(shí)選擇車輪周長4,選擇周長后,每按下開關(guān)SW6一次表示車輪轉(zhuǎn)了一圈,此時(shí)數(shù)碼管顯示當(dāng)前的里程值,此時(shí)若按下開關(guān)SW7則數(shù)碼管顯示當(dāng)前的速度值,當(dāng)超速時(shí)蜂鳴器報(bào)警。 五、心得體會(huì)通過一周的時(shí)間,我勉強(qiáng)的完

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論