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

正文內(nèi)容

基于單片機的交通燈控制系統(tǒng)設(shè)計與實現(xiàn)(編輯修改稿)

2025-01-09 09:29 本頁面
 

【文章內(nèi)容簡介】 8255 方式控制字13 D7:設(shè)定工作方式標志,1 有效。 DD5:A 口方式選 0 0 —方式 0 0 1 —方式 1 1 —方式 2 D4:A 口功能 (1=輸入,0=輸出) D3:C 口高 4 位功能 (1=輸入,0=輸出) D2:B 口方式選擇 (0=方式 0,1=方式 1) D1:B 口功能 (1=輸入,0=輸出)D0:C 口低 4 位功能 (1=輸入,0=輸出) 8255 可編程并行接口芯片工作方式說明: 方式 0:基本輸入/輸出方式。適用于三個端口中的任何一個。每一個端口都可以用作輸入或輸出。輸出可被鎖存,輸入不能鎖存。 方式 1:選通輸入/輸出方式。這時 A 口或 B 口的 8 位外設(shè)線用作輸入或輸出,C 口的 4 條線中三條用作數(shù)據(jù)傳輸?shù)穆?lián)絡(luò)信號和中斷請求信號。 方式 2 :雙向總線方式。只有 A 口具備雙向總線方式,8 位外設(shè)線用作輸入或輸出,此時 C 口的 5 條線用作通訊聯(lián)絡(luò)信號和中斷請求信號。D7 D6 D5 D4 D3 D2 D1 D014 數(shù)碼管采用共陰極的七段數(shù)碼管,如圖 所示. 圖 數(shù)碼管電路VT 為雙向晶閘管,當門極為高電平時晶閘管導通,該支路指示燈亮;當門極為低電平時晶閘管關(guān)斷,該支路指示燈滅。154 控制器的軟件設(shè)計 延時方法可以有兩種一中是利用 AT89C52 內(nèi)部定時器才生溢出中斷來確定 1 秒的時間,另一種是采用軟延時的方法。 計數(shù)器初值計算 定時器工作時必須給計數(shù)器送計數(shù)器初值,這個值是送到 TH 和 TL中的。他是以加法記數(shù)的,并能從全 1 到全 0 時自動產(chǎn)生溢出中斷請求?!? 我們采用在主程序中設(shè)定一個初值為 20 的軟件計數(shù)器和使 T0 定時50 毫秒.這樣每當 T0 到 50 毫秒時 CPU 就響應(yīng)它的溢出中斷請求,進入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU 先使軟件計數(shù)器減1,然后判斷它是否為零。為零表示1秒已到可以返回到輸出時間顯示程序。相應(yīng)程序代碼:(1)主程序    定時器需定時 50 毫秒,故 T0 工作于方式 1。 初值:    TC=MT/T 計數(shù)=21650ms/1us=15536=3CBOH ORG 1000H START: MOV TMOD, 01H 。 令 T0 為定時器方式 1 MOV TH0, 3CH 。裝入定時器初值 MOV TL0, 0B0H  。 MOV IE,   82H 。開 T0 中斷 SEBT TR0      ??;啟動 T0 計數(shù)器16 MOV  R0,  14H   。軟件計數(shù)器賦初值OP: SJMP $       ??;等待中斷(2)中斷服務(wù)子程序      ORG 000BH      AJMP  BRT0      ORG 00BH  BRT0:DJNZ R0,NEXT      AJMP TIME 。 跳轉(zhuǎn)到時間及信號燈顯示子程序 DJNZ:MOV R0,#14H??;恢復 R0 值   MOV TH0, 3CH 。重裝入定時器初值 MOV TL0, 0B0H  。 MOV IE,   82H        RETIEND 軟件延時 AT89C52 的工作頻率為 212MHZ,我們選用的 AT89C52 單片機的工作頻率為 6MHZ。機器周期與主頻有關(guān),機器周期是主頻的 12 倍,所以一個機器周期的時間為 12*(1/6M)=2us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定 1 秒的時間。具體的延時程序: DELAY:MOV R4,08H 延時 1 秒子程序17 DE2:LCALL DELAY1 DJNZ R4,DE2 RETDELAY1:MOV R6,0 延時 125ms 子程序 MOV R5,0DE1:DJNZ R5,$ DJNZ R6,DE1 RET MOV RN,DATA 所以此指令的執(zhí)行時間為 2ms DELAY1 為一個雙重循壞 循環(huán)次數(shù)為 256*256=65536 所以延時時間=65536*2=131072us 約為 125us ,DELAY R4 設(shè)置的初值為 8 主延時程序循環(huán) 8 次,所以 125us*8= 1 秒,由于單片機的運行速度很快其它的指令執(zhí)行時間可以忽略不計。18 AT89C52 并行口的擴展 AT89C52 雖然有 4 個 8 位 I/O 端口,但真正能提供借用的只有 P1 口,因為 P2 和 P0 口通常用于傳送外部傳送地址和數(shù)據(jù),P3 口也有它的第二功能。因此,AT89C52 通常需要擴展。由于我們用外輸出時間時,時間的個位、十位、信號燈的顯示都要用到一個 I/O 端口,顯然 AT89C52 的端口是不夠,需要擴展。 擴展的方法有兩種:(1)借用外部 RAM 地址來擴展 I/O 端口;(2)采用 I/O 接口來擴充。本設(shè)計中采用 8255 并行接口信片來擴展I/O 端口。 顯示原理當定時器定時為 1 秒,時程序跳轉(zhuǎn)到時間顯示及信號燈顯示子程序,它將依次顯示信號燈時間 ,同時一直顯示信號燈的顏色,這時在返回定時子程序定時一秒,在顯示黃燈的下一個時間,這樣依次把所有的燈色的時間顯示完后在重新給時間計數(shù)器賦初值 ,重新進入循環(huán)。 8255 輸出信號的放大 要使行人能看見信號燈的情況,必須把 8255 輸出的信號進行放大,這里我們用 VT 為雙向晶閘管,當門極為高電平時晶閘管導通,該支路指示燈亮;當門極為低電平時關(guān)斷,該支路指示燈滅。 8255 輸出信號與信號燈的連接LED 燈的顯示原理:通過同名管腳上所加電平的高低來控制發(fā)光二極管是否點量而顯示不同的字形如 SP,g,f,e,d,c,b,a 管腳上加上 7FH19所以 SP 為 0 伏,不亮其余為 TTL 高電平,全亮則顯示為 8,采用共陰級連接,見表 所示.表 驅(qū)動代碼表顯示數(shù)值 dop g f e d c b a 驅(qū)動代碼(16 進制)0 0 0 1 1 1 1 1 1 3FH1 0 0 0 0 0 1 1 006H2 0 1 0 1 1 0 1 15BH3 0 1 0 0 1 1 1 4FH2014 0 1 1 0 0 1 1 066H5 0 1 1 0 1 1 0 06DH6 0 1 1 1 1 1 0 07DH7 0 0 0 0 0 1 1 107H8 0 1 1 1 1 1 1 17FH 8255 與 AT89C52 的連接用 AT89C52 的 P0 口的 連接 8255 的片選信號 cs 我們用AT89C52 的地址采用全譯碼方式,當 =0 時片選有效, 其它無效, 用于選擇 8255 端口 A7 A6 A5 A4 A3 A2 A1 A01 X X X X X 0 0 00H 為 8255 的 PA 口1 X X X X X 0 1 01H 為 8255 的 PB 口1 X X X X X 1 0 02H 為 8255 的 PC 口1 X X X X X 1 1 03H 為 8255 的控制口21由于 AT89C52 是分時對 8255 和儲存器進行訪問所以 AT89C52 的 P0 口不會發(fā)生沖突225 程序設(shè)計 流程圖R4 存放黃燈時間 3 03H (此時間可以動態(tài)設(shè)定) R5 存放紅燈時間 60 3CH R6 存放綠燈時間 80 50H PC0 顯示黃燈信號 PC1 顯示紅燈信號PC2 顯示黃燈信號 8825 工作于方式 0 8255 PA、PB、 PC 口輸出 PC 控制字為 10000000B (80H)主程序如圖 所示 圖 主程序流程圖開始初始化等待鍵盤事件鍵盤事件處理
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1