计算机课程设计红绿灯,武汉大学电气工程学院计算机课程设计1:红绿灯
一、課題內容及要求
設有一個十字路口1、3為南北方向,2、4為東西方向,初始狀態為四個路口的紅燈全亮。之后,1、3路口的綠燈亮,2、4路口的紅燈亮,1、3路口方向通車。延時一段時間后,1、3路口的綠燈熄滅,而1、3路口的黃燈開始閃爍,閃爍若干次以后,1、3路口紅燈亮,而同時2、4 路口的綠燈亮,2、4路口方向通車。延時一段時間后,2、4路口的綠燈熄滅,而黃燈開始閃爍,閃爍若干次以后,再切換到1、3路口方向,之后,重復上述過程。
通過8255A控制發光二極管。PB3、PB0、PA5、PA2對應黃燈,PB1、PA6、PA3、PA0對應紅燈,PB2、PA7、PA4、PA1對應綠燈。
二、方案
分析題目可知,一共有7種工作狀態,分別如下:
狀態一:1紅、2紅、3紅、4紅
狀態二:1綠、2紅、3綠、4紅
狀態三:1黃、2紅、3黃、4紅
狀態四:1熄滅、2紅、3熄滅、4紅
狀態五:1紅、2綠、3紅、4綠
狀態六:1紅、2黃、3紅、4黃
狀態七:1紅、2熄滅、3紅、4熄滅
其中,1紅表示第1個路口的紅燈亮,2熄滅表示第2個路口的燈熄滅。黃燈閃爍是由黃燈亮和燈熄滅組合而成。
這七個狀態只需要依次運行,再運行完一次后再循環運行就可以完成題目“重復上述過程”的要求。在這七個狀態之間轉換時,不需要對前一狀態進行判斷,只需要按照此順序,通過8088依次對8255A置數,使8255A按順序分別處于這七種狀態即可。因不需要對前一狀態進行判斷,所以使程序大為簡化。
三、工作原理說明
首先,初始化8255,使其工作在方式0。方式0為基本輸入輸出方式,最適合用于無條件傳送方式。此特點與方案一致。并且A、B、C口均工作在輸出狀態。根據要求,此題目只用到A口和B口作為輸出口,通過A口和B口的輸出信號來控制每個燈的亮滅。每個工作狀態所對應的A口和B口的信號如下:
狀態一:1紅、2紅、3紅、4紅(A:10110110;B:11111101)
狀態二:1綠、2紅、3綠、4紅(A:10101110;B:11111011)
狀態三:1黃、2紅、3黃、4紅(A:10011110;B:11110111)
狀態四:1熄滅、2紅、3熄滅、4紅(A:10111110;B:11111111)
狀態五:1紅、2綠、3紅、4綠(A:01110101;B:11111101)
狀態六:1紅、2黃、3紅、4黃(A:11110011;B:11111100)
狀態七:1紅、2熄滅、3紅、4熄滅(A:11110111;B:11111101)先通過控制A口和B口的輸出使交通燈工作在狀態一。此時四個路口均為紅燈。此時持續的時間可以通過調用一個時間控制程序段DELAY1實現,這個
-1-
總結
以上是生活随笔為你收集整理的计算机课程设计红绿灯,武汉大学电气工程学院计算机课程设计1:红绿灯的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020美国计算机研究生学校排名,202
- 下一篇: 重庆理工大学计算机考研就业,重庆理工大学