基于單片機的自行車?yán)锍逃嬒到y(tǒng)畢業(yè)設(shè)計_第1頁
基于單片機的自行車?yán)锍逃嬒到y(tǒng)畢業(yè)設(shè)計_第2頁
基于單片機的自行車?yán)锍逃嬒到y(tǒng)畢業(yè)設(shè)計_第3頁
基于單片機的自行車?yán)锍逃嬒到y(tǒng)畢業(yè)設(shè)計_第4頁
基于單片機的自行車?yán)锍逃嬒到y(tǒng)畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 PAGE29 / NUMPAGES30題目:基于單片機的自行車?yán)锍逃嬒到y(tǒng)設(shè)計設(shè)計容設(shè)計制作和調(diào)試一個由8052MCU組成的自行車?yán)锍逃嬒到y(tǒng)。通過這個過程學(xué)習(xí)熟悉單片機的外圍擴展、鍵盤控制和七段數(shù)碼管的使用,掌握51系列單片機控制和測試方法。設(shè)計以STC89C51單片機為核心,以霍爾傳感器做為輸入、使用獨立鍵盤控制顯示停止/開始、清零,以LED為顯示方式的自行車?yán)锍逃?,完成基本要求?)數(shù)碼管顯示:自行車?yán)锍蹋?)鍵盤控制里程計的開始、停止和清零;設(shè)計步驟總體方案設(shè)計其中,采用51系列MCU構(gòu)成典型電路。選用適當(dāng)?shù)幕魻杺鞲衅髌骷?。選擇獨立鍵盤和4位共陰極數(shù)碼管。二、硬件選型工作三、硬件的設(shè)計和

2、實現(xiàn)1. 選擇計算機機型(采用51核的單片機);2. 設(shè)計支持計算機工作的外圍電路(EPROM、RAM、I/O端口、鍵盤、顯示接口電路等);3. 接口電路;4. 其它相關(guān)電路的設(shè)計或方案(電源、通信等)四、軟件設(shè)計 分配系統(tǒng)資源,編寫系統(tǒng)初始化和主程序模塊; 編寫相關(guān)子程序;3. 其它程序模塊(顯示與鍵盤等處理程序)。五、編寫課程設(shè)計說明書,繪制完整的系統(tǒng)電路圖(A3幅面)。課程設(shè)計說明書要求1. 課程設(shè)計說明書應(yīng)采用學(xué)院統(tǒng)一印制的課程設(shè)計(論文)說明書封面,書寫應(yīng)認真,字跡工整,論文格式參考國家正式出版的書籍和論文編排。2. 論理正確、邏輯性強、文理通顧、層次分明、表達確切,并提出自己的見解

3、和觀點。3. 課程設(shè)計說明書應(yīng)有目錄、摘要、序言、主干容(按章節(jié)編寫)、主要結(jié)論和參考書,附錄應(yīng)包括程序清單、系統(tǒng)方框圖和電路原理圖。4. 課程設(shè)計說明書應(yīng)包括按上述設(shè)計步驟進行設(shè)計的分析和思考容和引用的相關(guān)知識。5. 要求打印B5紙,排版要求請向指導(dǎo)教師索取。6. 每組單獨一個題目,每組上限5人。時間安排課程設(shè)計計劃時間4周。課程設(shè)計題目于15周下發(fā)。課程設(shè)計完成后于18周四下午下班前送交電子信息辦公室(實驗樓三樓),屆時指導(dǎo)教師安排短暫答辯。輔導(dǎo)時間和地點答疑請直接與指導(dǎo)教師聯(lián)系。目 錄一、設(shè)計任務(wù)和要求 2二、設(shè)計目的2三、設(shè)計的具體實現(xiàn) 3 1.系統(tǒng)概述 3 2.STC單片機的原理與應(yīng)

4、用4 3.霍爾傳感器電路設(shè)計 7 4.USB供電電路設(shè)計 9 5.按鍵電路設(shè)計10 6.顯示電路設(shè)計10 7.復(fù)位電路設(shè)計11 8.晶振電路設(shè)計129.總電路原理圖13 10.軟件程序設(shè)計 14四、系統(tǒng)調(diào)試與仿真 23五、心得體會和建議24 六、附錄26 七、參考文獻27 基于單片機的自行車?yán)锍逃嬒到y(tǒng)設(shè)計報告一、設(shè)計要求1.設(shè)計背景我國是自行車大國,隨著人們生活水平的逐漸提高,人們對于生活質(zhì)量的要求也日益增加,尤其是對健身的要求。自行車在中國普遍作為代步工具。而在國外,自行車卻是一項十分受歡迎的健身運動。因為它無污染,價位低廉,老少皆宜。而且在運動過程中可以充分享受到大自然,對于忙碌的現(xiàn)代人來

5、說,無疑是一種較好的放松方法。在中國這種情況也在慢慢發(fā)生變化。因此愛好自行車運動的人十分需要一款裝置,以知道自己的運動情況。并根據(jù)外界條件,如溫度等進行適當(dāng)?shù)恼{(diào)節(jié),已達到最佳運動的效果。2.設(shè)計具體要求設(shè)計一個自行車車輪半徑已知,用霍爾傳感器測定出自行車的里程,并通過數(shù)碼管顯示出來的自行車?yán)锍瘫硐到y(tǒng)。二、設(shè)計目的1.通過單片機原理與接口技術(shù)專業(yè)課程設(shè)計,完成一個課題的理論設(shè)計和實驗調(diào)試任務(wù),既加深專業(yè)知識的理解,又能培養(yǎng)專業(yè)實踐技能,提高分析解決問題和解決問題的能力。2.培養(yǎng)從文獻和調(diào)查研究中獲取知識的能力,提高學(xué)生從別人經(jīng)驗,從其他學(xué)科找到解決問題的新途徑的悟性。3.培養(yǎng)綜合運用本專業(yè)基本理

6、論、基本知識和基本技能的能力,使自己獲得從事本專業(yè)工程技術(shù)工作的基本訓(xùn)練。4.培養(yǎng)勇于探索,嚴(yán)謹(jǐn)推理,實事,用實踐來檢驗理論、全方位地考慮問題等科學(xué)技術(shù)人員應(yīng)具有的素質(zhì)。5.提高對工作認真負責(zé)、一絲不茍,對同學(xué)友愛團結(jié)、協(xié)作攻關(guān),對新事物能潛心考察,勇于開拓,勇于實踐的基本素質(zhì)。6.進一步熟悉掌握計算機和EDA工具軟件的能力。三、設(shè)計的具體實現(xiàn)1.系統(tǒng)概述自行車的速度里程表的硬件電路設(shè)計是基礎(chǔ)部分,它包括信號的捕獲、放大、整形,單片機的計算處理,數(shù)碼管的實時顯示和單片機外圍基本電路的設(shè)計,兩大主要器件就是傳感器和單片機。傳感器是獲取自然或生產(chǎn)領(lǐng)域息的關(guān)鍵器件,是現(xiàn)代信息系統(tǒng)和各種設(shè)備不可缺少的

7、信息采集工具。磁傳感器是一種將磁學(xué)量信號轉(zhuǎn)變?yōu)殡娦盘柕钠骷蜓b置。隨著信息產(chǎn)業(yè)、工業(yè)自動化、醫(yī)療儀器等的飛速發(fā)展和計算機應(yīng)用的普與,需要大量的傳感器將被測或被控的非電信號轉(zhuǎn)換成可與計算機兼容的電信號。作為輸入信號,這就給磁傳感器的快速發(fā)展提供了機遇,形成了磁傳感器的產(chǎn)業(yè)。其中最具代表的磁傳感器就是霍爾傳感器,在自動檢測系統(tǒng)中,利用霍爾傳感器測轉(zhuǎn)數(shù)是一種最基本的測量工作。單片機是本次設(shè)計的核心部件,它是信號從采集到輸出的橋梁,而且包括計算、定時、信息處理等功能。本設(shè)計中,我們以STC公司STC89C52單片機為控制核心,采用霍爾傳感器檢測自行車輪胎的運轉(zhuǎn)情況,通過一定的抗干擾處理和計算后,由LE

8、D顯示自行車的里程。本設(shè)計中,計數(shù)的正確性決定了本裝置的精度,如何在復(fù)雜的環(huán)境中得到正確的計數(shù)脈沖,是本設(shè)計的難點,初步的解決辦法是在硬件上進行合理的濾波,軟件上進行一定的算法處理。其原理很簡單,因為車輪的直徑已知,車輪的圓周長便是恒定不變的。由此可以計算出霍爾傳感器每發(fā)出一次計數(shù)脈沖自行車所走過的里程數(shù)。系統(tǒng)原理框圖如圖3.1。外部信號霍爾傳感器里程顯示STC89C52單片機圖3.1 自行車?yán)锍逃嬒到y(tǒng)原理框圖2.STC單片機的原理與應(yīng)用單片機是指集成在一個芯片上的微型計算機,也就是把組成微型計算機的各種功能部件,包括CPU(Central Processing Unit)、隨機存儲器RAM(

9、Random Access Memory)、只讀存儲器ROM(Read-only Memory)、基本輸入/輸出(Input/Output)接口電路。定時器/計數(shù)器等部件都制作在一塊集成芯片上,構(gòu)成一個完整的微型計算機從而實現(xiàn)微型計算機的基本功能。STC89C52是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash HYPERLINK :/baike.baidu /view/87697.htm t _blank 存儲器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功

10、能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時器,置4KB EEPROM,MAX810復(fù)位電路,2個16 位 定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口。另外 STC89X52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復(fù)位為止。STC89C51管腳圖如圖3.2所示。圖3.2 STC89C52引腳圖STC89C52的主要管腳功能如下:P0.0P0.7:P0口是一組8位漏極開路型

11、雙向I/O口,也是地址/數(shù)據(jù)總線復(fù)用口。P1.0P1.7:P1是一個帶部上拉電阻的8位雙向I/O口。P2.0P2.7:P2是一個帶部上拉電阻的8位雙向I/O口。 P3.0P3.7:P3是一個帶部上拉電阻的8位雙向I/O口。ALE:地址鎖存控制信號。在系統(tǒng)擴展時,ALE用于控制把P0口輸出的低8位地址鎖存起來,以實現(xiàn)低位地址和數(shù)據(jù)的分時傳送。此外,由于ALE是以晶振16的固定頻率輸出的正脈沖,因此,可作為外部時鐘或外部定時脈沖使用。:外部程序存儲器讀選通信號。在讀外部ROM時,有效(低電平),以實現(xiàn)外部ROM單元的讀操作。:訪問程序存儲控制信號。當(dāng)信號為低電平時,對ROM的讀操作限定在外部程序存

12、儲器;當(dāng)信號為高電平時,對ROM的讀操作是從部程序存儲器開始,并可延至外部程序存儲器。RST:復(fù)位信號。當(dāng)輸入的復(fù)位信號延續(xù)兩個機器周期以上的高電平時即為有效,用以完成單片機的復(fù)位初始化操作。XTALl和XTAL2:外接晶體引線端。當(dāng)使用芯片部時鐘時,此二引線端用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時鐘時,用于接外部時鐘脈沖信號。VSS:地線。 VCC:+5V電源。3.霍爾傳感器電路設(shè)計本次設(shè)計信號的捕獲采用的是霍爾傳感器?;魻柶骷哂性S多優(yōu)點,它們的結(jié)構(gòu)牢固、體積小、重量輕、壽命長、安裝方便、功耗小、頻率高(可達1MHz)、耐震動、不怕灰塵、油污、水汽與煙霧等的污染或腐蝕。霍爾線性器件的精度

13、高、線性度好;霍爾開關(guān)器件無觸點、無磨損、輸出波形清晰、無抖動、無回跳、位置重復(fù)精度高。按照霍爾器件的功能可將它們分為:霍爾線性器件和霍爾開關(guān)器件,前者輸出模擬量,后者輸出數(shù)字量。 按被檢測對象的性質(zhì)可將它們的應(yīng)用分為:直接應(yīng)用和間接應(yīng)用。A44E集成霍爾開關(guān)封裝引腳圖如圖3.3所示。在電源端加電壓Vcc,經(jīng)穩(wěn)壓器穩(wěn)壓后加在霍爾電勢發(fā)生器的兩端,根據(jù)霍爾效應(yīng)原理,當(dāng)霍爾片處在磁場中時,在垂直于磁場的方向通以電流,則與這二者相垂直的方向上將會產(chǎn)生霍爾電勢差VH輸出,該VH信號經(jīng)放大器放大后送至施密特觸發(fā)器整形,使其成為方波輸送到OC門輸出。當(dāng)施加的磁場達到工作點時,觸發(fā)器輸出高電壓(相對于地電位

14、),使三極管導(dǎo)通,此時OC門輸出端輸出低電壓,通常稱這種狀態(tài)為開 。當(dāng)施加的磁場達到釋放點時,觸發(fā)器輸出低電壓,三極管截止,使OC門輸出高電壓,這種狀態(tài)為關(guān) 。這樣兩次電壓變換,使霍爾開關(guān)完成了一次開關(guān)動作。工作點與釋放點的差值一定,此差值稱為磁滯,在此差值,V0保持不變,因而使開關(guān)輸出穩(wěn)定可靠,這也就是集電成霍爾開關(guān)傳感器優(yōu)良特性之一。測量時,在1、2兩端加5V直流電壓,在輸出端3與1之間接一個1kW的負載電阻,如圖3.4所示。圖3.3 A44E外形圖3.4 集成霍爾開關(guān)接線圖A44E輸出端OUT連到單片機外部中斷0上,當(dāng)磁鐵靠近A44E時輸出端產(chǎn)生一個低電平信號,使CPU產(chǎn)生一次中斷計一次

15、數(shù)。假定輪圈的周長為L,在輪圈上安裝m個永久磁鐵,則測得的里程值最大誤差為L/m。本設(shè)計中取m=1。當(dāng)輪子每轉(zhuǎn)一圈,通過霍爾元件傳感器采集到一個脈沖信號,并從引腳P3.2中斷0端輸入,傳感器每獲取一個脈沖信號即對系統(tǒng)提供一次計數(shù)中斷。每次中斷代表車輪轉(zhuǎn)動一圈,中斷數(shù)n輪圈的周長為L的乘積為里程值。里程S=周長L*圈數(shù)n4.USB供電電路設(shè)計電源總是電路設(shè)計不可缺少的部分,本次設(shè)計采用了USB電源供電。USB接口可以向外提供電源,且是5V的電壓,非常適合于TTL信號的系統(tǒng),特別是單片機系統(tǒng)??梢允褂眠@個電源為USB供電,這樣便減少了電源設(shè)計,簡化了USB系統(tǒng)結(jié)構(gòu)。在USB總線系統(tǒng)中,USB主機和

16、USB集線器可以通過VBUS和GND兩根電源線向外提供電源,電源一般4.755.25V。USB協(xié)議中規(guī)定,每個USB端口最大數(shù)據(jù)電流為500mA。USB端口具有高輸出功率和低輸出功率之分,同樣,USB設(shè)備可以按照電流的消耗分為高功率消耗設(shè)備和低功率消耗設(shè)備。高功率消耗設(shè)備一般需要100500mA的電流,低功率消耗設(shè)備一般需0100mA的電流。電路圖如圖3.5所示。圖3.5 USB供電電路5.按鍵電路設(shè)計鍵盤在單片機應(yīng)用系統(tǒng)中,實現(xiàn)輸入數(shù)據(jù)、傳送命令的功能,是人工干預(yù)的主要手段。鍵盤是單片機系統(tǒng)設(shè)計中一種主要的信息輸入接口,合理的設(shè)計,不僅可以節(jié)省系統(tǒng)的設(shè)計成本,更可使儀器設(shè)備的操作變得更為簡單

17、、方便,很大程度上提高系統(tǒng)綜合性能。本次設(shè)計過按鍵S1來控制里程計的開始和停止,通過按鍵S2使里程計清零。電路圖如圖3.6所示圖3.6 按鍵電路6.顯示電路設(shè)計顯示模塊可以采用液晶顯示器或者數(shù)碼管顯示器,但數(shù)碼管具有低功耗,容易控制,占用CPU資源少這些優(yōu)點,考慮到成本原因,選擇了4位的七段共陰極數(shù)碼管顯示已經(jīng)完全足夠。本設(shè)計中使用4個單位數(shù)據(jù)管,數(shù)碼管的陽極全部連接在一起,然后與U1原件74HC573鎖存器的數(shù)據(jù)輸出端相連,所存起的數(shù)據(jù)輸入端連接單片機的P0口低四位,P0口同時加了上拉電阻,數(shù)碼管中WE1,WE2,WE3,WE4是它們的位選端,每一個數(shù)碼管對應(yīng)一個位選端,與U2原件74HC5

18、73的數(shù)據(jù)輸出端的低四位相連,U2的數(shù)據(jù)輸入端也連接到單片機的P0口。兩個鎖存器的鎖存端分別與P2.6和P2.7相連。單片機控制鎖存器的鎖存端,進而控制鎖存器的數(shù)據(jù)輸出,這種時分控制的方法便可方便地控制任意數(shù)碼管顯示任意數(shù)字。電路圖如圖3.7所示。圖3.7 顯示電路7.復(fù)位電路設(shè)計復(fù)位是單片機的初始化操作,它是由外部的復(fù)位電路來實現(xiàn),只需給單片機的復(fù)位引腳RST加上大于2個機器周期的高電平就可使其復(fù)位。電路圖如圖3.8所示。圖3.8 復(fù)位電路8.晶振電路設(shè)計晶振電路用于產(chǎn)生單片機工作時所需的時鐘控制信號。通過單片機的引腳XTAL1,XTAL2跨接石英晶體振蕩器和微調(diào)電容,構(gòu)成一個穩(wěn)定的自激振蕩

19、器。時鐘頻率直接影響單片機的速度,晶振電路的質(zhì)量也直接影響單片機系統(tǒng)的穩(wěn)定性。晶振電路電路圖如圖3.9所示。圖3.9 晶振電路9.總電路原理圖10.軟件程序設(shè)計主程序流程圖如圖3.10所示NNYY改變計數(shù)器狀態(tài)(停止/開啟)開始初始化計數(shù)器開始計數(shù)LED顯示里程按鍵S1是否按下?按鍵S1是否按下?結(jié)束計數(shù)器清零圖3.10 主程序流程圖顯示子程序設(shè)計本設(shè)計中使用4個單位數(shù)據(jù)管,數(shù)碼管的陽極全部連接在一起,然后與U1原件74HC573鎖存器的數(shù)據(jù)輸出端相連,所存起的數(shù)據(jù)輸入端連接單片機的P0口低四位,P0口同時加了上拉電阻,數(shù)碼管中WE1,WE2,WE3,WE4是它們的位選端,每一個數(shù)碼管對應(yīng)一個

20、位選端,與U2原件74HC573的數(shù)據(jù)輸出端的低四位相連,U2的數(shù)據(jù)輸入端也連接到單片機的P0口。兩個鎖存器的鎖存端分別與P2.6和P2.7相連。先打開U1鎖存器,控制段選端,輸出需要顯示的數(shù)字。然后關(guān)閉U1鎖存器,打開U2鎖存器,控制位選端,如此依次使四個數(shù)碼管顯示該位的數(shù)字。顯示子程序如下:void display(uchar qian,uchar bai,uchar shi,uchar ge) dula=1;P0=tableqian; /送千位段選數(shù)據(jù)dula=0;P0=0 xff;/送位選數(shù)據(jù)前關(guān)閉所有顯示,防止打開位選鎖存時wela=1;/原來段選數(shù)據(jù)通過位選鎖存器造成混亂P0=0

21、xfe;/送位選數(shù)據(jù)wela=0;delayms(5);/延時dula=1;P0=tablebai; /送百位段選數(shù)據(jù)dula=0;P0=0 xff;wela=1;P0=0 xfd;wela=0;delayms(5);dula=1;P0=tableshi; /送十位段選數(shù)據(jù)dula=0;P0=0 xff;wela=1;P0=0 xfb;wela=0;delayms(5);dula=1;P0=tablege; /送個位段選數(shù)據(jù)dula=0;P0=0 xff;wela=1;P0=0 xf7;wela=0;delayms(5);里程計算子程序?qū)纹瑱CP3.2口輸入的圈脈沖進行計數(shù),計數(shù)器0打開但不打

22、開中斷,通過讀取計數(shù)值進行控制。里程計算子程序流程圖如圖3.11。NY開始計數(shù)器0對外部信號計數(shù)通過公式計算出里程里程是否大于10000計數(shù)器清0返回里程值圖3.11 里程計算子程序流程圖里程計算子程序如下:uint read()uchar tl,th1,th2;uint val,lc;while(1)th1=TH0;tl=TL0;th2=TH0;if(th1=th2)break;val=th1*256+tl; /讀取計數(shù)器0所計數(shù)值lc=val*2;/計算自行車行駛的里程數(shù)return lc;總程序#include /52系列單片機頭文件#define uchar unsigned char

23、#define uint unsigned int sbit dula=P26;/申明U1鎖存器的鎖存端sbit wela=P27;/申明U2鎖存器的鎖存端sbit key1=P36;/申明獨立鍵盤1sbit key2=P37;/申明獨立鍵盤2uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71;void delayms(uint);void display(uchar qian,uchar bai,uchar shi,uc

24、har ge) /顯示子函數(shù) dula=1;P0=tableqian; /送千位段選數(shù)據(jù)dula=0;P0=0 xff;/送位選數(shù)據(jù)前關(guān)閉所有顯示,防止打開位選鎖存時wela=1;/原來段選數(shù)據(jù)通過位選鎖存器造成混亂P0=0 xfe;/送位選數(shù)據(jù)wela=0;delayms(5);/延時dula=1;P0=tablebai; /送百位段選數(shù)據(jù)dula=0;P0=0 xff;wela=1;P0=0 xfd;wela=0;delayms(5);dula=1;P0=tableshi; /送十位段選數(shù)據(jù)dula=0;P0=0 xff;wela=1;P0=0 xfb;wela=0;delayms(5);

25、dula=1;P0=tablege; /送個位段選數(shù)據(jù)dula=0;P0=0 xff;wela=1;P0=0 xf7;wela=0;delayms(5);void delayms(uint xms)uint i,j;for(i=xms;i0;i-) /i=xms即延時約xms毫秒for(j=110;j0;j-);uint read()uchar tl,th1,th2;uint val,lc;while(1)th1=TH0;tl=TL0;th2=TH0;if(th1=th2)break;val=th1*256+tl; /讀取計數(shù)器0所計數(shù)值lc=val*2;/計算自行車行駛的里程數(shù)return

26、lc;void main()uchar a,b,c,d;uint num;TMOD=0 x05; /設(shè)置計數(shù)器0為工作方式1(0000 0101)TH0=0; /將計數(shù)器寄存器初值清零TL0=0;TR0=1;while(1) if(key1=0)delayms(10);if(key1=0)while(!key1);TR0=TR0;num=read();if(key2=0)delayms(10);if(key2=0)TH0=0;TL0=0;while(!key2);if(num=10000)num=0;TH0=0; /將計數(shù)器寄存器值清零TL0=0;a=num/1000;b=num%1000/1

27、00;c=num%1000%100/10;d=num%10;display(a,b,c,d);四、系統(tǒng)調(diào)試與仿真本次實驗采用的是uVision3軟件進行調(diào)試。Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,

28、容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機器碼有兩種方法,一種Keil軟件圖標(biāo)是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于MCS-51單片機的匯編軟件有早期的A51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個

29、功能強大的仿真調(diào)試器等在的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對于使用51系列單片機的愛好者來說是十分必要的,如果你使用C語言編程,那么Keil幾乎就是你的不二之選(目前在國你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。連機調(diào)試就是在樣機中全速運行系統(tǒng)軟件,觀察系統(tǒng)運行情況,并根據(jù)

30、運行結(jié)果修改控制參數(shù),或?qū)浖⒂布桨缸鞅匾男薷?,重?fù)調(diào)試過程,直到系統(tǒng)能滿足各項性能性能指標(biāo)要求。五、心得體會和建議該設(shè)計通過對設(shè)計出來的板子進行調(diào)試,驗證了理論分析結(jié)果的正確性。此次課程設(shè)計經(jīng)過為小組同學(xué)的不懈努力,目前基本達到了預(yù)期的要求。通過對整個系統(tǒng)的調(diào)試,可得到如下結(jié)論:本系統(tǒng)是一個可測量自行車?yán)锍套孕熊嚴(yán)锍瘫恚軌蛲ㄟ^數(shù)碼管顯示出自行車所行使的里程并能通過按鍵控制里程表清零,停止,啟動。理解了自行車?yán)锍谈鶕?jù)以下公式求得:里程=脈沖總數(shù)車輪周長通過實驗證明本次設(shè)計符合設(shè)計的要求,能實現(xiàn)對里程的顯示并能人工控制里程表,功能性較強,具有一定的實踐意義,將會在許多場合應(yīng)用。不過,這個設(shè)計還是有它的不足之處。首先就是沒能實現(xiàn)對自行車速度的測定,在實際應(yīng)用中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論