版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> ?。?0 屆)</b></p><p> 基于單片機高速公路車輛智能檢測、顯示系統設計</p><p><b> 誠信聲明</b></p><p> 本人鄭重聲明:本論文及其研究工作是本人在指
2、導教師的指導下獨立完成的,在完成論文時所利用的一切資料均已在參考文獻中列出。</p><p> 本人簽名: 年 月 日</p><p> 基于單片機高速公路車輛智能檢測、顯示系統設計</p><p> 摘要:我們?yōu)榱耸沟盟緳C重視交通違章的危害,通過單片機技術在高速公路出入口實現對車輛的車牌號的違章行為的智能檢測
3、及違章情況的顯示,使得違法車輛所有人看到自己車輛的違法信息后及時處理。本文詳細介紹了車輛智能檢測系統的方案設計、硬件選擇、軟件編程,該系統以單片機AT89C51芯片為核心,實現了對車輛檢測全過程的自動控制。</p><p> 關鍵詞:道路交通違章,單片機,車牌號,智能檢測</p><p> Based on monolithic integrated circuit</p>
4、<p> highway vehicles intelligence examination,display system design</p><p> Abstract:In order to enable the driver to take traffic citation the harm, display intelligent detection an
5、d violation by violations of MCU technology to realize the license plate number of the vehicle on the highway entrance,make i
6、llegal vehicles’ people to see own vehicles the illegal information to deal with in time. The article introduced the vehicles intelligence examination system project design in detail, the hardware choice ,t he software p
7、rogramming ,this system take the monolithic integ</p><p> Key words: The road traffic violates regulations, The monolithic integrated circuit, The vehicles car license number,Intellect examine</p>&l
8、t;p><b> 目 錄</b></p><p><b> 1 前言1</b></p><p> 1.1 論文研究的目的及意義1</p><p> 1.1.1 研究目的1</p><p> 1.1.2 研究意義2</p><p> 1.2
9、 研究內容及采用的研究手段2</p><p> 1.2.1 課題的研究內容2</p><p> 1.2.2本課題擬采用的手段和途徑3</p><p> 2 車輛智能檢測設計方案4</p><p><b> 2.1 概述4</b></p><p> 2.2 設計思路5<
10、;/p><p><b> 2.3工作原理6</b></p><p> 3 車輛智能檢測硬件設計8</p><p> 3.1 MCS-51系列單片機內部結構及功能部件8</p><p> 3.2 AT89C51引腳功能介紹9</p><p> 3.3 中央處理器CPU12</
11、p><p> 3.3.1 運算部件12</p><p> 3.3.2 控制部件及振蕩器13</p><p> 3.4 基礎知識14</p><p> 3.5 寄存器選擇及顯示器地址16</p><p> 3.6 硬件設計電路圖17</p><p> 4 車輛智能檢測軟件設計
12、18</p><p> 4.1 軟件概述18</p><p> 4.2 指令描述符號18</p><p> 4.3 偽指令19</p><p> 4.4 主程序設計20</p><p> 4.5 延時程序設計21</p><p> 4.6 查表程序設計22</p&g
13、t;<p> 4.7 LCD液晶顯示程序設計23</p><p> 4.7.1 DDRAM顯示數據寄存器23</p><p> 4.7.2 狀態(tài)字說明23</p><p><b> 5 仿真模擬24</b></p><p> 5.1 Proteus簡介24</p><
14、;p> 5.2 編譯與文件加載24</p><p> 5.3 電路仿真25</p><p> 5.4 仿真模擬25</p><p><b> 結論27</b></p><p><b> 參考文獻28</b></p><p><b> 致謝
15、29</b></p><p><b> 附錄30</b></p><p><b> 1 前言</b></p><p> 1.1 論文研究的目的及意義</p><p> 1.1.1 研究目的</p><p> 道路交通違章(簡稱交通違章)是指違反
16、道路交通法規(guī),妨礙道路交通秩序,影響道路交通安全和暢通的過錯行為。大量研究表明,交通違章和交通事故有著密切的相關關系,一次違章就是一次準事故,減少違章就是減少準事故。因此,做好違章糾正工作對交通參與者自覺遵守交通法規(guī),保護公民的合法權益,減少交通事故,維護道路交通秩序,保障交通安全、暢通有著十分重要的意義。</p><p> 在改革開放以前,我國經濟發(fā)展緩慢,機動化水平不高,交通事故情況不嚴重。但改革開放以來,
17、尤其是進入20世紀80年代中期后,我國經濟進入全面快速發(fā)展時期,機動車擁有量增長迅速,伴隨著經濟進入全面快速發(fā)展,交通事故也明顯增加。</p><p> 從1985年起,我國的機動車增長迅速,每年的機動車增長速度都在10%以上,有時甚至達到30%,但隨著機動車數量的增長,如今我國的車禍也成了世界第一。</p><p> 2007年上半年全國共發(fā)生道路交通事故15.9萬起,造成3.7萬人
18、死亡、18.9萬人受傷,直接財產損失5.4億元。超速行駛仍是機動車肇事的主要原因。 </p><p> 由于奧運期間開展的道路交通安全攻堅戰(zhàn),2008年,全國道路交通事故死亡人數為73484人,同比下降10%。 </p><p> 2009年,據公安部交通管理局通報,2009年,全國共發(fā)生道路交通事故238351起,造成67759人死亡、275125人受
19、傷,直接財產損失9.1億元,與去年同期相比,分別下降10.1%、7.8%、9.8%和10.7%。 其中,酒后駕駛導致的事故死亡人數降幅明顯。全國萬車死亡率為3.6,同比減少0.7。</p><p> 2010年,全國共發(fā)生道路交通事故238351起,造成67759人死亡、275125人受傷,直接財產損失9.1億元。 </p><p> 2011年,全國共接報涉及人員
20、傷亡的道路交通事故210812起,共造成62387人死亡,其中營運客貨車輛肇事50296起,占23.9%,造成20648人死亡,占33.1%。全國共發(fā)生一次死亡10人以上的特大交通事故27起,造成451人死亡,其中營運客貨車肇事的事故23起,造成 390人死亡,分別占 85.1%和86.5%。</p><p> 人流、物流、車流的快速增長,是經濟發(fā)展、市場繁榮、人民生活水平提高的必然趨勢。但
21、事物的另一面向世人昭示:我國已經進入道路交通事故的高發(fā)期。通過對違章情況的檢測和顯示,使得司機重視交通違章的危害,在減少違章的同時,使城市道路變得更秩序井然。</p><p> 1.1.2 研究意義</p><p> 在國家公布的道路事故統計資料匯編中,將交通事故的原因分類為機械故障原因、機動車駕駛員原因、非機動車駕駛員原因、行人乘車人原因、道路原因、其它原因。在近些年來的交通事故統
22、計數據中,可以看到由于機動車駕駛員原因造成的交通事故一直在83%以上,而其中機動車駕駛員在路面上的可見違章造成的事故達60%以上,如果加上非機動車駕駛員和行人及乘車人的違章造成的交通事故,則路面上可見的交通違章造成的事故可達到交通事故總數的70%左右。而由此造成的人員傷亡和財產損失更是數額巨大。因此治理交通違章是擺在交通管理者和交通參與者面前的非常緊迫而又重大的任務。</p><p> 所以我們通過交通處罰對交
23、通參與者進行治理。交通違法處罰是國家法定的,具有合法性,其作用是對交通違法者進行處罰和教育。我們?yōu)榱耸沟盟緳C重視交通違章的危害,尤其是對于一些抱有僥幸心理,經常不守法的司機更具有震懾力,通過在高速公路出入口實現對車輛的車牌號的違章行為的查詢檢測及違章情況的顯示,使得違法車輛所有人看到自己車輛的違法信息后及時處理。</p><p> 1.2 研究內容及采用的研究手段</p><p>
24、1.2.1 課題的研究內容</p><p> 改革開放以來,尤其是進入20世紀80年代中期后,我國經濟進入全面快速發(fā)展時期,機動車擁有量增長迅速,伴隨著經濟進入全面快速發(fā)展,交通事故也明顯增加。所以運用MCS—51單片機指令完成對高速出入口車輛車牌號的檢測及違章情況的顯示,并運用相關編程軟件對其實現課題所要求實現的功能。并且會運用仿真軟件對系統進行功能仿真。對遇到的問題能通過查閱資料解決,對單片機技術、違章情
25、況及顯示系統有進一步的了解,并能把他們有機的結合。</p><p> 本課題的主要任務是設計一個高速公路出入口車輛車牌號違章情況的顯示,要求設計的系統能夠準確記錄車輛的監(jiān)測及違章情況,使得司機重視交通違章的危害,尤其是對于一些抱有僥幸心理,經常不守法的司機具有震懾力,同時使得違法車輛所有人看到自己車輛的違法信息后及時處理。</p><p> 1.2.2本課題擬采用的手段和途徑</
26、p><p> 本課題的研究需要查閱大量的資料,可以到圖書館查閱與本課題相關的書籍和期刊,還可以上網瀏覽最新的有關本課題的文獻資料,用MCS-0851單片機進行編程,并用Proteus軟件進行硬件的設計,并對軟硬件進行仿真,對仿真所不符合條件的部分進行修改,設計出符合設計要求的車輛車牌號違章情況的顯示。</p><p> 2 車輛智能檢測設計方案</p><p>&l
27、t;b> 2.1 概述</b></p><p> 把組成微型計算機的各功能部件:中央處理器CPU、隨機存取存儲RAM、只讀存儲器ROM、可編程存儲器EPROM、并行和串行輸入/輸出(I/O)接口、定時器/計數器、中斷控制器等部件集成在一塊半導體芯片上,構成一個完整的微型計算機系統,稱之為單片微型計算機,簡稱單片機。隨著大規(guī)模集成電路技術的發(fā)展,當前增強型單片機內還集成了A/D、D/A轉換器,
28、高速輸入/輸出部件,直接存儲器存取通道,浮點計算,脈寬調制電路,看門狗,以及LCD(液晶)驅動電路等新的特殊功能部件。由于它的結構和指令功能都是按工業(yè)控制要求設計的,特別適合于工業(yè)控制及與控制有關的數據處理場合,因而目前應確切稱其為微控制器或者微控制單元,單片機的稱謂只是保留了其稱呼習慣。</p><p> MCS-51系列單片機是20世紀80年代由美國Intel公司推出的一種高性能8位單片機。它的片內集成了并
29、行I/O、串行I/O和16位定時器/計數器,片內的RAM和ROM都比較大,RAM可達256B,新型51系列單片機的ROM可達64KB。在20世紀90年代后期,美國Intel公司出于公司發(fā)展戰(zhàn)略的考慮將主要精力集中在了微處理器的研發(fā)和生產上,并逐步退出了單片機的市場,但在單片機的發(fā)展和應用歷史中,MCS-51系列單片機已經得到科技界和工業(yè)界用戶廣泛的認可。雖然許多半導體公司看到了單片機巨大的市場前景并紛紛加入到這一領域的開發(fā)研制,并為滿足
30、各種不同的需求推出了多個品種的系列機,這些單片機產品還采用了多種創(chuàng)新技術,產品的性能和可靠性都有了極大的改進和提高,但這些單片機產品大都采用8051單片機的核心技術作為其內核。</p><p> MCS-51系列單片機生產工藝有兩種,分別為HMOS(高密度短溝道MOS工藝)和CHMOS(互補金屬氧化物的HMOS工藝),這兩種單片機完全兼容。CHMOS工藝比較先進,不光具有HMOS的高速性,同時還具有CMOS的低
31、功耗性,因此,CHMOS是HMOS和CMOS的結合。為區(qū)別起見,CHMOS工藝的單片機名稱前冠以字母C,如80C31、80C51、87C51等。不帶字母C的為HMOS芯片。此外,CHMOS型單片機中還有一些以80C51為核心,加上一些新的功能部件所組成的增強型單片機,如8XC51FB增加了一個可編程的讀數器陣列PCA;8XC51GA增加了片內的A/D轉換器;荷蘭Philips公司生產的與MCS-51兼容的增強型單片機8XC552,不僅增
32、加了片內A/D轉換器、片內看門狗電路和片內PWM輸出通道,還提供了一種新型的芯片間通信總線I2C接口,利用數據和時鐘兩根線就可以實現芯片之間的數據傳送;Philips還提供了I2C總線進行系統擴展。HMOS型單片機電平與TTL電平兼容,而CHMOS型單片機的電平既與TTL電平兼容,又與CMOS電平兼容。所以,在單片機應用系統中應盡量采用CH</p><p> MCS-51系列單片機在片內程序存儲器的配置上有3種
33、,即掩膜ROM、EPROM和無片內程序程序存儲器。8031片內無ROM,必須外接EPROM才能應用;8051片內具有4KB的ROM;而8751片內具有4KB的紫外線可擦除電可編程的只讀存儲器(EPROM)。這3種芯片的引腳兼容。單片機8751最適用于開發(fā)樣機、小批量生產和需要現場進一步完善的場合,8051單片機適用于低成本、大批量生產的場合,而8031單片機則適用于能方便靈活地在現場進行修改和更新程序存儲器的場合。</p>
34、<p> MCS-51系列單片機在功能上有基本型和增強型兩種。通常以芯片型號的末位數字來區(qū)別,末位數字為“1”的為基本型,末位數字為“2”的為增強型,如80C51為基本型,80C52為增強型等[1]。</p><p><b> 2.2 設計思路</b></p><p><b> (1)電路設計</b></p>&
35、lt;p> 采用直接訪問方式,LCD模塊的地址空間由P2.7直接提供,當總線尋址的地址最高位為1時,允許訪問LCD模塊,選擇合適的P2.0和P2.1的電平,就可以實現LCD模塊相應的讀寫操作。</p><p> 打開Proteus的ISIS,通過對象選擇器按鈕,從元件庫中選擇如下元器件:AT89C51、LCD、74HC00,并置入對象選擇器窗口。然后將選擇的元器件、電源和地線放置在編輯窗口中。</
36、p><p><b> (2)編程思路</b></p><p> 采用直接訪問方式實現,初始化設置為清屏、功能設置、顯示狀態(tài)和輸入方式等過程,每個過程都是先判斷忙→送數據→再寫入的編程方法,其中寫入指令和寫入數據所用的指令不同。由于采用直接訪問電路結構,對數據的讀/寫要用MOVX類指令來完成。</p><p><b> ↓</b
37、></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> 圖2.1流程圖</
38、b></p><p><b> 2.3工作原理</b></p><p> 液晶顯示屏是屬于被動發(fā)光顯示器件,屏蔽本身的像素點并不能主動發(fā)光,它是靠調制外界光的光通量實現亮度控制的。</p><p> 將液晶的分子放置在電場中間,改變電場的方向和強度,分子也會隨同電場方向的改變產生扭曲。通過液晶分子的扭曲可以使通過的光線受到控制(通過
39、、阻斷)。</p><p> 液晶顯示器在上下玻璃電極之間封入向列型液晶材料,由于液晶的四壁效應,在定向膜的作用下,液晶分子在正、背玻璃電極上呈水平排列,但互相正交,而玻璃間的分子呈連續(xù)扭轉過渡,這樣的構造能使液晶對光產生旋光作用,使光的偏振方向旋轉90°。</p><p> 當外部光線通過上偏振片后形成偏振光,偏振方向呈現垂直方向,此偏振光通過液晶材料后,被旋轉90
40、6;,偏振方向呈現水平方向,此方向恰與下偏振偏方向一致,因此此光能通過下偏振片,到達反射板,經反射后經原路返回,從而呈現透明狀態(tài)。</p><p> 當在液晶盒的上、下電極加上一定的電壓后,電極部分的液晶分子轉成垂直排列,從而失去了旋光性。因此,從上偏振片入射的偏振光不被旋轉,當此偏振光到達下偏振片時,因其被下偏振片吸收,無法到達反射板形成反射,所以呈現黑色。根據需要,將電極做成各種文字、數字或點陣,就可以獲得
41、所需的各種顯示[2]。</p><p> 3 車輛智能檢測硬件設計</p><p> 3.1 MCS-51系列單片機內部結構及功能部件</p><p> MCS-51系列單片機是由8大部分組成的。這8大部分是:</p><p> ?。?)一個8位中央處理器CPU。它由運算部件、控制部件構成,其中包括振蕩電路和時鐘電路,其主要完成單片機
42、的運算和控制功能。它是單片機的核心部件,決定了單片機的主要功能特性。</p><p> ?。?)128個字節(jié)(MCS-52子系列為256字節(jié))的片內數據存儲器RAM。其片外數據存儲器的尋址范圍為64KB,用于存放可讀寫的數據,如運算的中間結果或最終結果等。</p><p> ?。?)4KB(MCS-52子系列為8KB)的片內程序只讀存儲器ROM或EPROM(8031和8032無)。其片外可
43、尋址范圍為64KB,主要用于存放已編制的程序,也可以存放一些原始數據和表格。</p><p> ?。?)18個(MCS-52子系列為21個)特殊功能寄存器SFR。它用于控制和管理片內算術邏輯部件、并行I/O口、串行I/O口、定時器/計數器、中斷系統等功能模塊的工作。</p><p> ?。?)4個8位并行輸入輸出I/O接口:P0口、P1口、P2口、P3口(共32線),用于并行輸入或輸出數據
44、。</p><p> (6)1個串行I/O接口。它可使數據1位1位串行地在計算機與外設之間傳送,可用軟件設置為4種工作方式,用于多處理機通訊、I/O擴展或全雙工通用異步接收器(UART)。</p><p> ?。?)2個(MCS-52子系列為3個)16位定時器/計數器。它可以設置為計數方式對外部事件進行計數,也可以設置為定時方式進行定時。計數或定時的范圍由軟件來設定,一旦計數或定時結束則
45、向CPU發(fā)出中斷請求,CPU根據計數或定時的結果對計算機或外設進行控制。</p><p> ?。?)1個具有5個(MCS-52子系列為6個或7個)中斷源,可編程為2個優(yōu)先級的中斷系統。它可以接收外部中斷申請、定時器/計數器中斷申請和串行口中斷申請。常用于實時控制、故障自動處理、計算機與外設間傳送數據及人—機對話等[4]。</p><p> 3.2 AT89C51引腳功能介紹</p&
46、gt;<p> MCS-51系列單片機芯片均為40個引腳,HMOS工藝制造的芯片采用雙列直插(DIP)方式封裝,其引腳示意及功能分類如圖1.1所示。CMOS工藝制造的低功耗芯片也有采用方型封裝的,但為44個引腳,其中4個引腳是不使用的。</p><p> 圖3.1 AT89C51系列單片機引腳及總線結構</p><p> ?。╝)管腳圖;(b)引腳功能分類</p&g
47、t;<p> MCS-51系列單片機的40個引腳中有2個專用于主電源的引腳,2個外接晶體的引腳,4個控制或與其它電源復用的引腳,以及32條輸入輸出I/O引腳。下面按引腳功能分為4部分敘述各引腳的功能。</p><p> 1.主電源引腳VCC和VSS</p><p> VCC(40腳):接+5V電源正端;</p><p> VSS(20腳):接+
48、5V電源地端。</p><p> 2.外接晶體引腳XTAL1和XTAL2</p><p> XTAL1(19腳):指外部石英晶體的一端。在單片機內部,它是一個反相放大器的輸入端,這個放大器構成了片內振蕩器。當采用外部時鐘時,對于HMOS單片機,該引腳接地;對于CHMOS單片機,該引腳作為外部振蕩信號的輸入端。</p><p> XTAL2(18腳):接外部晶體
49、的另一端。在單片機內部,接至片內振蕩器的反相放大器的輸出端。當采用外部時鐘時,對于HMOS單片機,該引腳作為外部振蕩信號的輸入端;對于CHMOS芯片,該引腳懸空不接。</p><p> 3.控制信號或其它電源復用引腳</p><p> 控制信號或與其它電源復用引腳有RST/VPD、ALE/、和/VPP等4種形式。</p><p> ?。?)RST/VPD(9腳)
50、:RST即為RESET,VPD為備用電源,所以該引腳為單片機的上電復位或掉電保護端。當單片機振蕩器工作時,該引腳上出現持續(xù)兩個機器周期的高電平,就可實現復位操作,使單片機回復到初始狀態(tài)。</p><p> 當VCC降低到低電平規(guī)定值或掉電時,該引腳可接上備用電源VPD(+5±0.5V)為內部RAM供電,以保證RAM中的數據不丟失。</p><p> ?。?)ALE(30腳):當
51、訪問外部存儲器時,ALE(允許地址鎖存信號)以每機器周期兩次的頻率輸出,用于鎖存出現在P0口的低8位地址。在不訪問外部存儲器時,ALE端仍以上述不變的頻率(振蕩器頻率的1/6),周期性地出現正脈沖信號,可作為對外輸出的時鐘脈沖或用于定時目的。但要注意,在訪問片外數據存儲器期間,ALE脈沖會跳過一個,此時作為時鐘輸出就不妥當了[5]。</p><p> 對于片內含有EPROM的單片機,在EPROM編程期間,該引腳
52、作為編程脈沖的輸入端。</p><p> (3)(29腳):片外程序存儲器讀選通信號輸出端,低電平有效。當從外部程序存儲器讀取指令或常數期間,每個機器周期兩次有效,以通過數據總線口讀取指令或常數。當訪問外部數據存儲器期間,信號將不出現。</p><p> ?。?)/VPP(31腳):為訪問外部程序存儲器控制信號,低電平有效。當端保持高電平時,單片機訪問片內程序存儲器4KB(MCS-52子
53、系列為8KB)。當超出該范圍時,自動轉去執(zhí)行外部程序存儲器的程序。當端保持低電平時,無論片內有無程序存儲器,均只訪問外部程序存儲器。</p><p> 對于片內含有EPROM的單片機,在EPROM編程期間,該引腳用于接21V的編程電源VPP。</p><p> 4.輸入/輸出(I/O)引腳P0口、P1口、P2口及P3口</p><p> (1)P0口(39腳~
54、32腳):P0.0~P0.7統稱為P0口。當不接外部存儲器與不擴展I/O接口時,它可作為準雙向8位輸入/輸出接口。當接有外部存儲器或擴展I/O接口時,P0口為地址/數據分時復用口。它分時提供8位地址總線和8位雙向數據總線。</p><p> 對于片內含EPROM的單片機,當EPROM編程時,從P0口輸入指令字節(jié),而當檢驗程序時,則輸出指令字節(jié)。</p><p> ?。?)P1口(1腳~8
55、腳):P1.0~P1.7統稱為P1口,可作為準雙向I/O接口使用。</p><p> 對于MCS-52子系列單片機,P1.0與P1.1還有第2功能:P1.0可用作定時器/計數器2的計數脈沖輸入端T2;P1.1用作定時器/計數器2的外部控制端T2EX。</p><p> 對EPROM編程和進行程序驗證時,P1口接收輸入的低8位地址。</p><p> (3)P2
56、口(21腳~28腳):P2.0~P2.7統稱為P2口,一般可作為準雙向I/O接口。當接有外部存儲器或擴展I/O接口且尋址范圍超過256個字節(jié)時,P2口用于高8位地址總線送出高8位地址。</p><p> 對EPROM編程和進行程序驗證時,P2口接收輸入的高8位地址。</p><p> ?。?)P3口(10腳~17腳):P3.0~P3.7統稱為P3口。它為雙功能口,可以作為一般的準雙向I/
57、O接口,也可以將每1位用于第2功能,而且P3口的每一條引腳均可獨立定義為第1功能的輸入輸出或第2功能。P3口的第二功能詳見表3.1[3]。</p><p> 表3.1 P3口第二功能表</p><p> 綜上所述,MCS-51系列單片機的引腳作用可歸納為以下兩點:</p><p> ?。?)單片機功能多,引腳數少,因而許多引腳都具有第二功能。</p>
58、;<p> (2)單片機對外呈3總線形式,由P2口、P0口組成16位地址總線;由P0口分時復用作為數據總線;由ALE、、RST、與P3口中的T0、T1共10個引腳組成控制總線。由于是16位地址線,因此,可使外部存儲器的尋址范圍達到64KB。</p><p> 3.3 中央處理器CPU</p><p> 中央處理器是單片機內部的核心部件,它決定了單片機的主要功能特性。它由
59、運算部件和控制部件兩大部分組成。</p><p> 3.3.1 運算部件</p><p> 運算部件是以算術邏輯單元ALU為核心,加上累加器A、寄存器B、暫存器TMP1和TMP2、程序狀態(tài)寄存器PSW及專門用于位操作的布爾處理機組成的,它能實現數據的算術邏輯運算、位變量處理和數據傳送操作[6]。</p><p> 1.算術邏輯單元ALU與累加器A、寄存器B&l
60、t;/p><p> 算術邏輯單元ALU不僅能完成8位二進制數的加(帶進位加)、減(帶借位減)、乘、除、加1、減1及BCD加法的十進制調整等算術運算,還能對8位變量進行邏輯“與”、“或”、“異或”、求補、清零等邏輯運算,并具有數據傳送、程序轉移等功能。累加器ACC簡稱累加器A,為一個8位寄存器,它是CPU中使用最頻繁的寄存器。進入ALU作算術和邏輯運算的操作數多來自A,運算結果也常送回A保存。寄存器B是為ALU進行乘
61、除法設置的。在執(zhí)行乘法運算指令時,用于存放其中一個乘數和乘積的高8位數;執(zhí)行除法運算指令時,B中存放除數和余數;若不作乘、除法運算時,則可作為通用寄存器使用。</p><p><b> 2.程序狀態(tài)字</b></p><p> 程序狀態(tài)字寄存器PSW(8位)是一個標志寄存器,它保存指令執(zhí)行結果的特征信息,以供程序查詢和判別。其程序狀態(tài)字格式及含義如下:</p
62、><p> PSW.7 PSW.0</p><p> CY(PSW.7)—進位標志位。由硬件或軟件置位和清零。它表示運算結果是否有進位(或借位)。如果運算結果在最高位有進位輸出(加法時)或有借位輸入(減法時),則CY=1,否則CY=0。</p><p>
63、 AC(PSW.6)—輔助進位(或稱半進位)標志。它表示兩個8位數運算,低4位有無進(借)位的狀況。當低4位相加(或相減)時,若D3位向D4位有進位(或有借位),則AC=1(或AC=0)。在BCD碼運算的十進制調整中要用到該標志。</p><p> F0(PSW.5)—由用戶定義的標志位。用戶可根據自己的需要用軟件對F0賦以一定的含義,并根據F0=1或0來決定程序的執(zhí)行方式。</p><p&
64、gt; RS1(PSW.4)、RS0(PSW.3)—工作寄存器組選擇位。可用軟件置位或清零,用以指示4個工作寄存器中當前使用的工作寄存器組。</p><p> OV(PSW.2)—溢出標志位。由硬件置位或清零。它反映運算結果是否溢出(即運算結果的正確性),溢出時(結果不正確)OV=1,否則OV=0。溢出標志OV和進位標志CY是兩種不同性質的標志。溢出是指有正、負號的兩數運算時,運算結果超出了累加器以補碼所能表
65、示的一個有符號數的范圍(-128~+127)。而進位則表示兩數運算最高位(D7)相加(或相減)有無進(或借)位。因此使用時應加以注意。</p><p> PSW.1—未定義位。</p><p> P(PSW.0)—奇偶標志位。在執(zhí)行指令后,單片機根據累加器A中1的個數的奇偶自動給該標志置位或清零。若A中1的個數為奇數,則P=1,否則P=0。該標志對串行通信的數據傳輸是非常有用的,通過奇
66、偶校驗可檢驗傳輸的可靠性[6]。</p><p><b> 3.布爾處理機</b></p><p> 布爾處理(即位處理)是MCS-51單片機ALU所具有的一種功能。單片機指令系統中的布爾指令集(17條位操作指令),存儲器中的位地址空間,以及借用程序狀態(tài)標志寄存器PSW中的進位標志CY作為位操作“累加器”,構成了單片機內的布爾處理機。它可對直接尋址的位(bit)變
67、量進行位處理,如置位、清零、取反、測試轉移以及邏輯“與”、“或”等位操作,使用戶在編程時可以利用指令完成原來單憑復雜的硬件邏輯所完成的功能,并可方便地設置標志等。</p><p> 3.3.2 控制部件及振蕩器</p><p> 控制部件是單片機的神經中樞,它包括定時和控制電路、指令寄存器、譯碼器以及信息傳送控制等部件。它先以主振頻率為基準發(fā)出CPU的時序,對指令進行譯碼,然后發(fā)出各種
68、控制信號,完成一系列定時控制的微操作,用來協調單片機內部各功能部件之間的數據傳送、數據運算等操作,并對外發(fā)出地址鎖存ALE、外部程序存儲器選通,以及通過P3.6和P3.7發(fā)出數據存儲器讀、寫等控制信號,并且接收處理外接的復位RST和外部程序存儲器訪問控制信號。</p><p> 單片機的定時控制功能是由片內的時鐘電路和定時電路來完成的,而片內的時鐘產生有兩種方式:一種是內部時鐘方式;一種是外部時鐘方式,如圖3.
69、2所示。</p><p> 圖3.2 HMOS型MCS—51單片機時鐘產生方式</p><p> (a)內部振蕩器方式;(b)外部振蕩器方式</p><p> 采用內部時鐘方式時,片內的高增益反相放大器通過XTAL1、XTAL2外接作為反饋元件的片外晶體振蕩器(呈感性)與電容組成的并聯諧振回路構成一個自激振蕩器,向內部時鐘電路提供振蕩時鐘。振蕩器的頻率主要取決
70、于晶體的振蕩頻率,一般晶體可在1.2MHz~12MHz之間任選,電容C1、C2可在5pF~30pF之間選擇,電容的大小對振蕩頻率有微小的影響,可起頻率微調作用[15]。</p><p> 采用外部時鐘方式時,外部振蕩信號通過XTAL2端直接接至內部時鐘電路,這時內部反相放大器的輸入端XTAL1端應接地。通常外接振蕩信號為低于12MHz的方波信號。</p><p><b> 3
71、.4 基礎知識</b></p><p><b> 1.LCD模塊</b></p><p> LCD模塊引腳說明如表3.2所示。</p><p> 表3.2 LCD模塊引腳功能</p><p><b> 2.基本操作說明</b></p><p><b&
72、gt; 1)讀狀態(tài)</b></p><p> 輸入:RS=L,R/W=H,CS1或CS2=H,E=高脈沖;</p><p> 輸出:D0~D7=狀態(tài)字。</p><p><b> 2)寫指令</b></p><p> 輸入:RS=L,R/W=L,D0~D7=指令碼,CS1或CS2=H,E=高脈沖;&
73、lt;/p><p><b> 輸出:無。</b></p><p><b> 3)讀數據</b></p><p> 輸入:RS=H,R/W=H,CS1或CS2=H,E=H;</p><p> 輸出:D0~D7=數據。</p><p><b> 4)寫數據<
74、/b></p><p> 輸入:RS=H,R/W=L,D0~D7=數據,CS1或CS2=H,E=高脈沖;</p><p><b> 輸出:無。</b></p><p><b> 3.指令說明</b></p><p><b> 1)初始化設置</b></p&g
75、t;<p> 顯示開/關設置如下:</p><p><b> 顯示初始設置如下:</b></p><p><b> 2)數據控制</b></p><p> 控制器內部設有一個數據地址頁和一個數據地址列指針,用戶可通過它們來訪問內部的全部512字節(jié)RAM。</p><p><
76、;b> 數據指針設置如下:</b></p><p><b> 4.初始化過程</b></p><p> ?。?)寫指令C0H,設置顯示初始行。</p><p> (2)寫指令3FH,開顯示。</p><p><b> 5.連線</b></p><p>
77、; 把仿真器的數據線與LCD數據線相連。RS連P2.0,CS1連P2.2,R/W連P2.3,CS2連P2.1,E連P2.7。</p><p> 3.5 寄存器選擇及顯示器地址</p><p> LCD內部有兩個寄存器,一個是指令寄存器IR,另一個是數據寄存器DR。IR用來存放由微控制器所用來的指令代碼,如光標歸位、清除顯示器;DR用來存放欲顯示的數據。</p><
78、p> 顯示的次序是先把欲存放數據地址寫入IR,再把欲顯示的數據寫入DR,DR就會自動把數據送至相應的DD RAM或CG RAM地址,DD RAM是顯示數據的存儲器,用來存放LCD的顯示數據;CG RAM是字符產生器,用來存放自己設計的顯示數據。</p><p> LCD指令寄存器和數據寄存器的選擇如表所示,通常R/W與RS信號線一起使用[7]。</p><p> 表3.3 LC
79、D寄存器的選擇</p><p> 3.6 硬件設計電路圖</p><p> 圖3.3硬件設計電路圖</p><p> 4 車輛智能檢測軟件設計</p><p><b> 4.1 軟件概述</b></p><p> 由于構成計算機的電子器件特性所決定,計算機只能識別二進制代碼。這種以二進
80、制代碼來描述指令功能的語言,稱之為機器語言,用機器語言組成的程序,稱為目標程序。計算機就是按照機器語言的指令來完成各種功能操作的,它具有程序簡潔、占用存儲空間小、執(zhí)行速度快、控制功能強等特點。由于機器語言只是一種用二進制0、1組成的代碼,人們不易辨識、記憶和書寫,因此使用不便、易錯,也很難用它來進行程序設計[14]。</p><p> 為了既能體現機器語言的特點,又能便于人們理解、記憶和書寫,計算機常采用助記符
81、來編寫程序。助記符是根據機器指令不同的功能和操作對象來描述指令的,由于它采用有關英文縮寫來描述指令的特征,因此,不但便于記憶,也便于理解和分類。</p><p> 單片機匯編語言與高級語言相比直觀性、易讀性不強,但它程序代碼量少,最能直接反映如何用指令控制單片機工作過程,對于充分理解和掌握單片機內部工作機理具有良好的作用。</p><p> ?。?#160;語言和匯編語言相比,匯編語言是
82、一種用文字助記符來表示機器指令的符號語言, 是最接近機器碼的一種語言。 </p><p> 對于目前普遍使用的 RISC 架構的 8BIT MCU 來說,其內部 ROM、RAM、STACK 等資源都有限, 如果使用 C 語言編寫,一條 C 語言指令編譯后,會變成很多條機器碼,很容易出
83、現ROM 空間 不夠、堆棧溢出等問題。而且一些單片機廠家也不一定能提供C 編譯器。而匯編語言,一條 指令就對應一個機器碼, 每一步執(zhí)行什么動作都很清楚, 并且程序大小和堆棧調用情況都容易控制,調試起來也比較方便。所以在單片機開發(fā)中,我認為采用匯編語言比較好[8]。</p><p> 4.2 指令描述符號</p><p> Rn
84、(n=0~7) 當前選中的工作寄存器組中的寄存器R0~R7之一;</p><p> Ri(i=0,1) 當前選中的工作寄存器組中的寄存器R0或R1;</p><p> @ 間接尋址或變址尋址前綴;</p><p> #data 8位立即數;</p><p> #data16 16位立即數;&l
85、t;/p><p> direct 片內RAM單元地址及SFR地址(可用符號名稱表示);</p><p> addr11 11位目的地址;</p><p> addr16 16位目的地址;</p><p> rel 補碼形式表示的8位地址偏移量,其值在-128~+127范圍內;</p>
86、;<p> DPTR 數據指針,可用作16位地址寄存器;</p><p> bit 片內RAM位地址、SFR中的位地址(可用符號名稱表示);</p><p> A(ACC) 累加器。雖然A和ACC指的是同一個寄存器,但在指令中它們是有區(qū)別的。ACC在匯編后的機器碼中必有一個字節(jié)的操作數是ACC的字節(jié)地址E0H,A則隱含在指令操作碼
87、中。所以,在機器碼中不顯含E0H地址的指令A不能用ACC代替;特殊功能寄存器直接尋址和位尋址要用ACC代替,而不能用A代替;</p><p> B 專用寄存器,用于乘法和除法指令中;</p><p> C 進位標志或布爾處理機中的累加器;</p><p> / 位操作數的取反操作前綴;</p&g
88、t;<p> (×) 表示×地址單元或寄存器的內容;</p><p> ((×)) 表示以×單元或寄存器內容為地址所指定單元的內容;</p><p> ← 數據傳送方向;</p><p> ←→ 數據交換。</p><p>&
89、lt;b> 4.3 偽指令</b></p><p> 偽指令是不產生機器語言的指令,它僅提供匯編控制信息。偽指令的語句格式通常為 [標號] 定義符 [操作數] [;注釋]</p><p> 格式中的[]表示可省略。</p><p> 1.ORG:匯編起始地址</p><p> 格式:ORG 地址&
90、lt;/p><p><b> 2.EQU:賦值</b></p><p> 格式:字符名稱 EQU 數據或SFR</p><p> 3.DB:定義數據字節(jié)</p><p> 格式:[標號:] DB 項或項表</p><p> 4.DW:定義數據字</p><p>
91、; 格式:[標號:] DW 項或項表</p><p><b> 5.BIT:位定義</b></p><p> 格式:字符名稱 BIT 位地址</p><p> 6.END:匯編結束</p><p> 格式:END ;單獨使用</p><p><b> 4.4 主程序
92、設計</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓<
93、;/b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b&g
94、t;</p><p><b> ↓</b></p><p> 圖4.1 主程序流程圖</p><p> 4.5 延時程序設計</p><p> 在單片機匯編語言程序設計中使用到延時程序非常廣泛。例如,動態(tài)LED顯示程序設計、LCD接口程序設計、鍵盤接口程序設計中的軟件消除抖動等都采用了延時程序。所謂延時,就是讓C
95、PU做一些與主程序功能無關的操作來消耗掉CPU的時間。因此對于延時程序,必須知道每一條指令的執(zhí)行時間,才能精確計算出來整個延時程序的延時時間[11]。</p><p> ↓ </p><p><b> ↓</b></p><p><b> ↓</b></p&
96、gt;<p><b> ↓</b></p><p><b> ↓</b></p><p><b> ↓</b></p><p><b> N</b></p><p><b> Y</b></p>
97、<p> 圖4.2 延時程序流程圖</p><p> 4.6 查表程序設計</p><p> 利用查表程序能避免進行復雜的運算或轉換過程,廣泛用于顯示、打印字符的轉換及數據補償、計算、轉換等程序中。</p><p> 查表就是根據自變量x的值,在表中查找到y,使y=f(x)。x和y可以是各種類型的數據。表的結構也是多種多樣的,數據是在編程時通過DB
98、偽指令將其存入程序存儲器ROM中形成數據表格的。MCS-51單片機提供了兩條專門用于查表操作的查表指令:</p><p> MOVC A,@A+DPTR ;(A+DPTR)→A</p><p> MOVC A,@A+PC ;FC+1→PC,(A+PC) →A</p><p> 其中,DPTR
99、為數據指針,一般用于存放表首地址;累加器A是查表的偏移量(即在表格中的第幾項數據)[12]。</p><p> 4.7 LCD液晶顯示程序設計</p><p> 4.7.1 DDRAM顯示數據寄存器</p><p> DDRAM顯示數據存儲器用于存放LCD當前要顯示的數據,其容量為80字節(jié)的RAM,能夠存儲80個8位字符代碼。LCD顯示屏上的每個位置都有相對
100、應的DDRAM字節(jié),在DDRAM中某地址寫入字符代碼,就是在LCD相應的位置顯示字符,其地址和屏幕的對應關系如圖4.3所示。</p><p> 圖4.3 地址和屏幕對應關系圖</p><p> 若將“A”顯示在第二行的第3個字節(jié),則只要將字符A的代碼41H寫入到地址為42單元RAM中即可。但存儲地址要在實際地址基礎上加80H。</p><p> 4.7.2 狀
101、態(tài)字說明</p><p> STA0~STA4:未用。</p><p> STA5:液晶顯示狀態(tài),1為關閉,0為顯示。</p><p><b> STA6:未用。</b></p><p> STA7:讀/寫操作使能,1為禁止,0為允許。</p><p> 對控制器每次進行讀/寫操作之前,
102、都必須進行讀/寫檢測,以確保STA7為0。</p><p><b> 5 仿真模擬</b></p><p> 5.1 Proteus簡介</p><p> Proteus是英國Labcenter公司開發(fā)的電路分析與仿真軟件。該軟件的特點是:①集原理圖設計、仿真和PCB設計于一體,真正實現從概念到產品的完整電子設計工具,②具有模擬電路、數字
103、電路、單片機應用系統、嵌入式系統(不高于ARM7)設計與仿真功能,③具有全速、單步、設置斷點等多種形式的調試功能,④具有各種信號源和電路分析所需的虛擬儀表,⑤支持Keil C51 uVision2、MPLAB等第三方的軟件編譯和調試環(huán)境,⑥具有強大的原理圖到PCB板設計功能,可以輸出多種格式的電路設計報表。擁有PROTEUS電子設計工具,就相當于擁有了一個電子設計和分析平臺。</p><p>
104、 ?。?)Proteus軟件系統是 一種功能強大的電子設計自動化軟件,是集原理圖設計、仿真和PCB設計于一體,真正實現了從概念到產品設計的開發(fā)平臺。</p><p> (2)Proteus軟件除了具有模擬電路仿真、數字電路仿真之外,Proteus VSM的主要特色是單片機系統的仿真,用戶可在Proteus中直接編輯、編譯、調試代碼,并直觀地看到仿真結果。模型庫中包含了LED/LCD顯示、鍵盤、按鈕、開關、常用電
105、機等通用外圍設備。</p><p> (3)在硬件仿真系統中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變量、寄存器等的當前狀態(tài);同時支持第三方的軟件編譯和調試環(huán)境。</p><p> (4)Proteus還有眾多的虛擬儀器(示波器、邏輯分析儀等)、信號源,以及高級圖表仿真ASF,它們?yōu)楦咝?、高質、高速地完成電子設計提供了檢測、調試、分析的手段[13]。 </p>
106、<p> 5.2 編譯與文件加載</p><p> 將編寫的程序添加到Proteus自帶的編譯器中,對其進行編譯,生成源程序的hex文件。</p><p><b> 5.3 電路仿真</b></p><p> 在單片機中編輯屬性中加載源程序的hex文件,單擊“運行”按鈕,啟動系統仿真。當電路啟動后,在LCD液晶顯示器上出現E
107、Q505無的仿真結果,隔幾秒顯示OH778違停的顯示結果。</p><p><b> 5.4 仿真模擬</b></p><p><b> 圖5.1 硬件圖1</b></p><p><b> 隔幾秒顯示:</b></p><p> 圖5.2 硬件圖2
108、 </p><p><b> 結論</b></p><p> 本次的畢業(yè)設計是一次理論與實際相結合的過程,通過這次基于單片機車輛違章情況的顯示,我了解了單片機方面的理論知識,也成功地將理論知識與實際設計相結合在一起,提升了自己對所學專業(yè)基礎知識的理解和解決實際問題的能力,而且使我的能力得到了鍛煉,經驗得到了豐富,雖然畢業(yè)設計內容多,但是
109、我從其中收獲了許多。通過幾個月的不斷努力,我從單純的理論知識學習狀態(tài),成功地將理論知識和實際設計結合。通過這次設計鍛煉了我的應用能力,使我在單片機的基本原理、單片機應用系統開發(fā)過程,以及在常用編程設計思路技巧(特別是匯編語言)的掌握方面都能向前邁了一大步,為日后成為合格的應用型人才打下良好的基礎。</p><p><b> 參考文獻</b></p><p> [1
110、]梅麗鳳等.單片機原理及接口技術[M].北京:清華大學出版社,2006.5</p><p> [2]楊恢先等.單片機原理與應用[M].北京:國防工業(yè)出版社,2003.3</p><p> [3]張毅坤等.單片微型計算機原理及應用[M].西安:西安電子科技大學出版社,2013.2</p><p> [4]胡鋼等.微機原理及應用[M].北京:機械工業(yè)出版社,200
111、5.1</p><p> [5]康光華.電子技術基礎[M].北京:高等教育出版社,2005</p><p> [6]周荷琴等.微型計算機原理與接口技術[M].中國科學技術大學出版社,2008</p><p> [7]張永楓等.單片機應用實訓教程[M].西安:西安電子科技大學出版社,2005.2</p><p> [8]陳志旺等.51單
112、片機快速上手[M].北京:機械工業(yè)出版社,2011.1</p><p> [9]潘永雄.新編單片機原理與應用實驗[M].西安:西安電子科技大學出版社,2005.9</p><p> [10]陳小忠.公路車輛智能監(jiān)測記錄系統的設計[J].浙江嘉科電子有限公司,2006,(8):11-20</p><p> [11]宋榮等.基于PIC16F74單片機的高速公路車輛
113、監(jiān)測系統[J].深圳職業(yè)技術學院,2009,(8):47-50</p><p> [12]張丙干.高速公路機動車超速監(jiān)測系統設計與實現[D].電子科技大學,2012</p><p> [13]李建鈺.面向高速公路的車輛檢測與跟蹤方法的研究[D].江蘇大學,2010</p><p> [14]周荷琴等.微型計算機原理與接口技術[M].中國科學技術大學出版社,20
114、08</p><p> [15]朱清慧,張鳳蕊,翟天嵩.Proteus教程[M].清華大學出版社,2008.9</p><p><b> 致謝</b></p><p> 時光流水,轉眼之間已是畢業(yè)在即。此時此刻,謹向在我上學及論文完成期間給予莫大關心、支持和幫助的老師、朋友致以深深的謝意!</p><p> 本次
115、設計是在田靜老師的悉心指導和關懷下完成的,通過老師的指導和學習,我得到了一次全面的鍛煉,鍛煉了我的應用能力,使我在單片機的基本原理、單片機應用系統開發(fā)過程,以及在常用編程設計思路技巧(特別是匯編語言)的掌握方面都能向前邁了一大步,以及加強了對Proteus軟件的應用能力,為今后的學習和研究打下了基礎。</p><p> 同時,我也要感謝其他同學的幫助,從他們身上我學到了很多理論知識,自己的實踐能力也得到了很大的
116、提高。</p><p> 在未來的學習和工作中,我會繼續(xù)努力,不斷地實現自己的人生價值,以更好的成績來回報母校,回報社會。</p><p><b> 附錄</b></p><p> 本次程序的完整設計過程:</p><p> XPOS DATA 50H;列方向地址指針</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機高速公路車輛智能檢測、顯示系統設計
- 基于單片機高速公路車輛智能檢測、顯示系統設計【畢業(yè)答辯】
- 基于單片機高速公路車輛智能檢測、顯示系統設計【開題報告】
- 基于單片機高速公路車輛智能檢測、顯示系統設計【任務書 】
- 基于單片機的定時顯示設計畢業(yè)設計(論文)
- 基于avr單片機的高速公路收費系統設計
- 畢業(yè)設計---基于單片機led滾動顯示系統設計
- 畢業(yè)設計--基于單片機的旋轉顯示系統
- 基于單片機的智能加濕器畢業(yè)設計論文
- 基于單片機的智能加濕器畢業(yè)設計論文
- 畢業(yè)設計(論文)基于單片機的交流數字電壓檢測系統仿真設計——數字顯示模塊設計
- 畢業(yè)設計---基于單片機的公交報站顯示系統
- 畢業(yè)設計----基于單片機的智能臺燈系統設計
- 單片機畢業(yè)設計---基于單片機控制的模擬電梯顯示
- 畢業(yè)設計---基于單片機的智能臺燈系統
- 基于單片機的壓力檢測系統設計畢業(yè)設計
- 畢業(yè)設計--基于單片機的交通信息顯示系統設計
- 基于單片機的gps定位信息顯示系統設計畢業(yè)設計
- 基于單片機的交通信息顯示系統設計畢業(yè)設計
- 基于單片機和智能水位控制系統畢業(yè)設計論文
評論
0/150
提交評論