著大規(guī)模與超大規(guī)模集成電路技術(shù)的快速發(fā)展,單片機的應(yīng)用越來越廣泛。下面是小編搜集整理的嵌入式畢業(yè)論文范文,歡迎大家閱讀參考!
一.摘要
隨著大規(guī)模與超大規(guī)模集成電路技術(shù)的快速發(fā)展,微型計算機技術(shù)形成了兩大分支:微處理器和單片機。單片機的出現(xiàn)是計算機發(fā)展史上的重要里程碑,單片機具有集成度高、體積小、功能強、可靠性高、價格低廉等優(yōu)點,廣泛應(yīng)用于工業(yè)測控、智能儀器儀表、通信系統(tǒng)和家用電器等領(lǐng)域中。我國人口眾多,面臨巨大的交通問題,單片機自20世紀(jì)70年代起大概經(jīng)歷了初級、低性能、高性能和全面發(fā)展階段,本論文采用MSC-51系列單片機ATSC51和可編程并行I/O接口芯片8255A為中心器件來設(shè)計交通燈控制器,實現(xiàn)了能根據(jù)實際車流量通過8051芯片的P1口設(shè)置紅、綠燈燃亮?xí)r間的功能。紅綠燈循環(huán)點亮,倒計時剩5秒時黃燈閃爍警示(交通燈信號通過PA口輸出,顯示時間直接通過8255的PC口輸出至雙位數(shù)碼管);車輛闖紅燈報警;綠燈時間可檢測車流量并可通過雙位數(shù)碼管顯示。其中MSC-51系列單片機按其功能部件可分為8大部分,分別為CPU、RAM和SFR、ROM、16位定時/計數(shù)器、I/O口、一個串行端口、一個中斷系統(tǒng)、內(nèi)部時鐘電路。
關(guān)鍵詞: 8255;交通燈;MCS-51單片機
二.目錄
第一章 前言…………………………………………………………………………3
第二章 單片機概述………………………………………………………………4
2.1單片機的定義……………………………………………………………………4
2.2單片機的發(fā)展方向…………………………………………………………5
2.3 單片機的應(yīng)用……………………………………………………………………5
2.4 MCS-51簡介………………………………………………………………………6
第三章 單片機交通燈控制……………………………………………………………7
3.1 硬件電路……………………………………………………………………………7
3.1.1芯片選用……………………………………………………………………………7
3.1.2硬件電路圖……………………………………………………7
3.1.3系統(tǒng)工作原理………………………………………………………………………7
3.2軟件設(shè)計………………………………………………………………8
3.2.1 每秒鐘的設(shè)定………………………………………………………8
3.2.2 計數(shù)器初值計算………………………………………………………8
3.2.3 綜合計算………………………………………………………8
3.2.4 設(shè)定一秒的方法………………………………………………………8
3.2.5 程序設(shè)計………………………………………………………8
3.3 軟件延時………………………………………………………9
3.4 時間及信號燈顯示………………………………………………………9
3.5 程序………………………………………………………13
第四章 總結(jié)……………………………………………………………………………12
參考文獻………………………………………………………………………………13
致謝………………………………………………………………………………14
第一章 前言
城市交通是保持城市活力最主要的基礎(chǔ)設(shè)施,是城市生活的動脈,制約著城市經(jīng)濟的發(fā)展。展望21世紀(jì)的城市交通事業(yè),給我們提出了更高要求。發(fā)展多層次、立體化、智能化的交通體系,將是城市建設(shè)發(fā)展中普遍追求的目標(biāo)。而發(fā)展大、中、低客運量相互匹配的多種形式相結(jié)合的客運交通工具,將是實現(xiàn)上述遠景目標(biāo)的一項重大技術(shù)決策措施。
自改革開放以來,我國的城市規(guī)模和經(jīng)濟建設(shè)都有了飛速的發(fā)展7城市化進程在逐步加快,城市人口在急劇增加,大量流動人口涌進城市,人員出行和物資交流頻繁,使城市交通面臨著嚴峻的局勢。當(dāng)前,全國大中城市普遍存在著道路擁擠、車輛堵塞、交通秩序混亂的現(xiàn)象。如何解決城市交通問題已成為全社會關(guān)注的焦點和大眾的迫切呼聲。
當(dāng)今,紅綠燈安裝在各個交通要道上已經(jīng)成為了緩解交通問題最常見、最根本、最有效的方法。交通燈的出現(xiàn)使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯的效果。
單片機是一種集成的微型計算機,與微處理器相比,它可單獨地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,它有唯一的、專門為嵌入式應(yīng)用而設(shè)計的體系結(jié)構(gòu)和指令系統(tǒng)。紅綠燈的控制有PLC控制,單片機控制等方法,隨著近年來單片機控制交通燈技術(shù)的成熟,單片機給交通帶來了很大的便利。
第二章 單片機概述
二十世紀(jì)七十年代,微電子技術(shù)正處于發(fā)展階段,集成電路屬于中規(guī)模發(fā)展時期,各種新材料新工藝尚未成熟,單片機仍處在初級的發(fā)展階段。1974年,美國研制出了世界第一臺單片微型計算機F8,深受家用電器和儀器儀表領(lǐng)域的歡迎和重視,從此拉開了研制單片機的序幕。
2.1單片機的定義
所謂單片機,即把組成微型計算機的各個功能部件,如中央處理器(CPU)、隨機存儲器(RAM)、只讀存儲器(ROM)、輸入/輸出接口電路(I/O口)、定時/計數(shù)器以及串行通信接口等集成在一塊芯片中,構(gòu)成一個完整的微型計算機。這些電路能在軟件的控制下準(zhǔn)確、迅速、高效地完成程序設(shè)計者事先規(guī)定的任務(wù)。與微處理器相比,它可單獨地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,它有唯一的、專門為嵌入式應(yīng)用而設(shè)計的體系結(jié)構(gòu)和指令系統(tǒng)這是單片機最大的特征。
現(xiàn)代單片機加上了中端單元、定時單元及A/D轉(zhuǎn)換電路等更復(fù)雜、更完善的電路,使得單片機的功能越來越強大,應(yīng)用更廣泛。因此可以把單片機理解為一個單芯片形態(tài)的微控制器。
單片機是單芯片形態(tài)作為嵌入式應(yīng)用的計算機,它有唯一的、專門為嵌入式應(yīng)用而設(shè)計的體系結(jié)構(gòu)和指令系統(tǒng),加上它的芯片級體積的優(yōu)點和在現(xiàn)場環(huán)境下可高速可靠地運行的特點,因此單片機又稱為嵌入式微控制器。
2.2單片機的發(fā)展方向
單片機的發(fā)展趨勢將是向著高性能化,大容量,小容量、低價格化及外圍電路內(nèi)裝化等幾個方面發(fā)展。
(1)單片機的高性能化:主要是指進一步改進CPU的性能,加快指令運算的速度和提高系統(tǒng)控制的可靠性,并加強了位處理功能、中斷和定時控制功能;采用流水線結(jié)構(gòu),指令以隊列形式出現(xiàn)在CPU中,從而有很高的運算速度。
(2)片內(nèi)存儲器大容量化:以往單片機的片內(nèi)ROM為1到4KB,RAM為64到128B。因此在一些較復(fù)雜的應(yīng)用系統(tǒng)中,存儲器容量就顯得不夠,不得不外擴存儲器。為了適應(yīng)這種領(lǐng)域的要求,利用新工藝,將片內(nèi)存儲器的容量大幅度增加,不得不外擴存儲器。為了適應(yīng)這種領(lǐng)域的要求,利用新工藝,將片內(nèi)存儲器的容量大幅度增加,片內(nèi)ROM可以達到12KB。
(3)小容量、低價格化:與上述相反,小容量、低價格化的4位、8位單片機也是發(fā)展方向之一。這類單片機主要用于兒童玩具等較小規(guī)模的控制系統(tǒng)。
(4)外圍電路內(nèi)裝化:隨著集成度的不斷提高,有可能把眾多的各種外圍功能器件集成在片內(nèi)。除了一般必須具備的CPU、RAM、ROM、定時/計數(shù)器等之外,片內(nèi)集成的部件還有A/D、D/A轉(zhuǎn)換器,DMA控制器,聲音發(fā)生器,監(jiān)視定時器,液晶顯示驅(qū)動器,彩色電視機和錄像機用的鎖相電路等。
(5)增強I/O接口功能:為了減少外部驅(qū)動芯片,進一步增加單片機并行口的驅(qū)動能力,現(xiàn)在有些單片機可直接輸入大電流和高電壓,以便直接驅(qū)動顯示器。
(6)加快I/O接口的傳輸速度:有些單片機設(shè)置了高速I/O接口,以便能以更快的速度觸發(fā)外圍設(shè)備,以更快的速度讀取數(shù)據(jù)。
2.3單片機的應(yīng)用
單片機廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域,大致可分為如下幾個:
1.在計算機網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用;
2.在工業(yè)控制中的營運;
3.在家用電器中的應(yīng)用;
4.在智能儀器儀表上的應(yīng)用;
5.在醫(yī)用設(shè)備領(lǐng)域的應(yīng)用;
2.4 MCS-51簡介
MCS-51系列單片機在結(jié)構(gòu)上基本相同,只是在個別模塊和功能上有些區(qū)別。MCS-51單片機是在一塊芯片中集成了一個8位CPU、128B RAM、4KB ROM、兩個16位定時/計數(shù)器、32個可編程I/O口和一個可編程的全雙工串行接口、五個中斷源、一個片內(nèi)振蕩器等。
1.中央處理器(CPU):中央處理器是單片機的核心部分,是一個8位的中央處理單元,它對數(shù)據(jù)的處理是以字節(jié)為單位進行的,CPU主要由運算器、控制器和寄存器陣列組成。
2.數(shù)據(jù)存儲器(片內(nèi)RAM):數(shù)據(jù)存儲器用于存放變化的數(shù)據(jù)。在8051單片機中,通常把控制與管理寄存器(簡稱為“專用寄存器”)在邏輯上劃分在片內(nèi)RAM中,因為其地址與RAM是連續(xù)的。8051單片機數(shù)據(jù)存儲器的地址空間為256個RAM單元,但其中能作為數(shù)據(jù)存儲器供用戶使用的僅有前面128個,后128個被專用寄存器占用。
3.程序存儲器(片內(nèi)ROM):程序存儲器用于存放程序和固定不變的常數(shù)、表格等。通常采用只讀存儲器,且其有多種類型。
4.定時/計數(shù)器:定時/計數(shù)器用于實現(xiàn)定時和計數(shù)功能。8051單片機共有兩個16位定時/計數(shù)器,8052單片機共有三個16位定時/計數(shù)器。
5.并行I/O口:8051單片機共有四個8位的并行I/O(P0、P1、P2、P3),每個口都由一個鎖存器和一個驅(qū)動器組成。并行I/O口主要是用于實現(xiàn)與外部設(shè)備中數(shù)據(jù)的并行輸入/輸出,有些I/O口還具有其他功能。
6.串行口:8051單片機有一個全雙工異步串行口,用以實現(xiàn)單片機和其他具有相應(yīng)接口的設(shè)備之間的異步串行數(shù)據(jù)傳送。
7.時鐘電路:時鐘電路的作用是產(chǎn)生單片機工作所需要的時鐘脈沖序列。
8.中斷系統(tǒng):中斷系統(tǒng)的主要作用是對外部或內(nèi)部的中斷請求進行管理與處理。8051單片機的中斷系統(tǒng)可以滿足一般控制應(yīng)用的需要:共有五個中斷源,其中有兩個外部中斷源INT0和INT1、三個內(nèi)部中斷源(兩個定時/計數(shù)器中斷和一個串行口中斷);此外,8052單片機還增加了一個定時器2的中斷源。
第三章 交通燈單片機控制
3.1 硬件電路
3,1.1芯片選用:
選用設(shè)備8031單片機一片,8255并行通用接口芯片一片,74LS07,MAX692“看門狗”一片,共陰極的七段數(shù)碼管兩個,雙向晶閘管若干,7805三端穩(wěn)壓電源一個,紅、黃、綠交通燈各兩個,開關(guān)鍵盤、連線若干。
3.1.2 硬件電路圖:
3.1.3 系統(tǒng)工作原理:
1.開關(guān)鍵盤輸入交通燈初始時間,通過8051單片機P1輸入到系統(tǒng)。
2.由8051單片機的定時器每秒鐘通過P0口向8255的數(shù)據(jù)口傳送信息,由8255的PA口顯示紅、綠、黃等的燃亮情況;由8255的PC口顯示每個燈的燃亮?xí)r間。
3.8051通過設(shè)置各個信號等的燃亮?xí)r間,通過8031設(shè)置,綠、紅時間分別為60秒,80秒循環(huán)由8051的P0口向8255的數(shù)據(jù)口輸出。
4.通過8051單片機的P3.0位來控制系統(tǒng)的工作或設(shè)置初值,當(dāng)牌位0就對系統(tǒng)進行初始化,為1系統(tǒng)就開始工作。
5.紅燈倒計時時間,當(dāng)有車輛闖紅燈時,啟動蜂鳴器進行報警,3S后恢復(fù)正常。
6.增加每次綠燈時間車流量檢測的功能,并且通過查詢P2.0端口的電平是否為低,開關(guān)按下為低電平,雙位數(shù)碼管顯示車流量,直到下一次綠燈時間重新記入。
7.綠燈時間倒計時完畢,重新循環(huán)。
3.2 軟件設(shè)計
3.2.1每秒鐘的設(shè)定:
利用MCS-51內(nèi)部定時器材溢出中斷來確定1秒的時間。
3.2.2 計數(shù)器初值計算:
定時器工作時必須給計數(shù)器送計數(shù)器初值,這個值是送到TH和TL中的,他是以加法計數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中斷請求。因此,我們可以把計數(shù)器記滿為零所需的計數(shù)值設(shè)定為C和計數(shù)初值設(shè)定為TC,即:
TC=M-C;式中,M為計數(shù)器模值,該值和計數(shù)器工作方式有關(guān),在方式0時M為213;在方式1時M的值為216;在方式2和3時為28。
3.2.3 綜合計算:
T=(M-TC)T1 或者 TC=M-T/T1 式中T1是單片機時鐘周期的12倍;TC為定時初值。這種方法在使用后悔超過計數(shù)器的最大定時間,所以再采用定時器和軟件相結(jié)合的辦法。
3.2.4 設(shè)定一秒的方法:
我們采用在主程序中設(shè)定一個初值為20的軟件計數(shù)器和使T0定時50毫秒,這樣每當(dāng)T0到50毫秒時CPU就響應(yīng)它的溢出中斷請求,進入他的中斷服務(wù)子程序,在中斷子程序中,CPU先使軟件計數(shù)器減1,然后判斷它是否為零,為零表示1秒已到可以返回到輸出時間顯示程序。
3.2.5 程序設(shè)計:
1.主程序:
定時器定時50毫秒,故T0工作于方式1,初值:
TC=M-T/T1=216-50ms/1us=3CBOH
ORG 1000H
START:MOV TMOD, #01H; 令T0為定時器方式1
MOV TH0, #3CH; 裝入定時器初值
MOV TL0, #BOH;
MOV IE, #82H; 開T0中斷
SEBT TR0; 啟動T0計數(shù)器
MOV R0, #14H; 軟件計數(shù)器賦初值
LOOP: SJMP S; 等待中斷
2.中斷服務(wù)子程序:
ORG 000BH
AJMP BRT0
ORG 00BH
BRT0:DJNZ R0,NEXT AJMP TIME; 跳轉(zhuǎn)到時間及信號燈顯示子程序
DJNZ:MOV R0,#14H; 恢復(fù)R0值
MOV TH0,#3CH; 重裝入定時器初值
MOV TL0,#BOH;
MOV IE, #82H
RET1
END
3.3 軟件延時
MCS-51的工作頻率為2-12MHZ,我們選用的8051單片機的工作頻率為6MHX,機器周期與主頻由關(guān),機器周期是主頻的12倍,所以一個機器周期的時間為12*(1/6M)=2us,我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。
3.4時間及信號燈顯示
當(dāng)定時器定時為1秒時,程序跳轉(zhuǎn)到時間顯示及信號燈顯示子程序,它將依次顯示信號燈時間,同時一直顯示信號燈的顏色,這時在返回定時子程序定時一秒,在顯示黃燈的下一個時間,這樣依次把所有的燈色的時間顯示完后再重新給時間計數(shù)器賦初值,重新進入循環(huán)。由于發(fā)光二極管為共陽極接法,輸出端口為低電平,對應(yīng)的二極管發(fā)光,所以可以用復(fù)位方法點亮紅,綠,黃發(fā)光二極管。
3.5 程序
實現(xiàn)交通燈的交替控制及特殊情況(如急救車等)通過時 ,通過外中斷實現(xiàn):
North_South_Red BIT P1.0
North_South_Yellow BIT P1.1
North_South_Green BIT P1.2
East_West_Red BIT P1.3
East_West_Yellow BIT P1.4
East_West_Green BIT P1.5
Scd EQU 30H ;秒
ORG 0000H
JMP START
ORG 0003H
JMP INIT0
ORG 000BH
JMP TIME0
交通燈交替工作時,紅綠黃交替點亮: 紅燈亮33秒鐘后綠燈亮27秒,然后閃爍3秒,最后黃燈點亮三秒 ,循環(huán)。
TIME0:
MOV TH0,#30H
MOV TL0,#0B0H
INC 31H
MOV A,31H
N: CJNE A,#20,EXIT ;判斷是否到一秒
MOV 31H,#0
INC Scd
MOV A,Scd
CJNE A,#27,NEXT1 ;判斷綠燈是否到27s
SETB F0
JMP EXIT
NEXT1: MOV A,Scd
CJNE A,#30,NEXT2 ;判斷綠燈是否亮30s
CLR F0
MOV P1,#0EEH
JMP EXIT
NEXT2:
MOV A,Scd
CJNE A,#33,NEXT3
MOV P1,#0F3H ;初始化
NEXT3:
MOV A,Scd
CJNE A,#60,NEXT4
SETB 00H
JMP EXIT
NEXT4: MOV A,Scd
CJNE A,#63,NEXT5
CLR 00H
MOV P1,#0F5H
JMP EXIT
NEXT5: MOV A,Scd
CJNE A,#66,EXIT
MOV P1,#0DEH
MOV Scd,#0
EXIT: RETI
外中斷:東西方向出現(xiàn)特殊情況 時南北紅燈亮,東西綠燈亮,延時10s。
INIT0:
PUSH PSW
PUSH ACC
CLR EA
MOV R2,P1 ;保存數(shù)據(jù)
MOV P1,#0F6H
CALL DELLAY10S
MOV P1,R2 ;恢復(fù)
SETB EA
POP ACC
POP PSW
RETI
主程序:
START:
MOV Scd, #00H
MOV 31H, #00H
MOV P1, #0FFH
CLR 00H
CLR F0
MOV TMOD, #01H ;設(shè)定定時器1
MOV IE, #83H ;設(shè)定中斷使能 定時器中斷0、外部中斷0和1
MOV SP, #60H
MOV TH0, #30H
MOV TL0, #0B0H
SETB TR0
LOOP:
JNB F0,N0
CPL East_West_Green ;綠燈閃三秒
CALL DELAY500MS
JMP N1
N0:
JNB 00H,N1
CPL North_South_Green ;綠燈閃三秒
CALL DELAY500MS
N1:
JMP LOOP
第四章 總結(jié)
本系統(tǒng)實現(xiàn)了紅、綠燈燃亮?xí)r間的功能,紅綠燈循環(huán)點亮,倒計時剩5秒時黃燈閃爍警示。車輛闖紅燈報警;綠燈時間可檢測車流量并可通過雙位數(shù)碼管顯示。系統(tǒng)不足之處不能控制車的左、右轉(zhuǎn)、以及自動根據(jù)車流改變紅綠燈時間等。這是由于本身地理位子以及車流量情況所定,如果有需要可以設(shè)計擴充原系統(tǒng)來實現(xiàn)。
通過此次課題的研究,讓我更加深入的了解了單片機的一些功能,對于單片機在日常生活中的運用有了更深層次的了解。在研究時也發(fā)現(xiàn)了自身對于單片機的不理解之處,并查看相關(guān)書籍等資料解決了不懂的問題。結(jié)合實際工作中的實踐,和這次的畢業(yè)論文撰寫,了解了很多也學(xué)到了很多。同時,對以前所學(xué)的專業(yè)知識,有了進一步的加深和鞏固。
參考文獻
[1] 張國鋒.單片機原理及應(yīng)用[J].高等教育研究,200.9.8
[2] 張毅坤.單片微型計算機原理及運用,西安電子科技大學(xué)出版社,1998
[3] 胡漢才.單片機原理及其接口技術(shù)[M].北京:清華大學(xué)出版社,2004.5
[4] 胡乾斌.單片機原理與應(yīng)用[M].華中科技大學(xué)出版社.2006
[5] 張毅剛.單片機原理及接口技術(shù)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990
[6] 雷麗文.微機原理與接口技術(shù),北京:電子工業(yè)出版社,1997.2
[7] 余錫存 曹國華.單片機原理及接口技術(shù),陜西:西安電子科技大學(xué)出版社,2000.7
致謝
通過這段時間的研究設(shè)計學(xué)習(xí),我學(xué)到了很多以前不知道的知識,并且在學(xué)習(xí)中培養(yǎng)了一種做事情一絲不茍的態(tài)度和耐心,為以后的工作打下了堅實的基礎(chǔ)。
在此我要向我們論文的指導(dǎo)老師表示衷心的感謝,可以讓我通過這次機會系統(tǒng)學(xué)習(xí)了單片機的有關(guān)知識,并能具體結(jié)合實踐生活完成交通燈的設(shè)計,他幽默,風(fēng)趣,嚴謹?shù)慕虒W(xué)作風(fēng)將是我學(xué)習(xí)的榜樣。