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

正文內容

基于單片機的交通燈模擬控制設計-預覽頁

2025-01-08 09:23 上一頁面

下一頁面
 

【正文】 : 分時段控制,基于一天中存在有得時間端南北和東西車流量差別較大,放行時間應有區(qū)別,所以設計控制電路。但造價較高,適用于復雜大面積網(wǎng)絡應用。秒信號發(fā)生器產(chǎn)生整個定時系統(tǒng)的時基脈沖,通過減法計數(shù)器實現(xiàn)減計數(shù),控制每一種工作狀態(tài)的持續(xù)時間。 方案選擇 及設計 : 本設計在實現(xiàn)相應功能的時候主要是考慮到現(xiàn)有的條件 及應用范圍 ,采用 高度 成熟的 AT89S52 單片機 作為 CPU 的解決方案,同時 采用 用 性能優(yōu)良的 LED燈和雙位數(shù)碼管作為顯示模塊,軟件則使用了移植性好的 C 語言 進行編程 。 因此我選擇方案四作為設計方向,并做出了如下工作。 S3:南左轉西、北左轉東車輛通行,南北方向、東西方向、西左轉北、東左轉南車 輛禁行,南北方向、東西方向人行道禁行。設計有緊急車輛通過時,全部 道強制 全紅燈,緊急事件狀態(tài)。 在低峰時段,采取減少主干道綠燈通行時間,增加次干道綠燈通行時間以平衡通過車輛。 圖 25 狀態(tài)轉化圖 第三章 硬 件系統(tǒng)設計 7 第 三 章 硬件系統(tǒng) 設計 設計思路 及硬件框圖 本設計采用了兩組紅、綠、黃 三個不同的發(fā)光二極管分別 代表東西和南北兩個方向的交通 指示 燈,運用 AT89S52 單片機 的 P2 口驅動 來 控制兩組發(fā)光二極管的亮與滅 , 在軟件程序中對 P2 口進行相應設置就可實現(xiàn) 控制東西或南北方向的指示狀態(tài),本設 計 對十字路口狀態(tài)預 分為兩種,一種是正常狀態(tài),另一種是故障或緊急狀態(tài), 分別用黃、紅、綠色燈的不同組合來表示。 我們 可以通過軟件中斷 控制 來完成此 設計 ,定義 單片機的 INT0 和 INT1 端口的 中斷為下降沿觸發(fā),編寫對應中斷向量子程序和中斷服務程序,完成 該 中斷處理。首 先計算出程序單步執(zhí)行的時間, 然后設置循環(huán)參數(shù)從而完成 程序定時控制。單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。 單片機經(jīng)過 3 代的發(fā)展 ,目前單片機正朝著高性能和多品種方向發(fā)展,它們的 CPU 功能在增強,內部資源在增多,引腳的多功能化,以及低電壓低功耗。片上 Flash允許程序存儲器在系統(tǒng)可編程,亦適于 常規(guī)編程器。掉電保護方式下, RAM內容被保存,振蕩 器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。 當訪問外部程序和數(shù)據(jù)存儲器時, P0口也被作為低 8位地址 /數(shù)據(jù)復用。 P1口 : P1 口是一個具有內部上拉電阻的 8位雙向 I/O口, P1 輸出緩沖器能驅動 4 個 TTL邏輯電平。在 flash 編程和校驗時, P1口接收低 8位地址字節(jié)。 在訪問外部程序存儲器或用 16 位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行 MOVX DPTR)時, P2 口送出高八位地址。 P3 口: P3口是一個具有內部上拉電 阻的 8位雙向 I/O口, P2輸出緩沖器能驅動 4 個 TTL邏輯電平。 RST: 復位輸入。 DISRTO默認狀態(tài)下,復位高電平有 效。然而,特別強調,在每次訪問外部數(shù)據(jù)存儲器時, ALE 脈沖將會跳過。這個 ALE 使 能標志 位(地址為 8EH 的 SFR 的第 0 位)的設置對微控制器處于外部執(zhí)行模式下無效。為使能從 0000H 到 FFFFH 的外部程序存儲器讀取指令, EA必須接 GND。 XTAL2:振蕩器反相放大器的輸出端。 利用 AT89S52 單片機內部的串行口 RXD 和 TXD 與外部電路來實現(xiàn)串行通信,其數(shù)據(jù)由 RXD 端口串行輸出或輸入;而同步移位時鐘由 TXD 端口串行輸出,在同步脈沖的作用下,實現(xiàn)由串行到并行的數(shù)據(jù)通信功能 ,我們利用它來控制倒計時電路 。當某個發(fā)光二極管的陽極為高電平時,發(fā)光二極 管點亮;而 共陰極 LED 顯示塊的發(fā)光二極管陰極共地。 七段顯示塊與單片機接口非常容易。 表 31 軟件控制端口指令 字符 段形碼 軟件設計段形編碼 字符 段形碼 軟件設計段形編碼 0 3FH 80H 5 79H 11H 1 12H E3H 6 7DH 10H 2 4FH 48H 7 13H 0CH 3 5BH 41H 8 7FH 00H 4 72H 23H 9 73H 03H 軟件程序中用以下幾條指令實現(xiàn)啟動定時器: MOV TMOD,01H CLR TF0 MOV TH0,3CH SETB TR0 MOV TL0,0B0H LED 指示電路 第三章 硬 件系統(tǒng)設計 13 本 設計中 信號指示 系統(tǒng) 采用 LED 燈指示 電路,用 紅、綠、黃兩組 LED 燈分分別顯示 控制 東西 和南北 方向 的 通行 指示情況。相反,當南北方向的綠燈亮的時候,東西方向的紅燈 必須點 亮, 然 后是南北方向的黃燈閃亮和東西方向 上 的紅燈亮。為了實現(xiàn)上述控制要求, P2 端 口輸出 情況 共 4 種,信號燈 指示 狀態(tài)控制碼如表 32 所示。 方案二: 直接在 I/O 口線上接上按鍵開關。輔助裝置為由 3 個一號電池組成的直流電源,防止在斷電情況下出現(xiàn)的故障。所以考慮到開發(fā)周期來說,大 中 型的軟件編寫用 C 語言的開發(fā) 其 周期通常要 遠 小于匯編語言。在初期的軟件調試階段, Keil 能夠為我們 提供非常便利的環(huán)境。在元件列表中,單擊要放置的元件,再在編輯窗口中單擊就放置了一個元件,也可以在按下左鍵的同時,移動鼠標,再適合的位置釋放。根據(jù)上面的方法, 在元件庫中把所需的元件都找出來按照仿真總圖連接起來。 圖 51 整體仿真原理圖 第五章 系統(tǒng)仿真與調試 18 仿真結果 圖 52 東西通行狀態(tài) 圖 53 南北通行狀態(tài) 圖 54 緊急工作狀態(tài) 圖 55 時段 1 工作狀態(tài) 圖 56 時段 2 工作狀態(tài) 從仿真原理圖上可看出,該交通燈設計實現(xiàn)了紅綠燈顯示、主副干道倒計時顯示、人行道指示、電路復位控制、分時控制等多種功能。同時還 要注意安全,避免燙傷。 b: 檢查 時鐘 系統(tǒng) 是否工作 正常 ,用萬用表直流電壓檔測量 單片機各管口及鎖存器等器件的各管口電壓變化是否正常。 f: 長時間供電, 檢查數(shù)碼管顯示和 LED 燈是否正常。 這次 設計在 實現(xiàn)預計 功能的時候主要是考慮到現(xiàn)有的 設備及經(jīng)濟 條件,采用了 成熟度 較 高的 AT89S52 單片機 作為 CPU,同時 利 用 紅綠黃三色 LED 燈和雙位數(shù)碼管作為顯示模塊,軟件則使用了 移植性好的 C 語言 進行編程。 單片機作為已經(jīng)發(fā)展了 30 多 年的成熟產(chǎn)品,很多優(yōu)勢正在逐漸失去,讓位于更加先進的芯片解決方案 ,正因如此我在設計實物電路時由于連線復雜,附 屬電路較多而出現(xiàn)許許多多的問題,從而使實物電路 制作不成功。因此,我決定以后要更加關注并學習這方面的知識,利用更加先進的芯片設計方案來實現(xiàn)這些功能要求。 經(jīng)過 一個學期 的 努力奮斗 , 設計 成果終于出來了, 我通過 資料 采集、并 進行 了 實際考察后,做出 了 以上 的 設計的方 案 。 單片機課程設計指導書。北京:清華大學出版社。 2021. [4] 陳永真 。畢業(yè)設計指導及案例剖析。北京:北京航空航天大學出版社。 2021. [8] 林志琦。 單片機原理及接口技術 .北京:清華大學出版社 。 基于 AT89C51單片機的交通燈模擬控 制系統(tǒng) .無錫商業(yè)職業(yè)技術 學院。 sbit wela=P2^6。 for(x=z。y)。 附錄 24 t = 0。 yellowflag = 0。 s4 = 20。 //允許外部中斷 0 EX1 = 1。 //設置定時時間為 50MS EA = 1。 /****************狀態(tài) S1,綠燈亮 ********************/ while(1) { if((s == 1) amp。 //設置人行道燈 dula = 1。 //消影 wela = 1。 //消影 delay(3)。 P0 = 0xff。 P0 = 0。 //顯示紅燈的十位 dula = 0。 wela = 0。 P0 = table[sec%10]。 P0 = 0xdf。 } /****************狀態(tài) S1,黃燈亮 ********************/ if((s == 1)amp。 //人行道綠燈關 } else { P1 = 0xf7。 dula = 0。 wela = 0。 P0 = table[sec%10]。 P0 = 0xdd。 } /****************狀態(tài) S2,綠燈亮 ********************/ if((s == 2)amp。 dula = 1。 附錄 27 wela = 1。 delay(3)。 P0 = 0xff。 P0 = 0。 //顯示紅燈的十位 dula = 0。 wela = 0。 P0 = table[(sec yellowtime) % 10]。 P0 = 0xdf。 } /****************狀態(tài) S2,黃燈亮 ********************/ 附錄 28 if((s == 2)amp。 } else { P1 = 0x7f。 dula = 0。 wela = 0。 P0 = table[sec%10]。 P0 = 0xdd。 } /****************狀態(tài) S3,綠燈亮 ********************/ if((s == 3)amp。 dula = 1。 附錄 29 wela = 1。 delay(3)。 P0 = 0xff。 P0 = 0。 //顯示紅燈的十位 dula = 0。 wela = 0。 P0 = table[sec%10]。 P0 = 0xdf。 } /****************狀態(tài) S3,黃燈亮 ********************/ 附錄 30 if((s == 3)amp。 //前面四行實現(xiàn)黃燈閃爍 dula = 1。 wela = 1。 delay(3)。 P0 = 0xff。 P0 = 0。 (yellowflag == 0)) { P1 = 0x7e。 P0 = 0xff。 附錄 31 P0 = 0。 //顯示綠燈的個位 dula = 0。 wela = 0。 P0 = table[(sec yellowtime) / 10]。 P0 = 0xef。 dula = 1。 wela = 1。 delay(3)。 附錄 32 else P1 = 0x7f。 P0 = 0xff。 P0 = 0。 dula = 0。 wela = 0。 TL0 = (65536 50000)%256。 } if(half_sec == 2) //一秒 { half_sec = 0。 附錄 33 a = 0。 (time 9)) { s1 = 10。 } if((time = 9) amp。 s3 = 10。 (time 20)) { s1 = 10。 } if((time = 20) || (time 8)) { s1 = 15。 } } } if(sec == yellowtime) //倒計時到了黃 燈時間 { yellowflag = 1。} if(s == 3) //換向設置通行時間 附錄 34 { sec = s3。 } } } void waibu0() interrupt 0 //緊急狀態(tài) { P1 = 0x77。 dula = 0。 wela = 0。 //判斷時停止按鍵 delay(1)。 delay(1)。 s2
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1