freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

at89c52單片機(jī)控制交通燈系統(tǒng)(編輯修改稿)

2024-08-03 11:40 本頁面
 

【文章內(nèi)容簡介】 工作。單片機(jī)芯片的18腳(XTAL2)、19腳(XTAL1)分別為片內(nèi)反向放大器的輸出端和輸入端,只要在18腳(XTAL2)和19腳(XTAL1)之間接上一個晶振,再加上2個20PF的瓷片電容即可構(gòu)成單片機(jī)所需的時鐘電路,本設(shè)計就采用圖8所示時鐘電路。圖8 時鐘電路 此外,當(dāng)采用外部時鐘時,19腳(XTAL1)接地,18腳(XTAL2)接外部時鐘信號?! 。?)復(fù)位電路設(shè)計單片機(jī)芯片的第9腳RST(Reset)是復(fù)位信號輸入端。單片機(jī)系統(tǒng)在開機(jī)時或在工作中因干擾而使程序失控,或工作中程序處于某種死循環(huán)狀態(tài)等情況下都需要復(fù)位。復(fù)位的作用是使中央處理器CPU以及其他功能部件都恢復(fù)到一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。AT89C52單片機(jī)的復(fù)位靠外部電路實(shí)現(xiàn),信號從RST引腳輸入,高電平有效,只要保持RST引腳高電平2個機(jī)器周期,單片機(jī)就能正常復(fù)位。 常見的復(fù)位電路有上電復(fù)位電路和按鍵復(fù)位電路二種,如圖9所示。本設(shè)計采用手動復(fù)位電路。 圖9 復(fù)位電路 ?。?)程序存儲器選擇電路  單片機(jī)芯片的第31腳(EA)為內(nèi)部與外部程序存儲器選擇輸入端。當(dāng)EA引腳接高電平時,CPU先訪問片內(nèi)8KB的程序存儲器,執(zhí)行內(nèi)部程序存儲器中的指令,當(dāng)程序計數(shù)器超過0FFFH時,將自動轉(zhuǎn)向片外程序存儲器,既是從1000H地址單元開始執(zhí)行指令;當(dāng)EA引腳接低電平時,不管片內(nèi)是否有程序存儲器,CPU只訪問片外程序存儲器?! T89S52內(nèi)部有8KB的程序存儲器,所以根據(jù)該腳的引腳功能,只要將該腳接上高電平,才能先從片內(nèi)程序存儲器開始取指令?! 〕R姷某绦虼鎯ζ鬟x擇電路就是將第31腳直接接到正電源上。 ?。?)外圍電路的設(shè)計  外圍電路的設(shè)計主要依據(jù)項目要實(shí)現(xiàn)的功能,本項目要實(shí)現(xiàn)的功能是用單片機(jī)控制交通信號燈。 本系統(tǒng)采用LED作為信號燈來使用,單片機(jī)的I/O口直接與LED連接。在十字路口的四組紅、黃、綠三色交通燈中,東西方向的同色燈連接在一起,南北方向的同色燈也彼此連接,—。12個LED指示燈采用共陽極的連接方式,因此I/O口輸出低電平時,與之相連的LED會亮,輸出高電平時,LED熄滅。 該交通信號燈控制系統(tǒng)在正常工作情況下,為方便提示路上行人及車輛交通燈轉(zhuǎn)換的剩余時間,專門為控制系統(tǒng)提供了一個倒計時的顯示裝置。該裝置采用2位八段數(shù)碼管來顯示,每個路口需要1個,共4個,在設(shè)計電路時,本系統(tǒng)采用用共陽數(shù)碼管,直接和P2口連接,作為段選,來控制每個數(shù)碼管數(shù)字的顯示,—,來選擇要顯示的數(shù)碼管。該系統(tǒng)最大的好處就是可以實(shí)現(xiàn)時間的調(diào)整和緊急停車功能,通過六個按鍵來達(dá)到對路面通行狀態(tài)的實(shí)時控制。 4 交通信號燈控制系統(tǒng)程序設(shè)計 理論基礎(chǔ)知識 定時器工作的基本原理其實(shí)就是給初值,讓它不斷加1直至減完為模值,這個初值是送到TH和TL中的。它是以加法記數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中斷請求。因此,我們可以把計數(shù)器記滿為零所需的計數(shù)值,即所要求的計數(shù)值設(shè)定為C,把計數(shù)初值設(shè)定為TC 可得到如下計算公式:TC=MC式中,M為計數(shù)器模值。計數(shù)值并不是目的,目的是時間值,設(shè)計1次的時間,即定時器計數(shù)脈沖的周期為T0,它是單片機(jī)系統(tǒng)主頻周期的12倍,設(shè)要求的時間值為T,則有C=T/T0。計算公式變?yōu)椋篢=(M-TC)T0模值和計數(shù)器工作方式有關(guān),本系統(tǒng)選用方式1計數(shù)。在方式1時M的值為65536,單片機(jī)的主脈沖頻率為12MHZ,經(jīng)過12分頻后。所以選擇掃描周期為50ms。若使用軟件則會耽擱程序流程,顯然不可行。相反,時間計時方面卻不可能只用計數(shù)器,因為顯然1秒鐘已經(jīng)超過了計數(shù)器的最大定時間,所以我們還必須采用定時器和軟件相結(jié)合的辦法才能解決這個問題。 AT89C52單片機(jī)的工作頻率為12MHZ,機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個機(jī)器周期的時間為12*(1/12MHZ)=1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間,但同時由于單片機(jī)的運(yùn)行速度很快其他的指令執(zhí)行時間可以忽略不計。 中斷原理本系統(tǒng)主要使用了定時器中斷和外部中斷,中斷信號由引腳T0、INT0和INT1輸入,低電平有效,CPU每個時鐘周期都會檢測INT0和INT1上的信號,單片機(jī)允許外部中斷以電平方式或負(fù)邊沿方式兩種中斷方式輸入中斷請求信號,可由用戶通過設(shè)置TCON中IT0和IT1位的狀態(tài)來實(shí)現(xiàn)。以IT0為例,IT0=0,為電平觸發(fā)方式,IT0=1,為負(fù)邊沿觸發(fā)方式,本設(shè)計采用電平方式,IE0為其中斷標(biāo)志位,有中斷信號則置位,中斷服務(wù)子程序響應(yīng)后,IE0自動清零。IE中的EA為允許中斷的總控制位,為1開啟,EX0為外部中斷允許控制位,為1開啟。 使用proteus軟件進(jìn)行電路仿真,芯片AT89C52還需要載入代碼文件來支持其正常工作以實(shí)現(xiàn)預(yù)期功能要求。程序代碼編寫是整塊設(shè)計的核心內(nèi)容,本系統(tǒng)中利用一個定時器T0完成了交通指示燈所有的切換過程和數(shù)碼管的倒計時功能,其中指示燈的切換有4種不同的操作,數(shù)碼管的切換有2種不同的操作,用變量i表示狀態(tài)的切換。采用C語言進(jìn)行編程,下面簡要介紹下各段程序代碼的意義和功能。 主程序框圖主程序為交通燈四個狀態(tài)循環(huán)轉(zhuǎn)換的死循環(huán),主程序代碼和程序框圖如下所示。void main(){ Init()。 //初始化,基本功能循環(huán)工作 while(1) { key()。 if(flag1==1amp。amp。flag_all!=1) //不在全部通行的模式下時正常刷新計數(shù) { adjust_Time()。 flag1=0。 } if(flag2==1) { yellowled()。 flag2=0。 } display()。 }}全部控制程序?qū)嶋H上分為若干模塊:鍵盤設(shè)置處理程序,狀態(tài)燈控制程序,LED顯示程序緊停程序,中斷服務(wù)子程序,紅綠燈時間調(diào)整程序等。整個軟件程序方面主要分兩大部分:主程序部分和中斷處理程序。開始系統(tǒng)初始化東西亮綠燈,南北亮紅燈調(diào)顯示子程序(動態(tài)顯示)東西,南北方向換向東西黃燈閃爍,南北亮紅燈中斷處理子程序處理返回圖10 系統(tǒng)程序流程圖 設(shè)計說明:該交通信號燈控制系統(tǒng)的軟件設(shè)計采用的是順序執(zhí)行并反復(fù)循環(huán)的方法。在正常工作的情況下,每20s循環(huán)變化一次。每個循環(huán)周期在還剩2s時,正在通行路口的黃燈同時點(diǎn)亮并開始閃爍,以提醒路人上的行人及車輛,交通燈即將發(fā)生變化,當(dāng)緊急情況需要禁止通行時,按下全部禁行按鍵,黃燈閃3秒后四個方向全變紅燈,直到路面恢復(fù)正常后,通過按三次功能鍵即可復(fù)位。 5 調(diào)試分析及所用芯片 調(diào)試環(huán)境本設(shè)計使用仿真軟件Proteus和Keil C進(jìn)行聯(lián)合調(diào)試。原理圖在Proteus提供的模板中選擇恰當(dāng)?shù)脑骷M(jìn)行設(shè)計繪圖,完成電路的搭建,發(fā)現(xiàn)設(shè)計中的錯誤及時改正。所有c語言源程序都在Keil C下編寫,對
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1