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

正文內(nèi)容

基于stc89c52單片機(jī)的數(shù)顯交通燈設(shè)計(jì)方案(編輯修改稿)

2025-05-30 22:34 本頁面
 

【文章內(nèi)容簡介】 系統(tǒng)的軟件包括主程序,顯示程序和中斷程序三部分。主程序:初始化子程序,循環(huán)執(zhí)行顯示子程序,中斷系統(tǒng)初始化,顯示緩沖區(qū)賦初值,設(shè)置狀態(tài)標(biāo)志,狀態(tài)切換。具體流程如下: 關(guān)中斷保護(hù)現(xiàn)場開中斷中斷服務(wù)關(guān)中斷恢復(fù)現(xiàn)場開中斷中斷返回?cái)帱c(diǎn)地址由堆棧彈入pc圖41 中斷服務(wù)程序圖開始南北左拐,東西左右拐東西直行,南北紅燈延時(shí)10S延時(shí)4秒南北左右拐,東西左拐延時(shí)10S延時(shí)10S主程序初始化南北直通狀態(tài),東西紅燈延時(shí)10S南北黃燈中斷入口設(shè)置中斷初始化開中斷延時(shí)4秒圖42 主程序復(fù)位按鈕復(fù)位延長東西通行時(shí)間延長南北通行時(shí)間緊急中斷,各路口全紅燈,數(shù)碼管時(shí)間靜止圖43 按鍵功能 延時(shí)的設(shè)定 延時(shí)方法可以有兩種一中是利用MCS51內(nèi)部定時(shí)器才生溢出中斷來確定1秒的時(shí)間,另一種是采用軟延時(shí)的方法。計(jì)數(shù)器初值計(jì)算:定時(shí)器工作時(shí)必須給計(jì)數(shù)器送計(jì)數(shù)器初值,這個(gè)值是送到TH和TL中的。他是以加法記數(shù)的,并能從全1到全0時(shí)自動(dòng)產(chǎn)生溢出中斷請求。因此,我們可以把計(jì)數(shù)器記滿為零所需的計(jì)數(shù)值設(shè)定為C和計(jì)數(shù)初值設(shè)定為TC 可得到如下計(jì)算通式:TC=MC (41)公式中,M為計(jì)數(shù)器摸值,該值和計(jì)數(shù)器工作方式有關(guān)。在方式0時(shí)M為;在方式1時(shí)M的值為;在方式2和3為計(jì)算公式:T=(M-TC)/T計(jì)數(shù)或TC=(MT)/T計(jì)數(shù) (42)T計(jì)數(shù)是單片機(jī)時(shí)鐘周期TCLK2倍;TC為定時(shí)初值如單片機(jī)的主脈沖頻率為TCLK12MHZ ,經(jīng)過12分頻方式0    TMAX=213 *1微秒=方式1    TMAX=216 *1微秒= 顯然1秒鐘已經(jīng)超過了計(jì)數(shù)器的最大定時(shí)間,所以我們只有采用定時(shí)器和軟件相結(jié)合的辦法才能解決這個(gè)問題。1秒的方法:我們采用在主程序中設(shè)定一個(gè)初值為20的軟件計(jì)數(shù)器和使T0定時(shí)50毫秒。這樣每當(dāng)T0到50毫秒時(shí)CPU就響應(yīng)它的溢出中斷請求,進(jìn)入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU先使軟件計(jì)數(shù)器減1,然后判斷它是否為零。為零表示1秒已到可以返回到輸出時(shí)間顯示程序。相應(yīng)程序代碼:定時(shí)器需定時(shí)50毫秒,故T0工作于方式1?!〕踔担篗OV TMOD,01H 。初始化定時(shí)器MOV TL0,0B0HMOV TH0,3CHSETB EA 。開定時(shí)中斷與緊急中斷SETB ET0SETB TR0SETB EX0SETB IT0 。設(shè)置中斷程控方式 軟件延時(shí) MCS51的工作頻率為212MHZ,我們選用的8051單片機(jī)的工作頻率為12MHZ。機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個(gè)機(jī)器周期的時(shí)間為1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定時(shí)間。 具體的延時(shí)程序分析:去抖延時(shí)子程序D5MS: MOV R7,50 ;延時(shí)5ms MOV R6,50 L1: DJNZ R6,$ DJNZ R7,L1 RETD1MS: MOV R7,10 ;延時(shí)1ms MOV R6,50 L2: DJNZ R6,$ DJNZ R7,L2 RET4.3 程序代碼分析東西南北路口直行與轉(zhuǎn)彎交替通行,數(shù)碼管顯示直行通行倒計(jì)時(shí),紅綠黃燈顯示包括人行道在內(nèi)的道路交通狀態(tài)。某一方向道路擁擠時(shí),可以人工控制調(diào)節(jié)東西南北方向通行時(shí)間。緊急情況時(shí),各路口交通燈顯示紅燈,數(shù)碼管保持?jǐn)?shù)據(jù)不變。 工作寄存器及存儲單元分配工作寄存器:R2設(shè)置為定時(shí)器定時(shí)中斷次數(shù),RR7用于延時(shí)程序中的寄存器片內(nèi)存儲單元:30H、31H作為兩組數(shù)碼管顯示數(shù)據(jù)存儲單元;32H、33H作為交通燈初始狀態(tài)存儲單元;40H、41H作為交通燈顯示數(shù)據(jù)存儲單元。標(biāo)志位:00H:南北通行標(biāo)志位;01H:東西通行標(biāo)志位;02H:緊急事件標(biāo)志位 。 SNF EQU 00H 。南北通行標(biāo)志位EWF EQU 01H 。東西通行標(biāo)志位URF EQU 02H 。緊急事件標(biāo)志位ORG 0000HLJMP MAIN 。上電轉(zhuǎn)主程序ORG 000BH 。定時(shí)中斷入口LJMP DSZD ORG 0003H 。緊急中斷入口LJMP URZDORG 0030H MAIN: LCALL INIT 。調(diào)用初始化子程序LOOP: LCALL DIS 。循環(huán)執(zhí)行顯示子程序 AJMP LOOP 初始化程序INIT: SETB SNF SETB EWF SETB URF MOV R2,20 。定時(shí)器中斷20次為1s MOV TMOD,01H 。初始化定時(shí)器 MOV TL0,0B0H MOV TH0,3CH SETB EA 。開定時(shí)中斷與緊急中斷 SETB ET0 SETB TR0 SETB EX0 SETB IT0 。設(shè)置中斷程控方式 MOV DPTR,TAB 。數(shù)值首地址放入DPTR中 MOV 40H,10 。東南西北通行時(shí)間設(shè)置 MOV 41H,10 MOV 30H,10 。通行時(shí)間初始化
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1