單片機(jī)原理課程設(shè)計(jì)--百貨大樓人車分行交通信號(hào)燈設(shè)計(jì)_第1頁
已閱讀1頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  單片機(jī)原理及接口技術(shù)</p><p><b>  課程設(shè)計(jì)報(bào)告</b></p><p><b>  信息與電氣工程學(xué)院</b></p><p><b>  二零一四年六月</b></p><p> 設(shè)計(jì)題目:</p><p> 學(xué)

2、 號(hào):</p><p> 姓 名:</p><p> 指導(dǎo)教師:</p><p>  百貨大樓人車分行交通信號(hào)燈設(shè)計(jì)</p><p>  自從1858年英國(guó)人,發(fā)明了原始的機(jī)械扳手交通燈之后,隨后的一百多年里,交通燈改變了交通路況,也在人們?nèi)粘I钪姓紦?jù)了重要地位,隨著人們社會(huì)活動(dòng)日益增加,經(jīng)濟(jì)發(fā)展,汽車數(shù)量急劇增加,城市道路日漸擁

3、擠,交通燈更加顯示出了它的功能,使得交通得到有效管制,對(duì)于交通疏導(dǎo),提高道路導(dǎo)通能力,減少交通事故有顯著的效果。近年來,隨著科技的飛速發(fā)展,電子器件也隨之廣泛應(yīng)用,其中單片機(jī)也不斷深入人民的生活當(dāng)中。本模擬交通燈系統(tǒng)利用單片機(jī)AT89C51作為核心元件,實(shí)現(xiàn)了通過信號(hào)燈對(duì)路面狀況的智能控制。從一定程度上解決了交通路口堵塞、車輛停車等待時(shí)間不合理、急車強(qiáng)通等問題。系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單、可靠性高、成本低、實(shí)時(shí)性好、安裝維護(hù)方便等優(yōu)點(diǎn),有廣泛的應(yīng)

4、用前景。</p><p>  本模擬系統(tǒng)由單片機(jī)硬/軟件系統(tǒng),兩位8段數(shù)碼管和LED燈顯示系統(tǒng)。和復(fù)位電路控制電路等組成,較好的模擬了交通路面的控制,利用單片機(jī)良好的控制功能來進(jìn)行設(shè)計(jì),應(yīng)用更靈活,功能更強(qiáng)大,也更智能化。 百貨大樓人車分行交通信號(hào)指揮燈系統(tǒng),通過C語言編程,單片機(jī)做控制,加上8個(gè)LED燈指示交通紅綠燈、8155控制數(shù)碼管倒計(jì)時(shí)顯示來實(shí)現(xiàn)基本功能,外加處理突發(fā)中斷情況的的緊急按鈕來模擬兒童在紅燈過

5、程中誤闖的情況,并有帶蜂鳴器報(bào)警。</p><p><b>  1. 設(shè)計(jì)任務(wù)</b></p><p>  結(jié)合實(shí)際情況,基于AT89C51單片機(jī)設(shè)計(jì)一個(gè)百貨大樓十字路口人車分行交通信號(hào)燈系統(tǒng)。該系統(tǒng)應(yīng)滿足的功能要求為:</p><p>  (1) 交通信號(hào)由紅綠燈顯示;</p><p>  (2) 設(shè)置有倒計(jì)時(shí)提示;&

6、lt;/p><p>  (3) 有兒童過馬路提示。</p><p>  列寫交通燈變化表如表1-1所示。</p><p>  表1-1 百貨大樓路口交通燈變化情況表</p><p>  主要硬件設(shè)備:AT89C51單片機(jī)、8155I/O口擴(kuò)展芯片、LED輸出模塊、撥碼開關(guān)、六位數(shù)碼管顯示器。</p><p><b&

7、gt;  2. 整體方案設(shè)計(jì)</b></p><p>  百貨大樓人車分行交通信號(hào)指揮燈系統(tǒng)以AT89C51單片機(jī)作為整個(gè)系統(tǒng)的控制核心,應(yīng)用其強(qiáng)大的接口功能,構(gòu)成整個(gè)交通信號(hào)指揮燈控制的硬件系統(tǒng)。該系統(tǒng)將C語言編譯的程序送入單片機(jī),經(jīng)單片機(jī)接收后通過其端口來控制各個(gè)模塊,從而實(shí)現(xiàn)交通信號(hào)燈各個(gè)功能。</p><p>  本系統(tǒng)硬件主要AT89C51單片機(jī)、8155I/O口擴(kuò)展

8、芯片、LED輸出模塊、撥碼開關(guān)、六位數(shù)碼管顯示器,蜂鳴器六部分組成。各模塊的主要功能如下:</p><p>  (1) AT89C51作為整個(gè)系統(tǒng)的控制核心,通過編程控制各個(gè)模塊;</p><p>  (2) 8155的功能是控制數(shù)碼管顯示器; </p><p>  (3) LED輸出模塊的功能是指示兩個(gè)路口的紅綠燈、人行及左轉(zhuǎn)白燈變化情況;</p>

9、;<p>  (4) 數(shù)碼管顯示器的功能是顯示倒計(jì)時(shí)時(shí)間;</p><p>  (5)撥碼開關(guān)的功能是在兒童誤闖狀況時(shí)按下,使蜂鳴器發(fā)出報(bào)警聲,防止發(fā)生交通事故。</p><p>  系統(tǒng)的整體設(shè)計(jì)方案設(shè)計(jì)圖如圖2-1所示。</p><p>  圖2-1 系統(tǒng)的整體方案設(shè)計(jì)圖</p><p>  3. 統(tǒng)硬件電路設(shè)計(jì)</

10、p><p><b>  3.1 時(shí)鐘電路</b></p><p>  AT89C51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,該高增益反相放大器的輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個(gè)引腳跨接石英晶體振蕩器和微調(diào)電容,就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器,如圖3-1所示。</p><p>  圖3-1 AT89C51內(nèi)部時(shí)鐘方式

11、的電路圖</p><p><b>  3.2 復(fù)位電路</b></p><p>  單片機(jī)AT89C51的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的,采用了按鍵電平復(fù)位電路,RST端經(jīng)電阻和電源VCC接通,經(jīng)電容的充放電來維持兩個(gè)機(jī)器周期的高電平從而實(shí)現(xiàn)復(fù)位,如圖3-2所示。</p><p>  圖3-2 按鍵電平復(fù)位電路圖</p><

12、;p>  3.3 8155I/O口擴(kuò)展芯片的基本介紹</p><p>  圖3-3 8155I/O口擴(kuò)展芯片引腳圖</p><p>  (1) 其基本外型如圖3-3所示。</p><p><b>  (2) 管腳說明:</b></p><p>  1) VCC:供電電壓。</p><p>

13、;  2) VSS:接地端。</p><p>  3) AD7~AD0(8條):為地址/數(shù)據(jù)線,與AT89C51單片機(jī)的P0口相連,用于實(shí)時(shí)傳送地址/數(shù)據(jù)信息。</p><p>  4) I/O總線(22條):PA7~PA0為通用I/O線,用于傳送PA口上的外部設(shè)備數(shù)據(jù),數(shù)據(jù)傳送方向由寫入8155的命令字決定;PB7~PB0為通用I/O線,,用于傳送PB口上的外部設(shè)備數(shù)據(jù),數(shù)據(jù)傳送方

14、向也由寫入8155的命令字決定;PC5~PC0為數(shù)據(jù)/控制線,共6條,在通用I/O方式下,用作傳送I/O數(shù)據(jù);在選通I/O方式下,用作傳送命令/狀態(tài)欣信息。</p><p>  5) 控制總線(8條):</p><p>  RESET:復(fù)位輸入線。</p><p>  CE*和IO/M*:片選線。</p><p>  RD*和WR*:讀寫控

15、制線。</p><p>  ALE:允許地址輸入線。</p><p>  TIMERIN和TIMEROUT*:計(jì)數(shù)器輸入、輸出線。</p><p>  3.4 AT89C51單片機(jī)的基本介紹</p><p>  (1) 其基本引腳如圖3-4所示。</p><p>  圖3-4 AT89C51單片機(jī)引腳圖</p&

16、gt;<p><b>  (2) 管腳說明:</b></p><p>  1) VCC:供電電壓。</p><p>  2) GND:接地端。</p><p>  3) P0口:是一個(gè)8位漏極開路的雙向I/O口,每腳可吸收8個(gè)TTL門流;可用于外部程序數(shù)據(jù)存儲(chǔ)器,可以被定義為數(shù)據(jù)/地址的低八位。</p><

17、;p>  4) P1口:是一個(gè)由內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4個(gè)TTL門電流。</p><p>  5) P2 口:P2 是一個(gè)帶有內(nèi)部上拉電阻的8 位準(zhǔn)雙向I/O 口,P2即可作為通用的I/O口使用,也可以作為片外存儲(chǔ)器的高8位地址總線,與P0口配合,組成16位片外存儲(chǔ)器單元地址。</p><p>  6) P3 口:P3 口是一組帶有內(nèi)部上拉電

18、阻的8 位準(zhǔn)雙向I/0 口。P3 口除了作為通用的I/O口使用之外,每個(gè)引腳還具有第二功能,具體分配如表3-1所示。</p><p>  表 3-1 P3口第二功能的引腳表</p><p>  7) RST:復(fù)位輸入;當(dāng)振蕩器復(fù)位器件時(shí),要保持RST引腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p>  8) ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸

19、出電平用于鎖存地址的地址字節(jié)。ALE端以固定不變的頻率周期輸出正脈沖信號(hào),可用于對(duì)外部輸入的脈沖計(jì)數(shù)或定時(shí)。</p><p>  9) PSEN*:外部程序存儲(chǔ)器的選通信號(hào)。</p><p>  10) EA*/VPP:當(dāng)/EA保持低電平時(shí),訪問外部程序存儲(chǔ)器;EA*保持高電平時(shí),訪問內(nèi)部程序存儲(chǔ)器。</p><p>  11) XTAL1:反向振蕩放大器的輸

20、入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p>  12) XTAL2:來自反向振蕩器的輸出。</p><p>  3.4 倒計(jì)時(shí)6位數(shù)碼管顯示電路</p><p>  LED顯示屏作為大型顯示設(shè)備的一種,具有亮度高、價(jià)格低、壽命長(zhǎng)、維護(hù)簡(jiǎn)便等優(yōu)點(diǎn)。LED數(shù)碼管的結(jié)構(gòu)簡(jiǎn)單,分為七段和八段兩種形式,也有共陽和共陰之分。以八段共陽管為例,它有8個(gè)發(fā)光二極管(比七段多一個(gè)

21、發(fā)光二極管,用來顯示dP,即點(diǎn)),每個(gè)發(fā)光二極管的陽極連在一起。這樣,一個(gè)LED數(shù)碼管就有I根位選線和8根段選線,要想顯示一個(gè)數(shù)值,就要分別對(duì)它們的高低電平來加以控制。為方便起見,本文主要討論共陽八段LED數(shù)碼顯示管,其他類形的顯示管與其類似,如圖3-6所示。</p><p>  圖3-5 LDE數(shù)碼管</p><p>  3.5 8個(gè)LED燈輸出模塊電路</p><p

22、>  對(duì)于百貨大樓十字路口分東西直行,南北直行,東西南北左轉(zhuǎn),人行四個(gè)狀態(tài),東西直行由黃綠紅燈為L(zhǎng)1、L2、L3表示;南北直行由黃綠紅燈為L(zhǎng)5、L6、L7表示;東西南北的左轉(zhuǎn)由白燈為L(zhǎng)8表示,人行也由白燈為L(zhǎng)9表示。共8個(gè)LED燈,為共陽極;L1-L8陰極依次連接到P1.7-P1.0,陽極都接到電源VCC上。</p><p>  3.6 開關(guān)量緊急按鈕</p><p>  防止由于緊

23、急情況發(fā)生交通事故,故設(shè)置有緊急按鈕,由AT89C51的P3.2的INT0*接收中斷,連接一個(gè)開關(guān)K。</p><p><b>  4. 系統(tǒng)程序設(shè)計(jì)</b></p><p>  4.1 主程序及控制子程序流程圖</p><p>  主程序及控制子程序工作流程:路口共六個(gè)狀態(tài):人行白燈、左轉(zhuǎn)白燈、東西直行綠燈、東西直行黃燈、南北直行綠燈、南北直

24、行黃燈。開始先確定指示燈倒計(jì)時(shí)時(shí)間,掃描顯示6個(gè)數(shù)碼管,掃描滿20次的話倒計(jì)時(shí)時(shí)間減1,;掃描不滿20次的話返回繼續(xù)掃描數(shù)碼管;再確定路口指示燈狀態(tài),調(diào)用之前定義的數(shù)組變量,并依據(jù)狀態(tài)順序選擇8個(gè)LED燈的亮滅,如圖4-1所示。</p><p>  圖4-1 系統(tǒng)主程序流程</p><p>  4.2 中斷子程序流程圖</p><p>  中斷子程序工作流程:&l

25、t;/p><p>  外部中斷0:開啟定時(shí)器0,如圖4-2所示。</p><p>  圖4-2 外部中斷0程序流程圖</p><p>  定時(shí)器0:每次中斷前計(jì)時(shí)50ms,計(jì)時(shí)4次總計(jì)200ms,使p3.0輸出電平每200ms變化一次,以控制蜂鳴器發(fā)出的聲音,并循環(huán),如圖4-3所示。</p><p>  圖4-3 定時(shí)器0中斷程序流程圖<

26、;/p><p>  定時(shí)器1:每次中斷前計(jì)時(shí)50ms,計(jì)時(shí)20次共1s,每經(jīng)過1s交通燈計(jì)時(shí)數(shù)據(jù)減小,當(dāng)交通燈計(jì)時(shí)數(shù)據(jù)減小為0時(shí),交通燈計(jì)時(shí)數(shù)據(jù),數(shù)碼管顯示以及燈的顯示情況進(jìn)入下一個(gè)狀態(tài),狀態(tài)循環(huán),如圖4-4所示。 </p><p>  圖4-4 定時(shí)器1中斷程序流程圖</p><p><b>  5. 系統(tǒng)調(diào)試</b></

27、p><p>  5.1 Proteus軟件仿真調(diào)試</p><p>  (1) 一開始用Proteus仿真時(shí),由P0口控制數(shù)碼管的段選,而每次選擇開關(guān)數(shù)碼管的位選信號(hào)改變較快,使得本應(yīng)該控制前一位數(shù)碼管的段選信號(hào)卻能在后一位數(shù)碼管上顯示出來,。后改用P2口控制數(shù)碼管段選信號(hào),P3.6、P3.7做片選信號(hào)。P1口做LED燈的控制信號(hào)。</p><p>  (2) 在Pro

28、teus仿真軟件中6個(gè)獨(dú)立的7SEG-COM-ANODE型號(hào)的數(shù)碼管和單片7SEG-MPX6-CA的用法不同,前者是理想的數(shù)碼管(即不同于實(shí)際數(shù)碼管在關(guān)斷時(shí)仍有余暉的現(xiàn)象,該型數(shù)碼管只在位選選中或電源端供電時(shí)才亮),而后者由于存在余暉現(xiàn)象,所以運(yùn)行時(shí)表現(xiàn)出每位數(shù)碼管都亮的現(xiàn)象。</p><p>  (3) 在循環(huán)控制數(shù)碼管計(jì)數(shù)自減1時(shí),只注意循環(huán)次數(shù),忘記在循環(huán)體中給數(shù)碼管賦新的值,使得數(shù)碼管顯示的數(shù)字沒有隔一秒

29、自減1,只在下一個(gè)循環(huán)時(shí)突然減小。改進(jìn)后,在循環(huán)體中每次循環(huán)都對(duì)倒計(jì)時(shí)的數(shù)字自減1。</p><p>  (4) 用藍(lán)燈模擬行人和左轉(zhuǎn)通行燈,用組兩位數(shù)碼管倒計(jì)時(shí)模擬十字路口紅綠燈倒計(jì)時(shí),用紅綠燈分別模擬東西南北直行的狀態(tài)燈。</p><p>  (5) 用藍(lán)燈閃爍模擬硬件中突發(fā)狀況下,蜂鳴器報(bào)警時(shí)“滴、滴、滴、滴”的報(bào)警聲。</p><p>  (6) 軟件仿真時(shí)

30、由于軟件中8155芯片的各控制口地址與硬件中8155的地址計(jì)算方法不同,無法正常輸出期望的信號(hào),故軟件仿真時(shí),未采用8155芯片,而是采取了直接連數(shù)碼管段選、位選信號(hào)的措施。</p><p>  (7) 經(jīng)過數(shù)次調(diào)試,最終用Proteus仿真軟件實(shí)現(xiàn)了模擬十字路口交通燈的控制。</p><p>  改進(jìn)前仿真電路原理,如圖5-1所示。</p><p>  圖5-1

31、 改進(jìn)前的Proteus軟件仿真原理圖</p><p>  改進(jìn)后仿真電路原理,如圖5-2所示。</p><p>  圖5-2 改進(jìn)后的Proteus軟件仿真原理圖</p><p><b>  5.2 硬件調(diào)試</b></p><p>  硬件調(diào)試是利用開發(fā)系統(tǒng)、基本測(cè)試儀器(萬用表、示波器等),檢查用戶系統(tǒng)硬件中存在

32、的故障。</p><p>  硬件調(diào)試分為靜態(tài)調(diào)試與動(dòng)態(tài)調(diào)試兩步進(jìn)行。</p><p>  (1) 使用菊陽仿真器和菊陽仿真軟件時(shí),沒有對(duì)編譯器初始化,所以不能實(shí)現(xiàn)單片機(jī)和PC機(jī)的通訊。</p><p>  (2) 程序中使用跳沿觸發(fā)中斷服務(wù)子程序,如果把開關(guān)打到低電平位置上,于是在實(shí)驗(yàn)箱剛上電時(shí),P3.2中斷引腳會(huì)先置高電平,再被開關(guān)拉到低點(diǎn)電平,相當(dāng)于產(chǎn)生了負(fù)跳

33、沿,所以一開機(jī)就進(jìn)入中斷程序。為了避免出現(xiàn)上述現(xiàn)象,在程序中先把中斷觸發(fā)開關(guān)置高電平,這樣就能使得中斷引腳不會(huì)被拉低,沒有誤動(dòng)作。</p><p>  (3) 實(shí)驗(yàn)箱上的LED數(shù)碼管模塊和按鍵模塊都可以由8155控制,本次課程設(shè)計(jì),選擇用8155控制數(shù)碼管模塊。</p><p>  (4) 由于需要6個(gè)LED燈表示東西、南北直行的紅綠黃燈,4個(gè)LED燈表示人行、左轉(zhuǎn)紅綠燈,共需要十個(gè)燈,而

34、實(shí)驗(yàn)箱上一組LED燈只有八個(gè)不夠用,所以定義從左往右第四個(gè)白燈亮表示為人行的綠燈,不亮表示人行紅燈;最右側(cè)的白燈為左轉(zhuǎn)的綠燈,不亮表示左轉(zhuǎn)紅燈。</p><p><b>  程序清單</b></p><p>  #include <reg52.h></p><p>  #include <absacc.h></p&

35、gt;<p>  sbit di=P3^0;</p><p>  sbit d=P3^2;</p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>  #define COM XBYTE [0xff20]</p>

36、;<p>  #define PA XBYTE [0xff21]</p><p>  #define PB XBYTE [0xff22]</p><p>  #define PC XBYTE [0xff23]</p><p>  Uchar code table[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8

37、,0x80,0x90};</p><p>  uchar xianshi[]={15,20,12,3,17,3};</p><p>  uchar deng[]={0xb3,0x3b,0xbd,0xbe,0xdb,0xeb};</p><p>  void delayms(uint);</p><p>  void display(uchar

38、,uchar);</p><p>  uchar num,num1,num2,shi,ge,i;</p><p>  void main()</p><p><b>  {</b></p><p><b>  di=1;</b></p><p><b>  COM=

39、0x43;</b></p><p><b>  i=0;</b></p><p><b>  P1=0xb3;</b></p><p><b>  num=15;</b></p><p><b>  EX0=1;</b></p>

40、<p><b>  IT0=1;</b></p><p>  TMOD=0x11;</p><p>  TH0=(65536-45872)/256;</p><p>  TL0=(65536-45872)%256;</p><p>  TH1=(65536-45872)/256;</p><

41、p>  TL1=(65536-45872)%256;</p><p><b>  EA=1;</b></p><p><b>  ET1=1;</b></p><p><b>  TR1=1;</b></p><p><b>  while(1)</b&g

42、t;</p><p><b>  {</b></p><p><b>  if(d==1)</b></p><p><b>  {</b></p><p><b>  di=1;</b></p><p><b>  TR0

43、=0;</b></p><p><b>  }</b></p><p>  display(shi,ge);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void display(uch

44、ar shi,uchar ge)</p><p><b>  {</b></p><p>  PB=table[shi];</p><p><b>  PA=0xfd;</b></p><p>  delayms(5);</p><p>  PB=table[ge];<

45、/p><p><b>  PA=0xfe;</b></p><p>  delayms(5);</p><p><b>  }</b></p><p>  void delayms(uint xms)</p><p><b>  {</b></p>

46、;<p><b>  uint i,j;</b></p><p>  for(i=xms;i>0;i--)</p><p>  for(j=110;j>0;j--);</p><p><b>  }</b></p><p>  void didi()interrupt 0

47、</p><p><b>  {</b></p><p><b>  ET0=1;</b></p><p><b>  TR0=1;</b></p><p><b>  }</b></p><p>  void dididi() i

48、nterrupt 1</p><p><b>  {</b></p><p>  TH0=(65536-45872)/256;</p><p>  TL0=(65536-45872)%256;</p><p><b>  num1++;</b></p><p>  if(nu

49、m1==4)</p><p><b>  {</b></p><p><b>  num1=0;</b></p><p><b>  di=~di;</b></p><p><b>  }</b></p><p><b>

50、  }</b></p><p>  void T1_time() interrupt 3</p><p><b>  {</b></p><p>  TH1=(65536-45872)/256;</p><p>  TL1=(65536-45872)%256;</p><p><

51、b>  num2++;</b></p><p>  if(num2==20)</p><p><b>  {</b></p><p><b>  num2=0;</b></p><p><b>  num--;</b></p><p>

52、  if(num==0)</p><p><b>  {</b></p><p><b>  if(i==5)</b></p><p><b>  i=0;</b></p><p><b>  else</b></p><p>&l

53、t;b>  i++;</b></p><p>  num=xianshi[i];</p><p>  P1=deng[i];</p><p><b>  }</b></p><p>  shi=num/10;</p><p>  ge=num%10;</p><

54、;p><b>  }</b></p><p><b>  }</b></p><p><b>  7. 小結(jié)</b></p><p>  本次課程設(shè)計(jì)題目為百貨大樓十字路口人車分行交通信號(hào)燈系統(tǒng),由于與上次的PLC課程設(shè)計(jì)題目一致,所以就用上次實(shí)地測(cè)得的交通信號(hào)數(shù)據(jù)進(jìn)行了本次單片機(jī)課程設(shè)計(jì)的設(shè)計(jì)

55、。具體設(shè)計(jì)步驟是,先在KAIL中創(chuàng)建一個(gè)工程,在工程中用C語言進(jìn)行編程,具體編程思路是在定時(shí)器中完成及時(shí),從而完成對(duì)輸出數(shù)據(jù)、輸出燈狀態(tài)、蜂鳴器的操作,同時(shí)再通過數(shù)碼管譯碼及動(dòng)態(tài)掃描,完成輸出數(shù)據(jù)在數(shù)碼管上的顯示,完成編程并編譯通過后,再通過JY2X00 IDE軟件進(jìn)行硬件仿真,如有問題再進(jìn)行程序的修改,直到硬件功能的實(shí)現(xiàn),最后再在Proteus軟件中畫出仿真電路再進(jìn)行軟件仿真,直到實(shí)現(xiàn)功能即可。</p><p>

56、;  本次課程設(shè)計(jì)遇到了如下問題,首先在未軟件仿真的情況下,直接將程序拷了進(jìn)去進(jìn)行了硬件仿真,雖然8個(gè)LED燈實(shí)現(xiàn)了紅綠燈的基本功能,即東西直行紅綠黃,南北直行紅綠黃,左轉(zhuǎn)白燈,人行白燈,但是倒計(jì)時(shí)數(shù)碼管卻六位全亮,并沒有實(shí)現(xiàn)倒計(jì)時(shí)的功能。經(jīng)過小組成員討論后發(fā)現(xiàn),P0口無法實(shí)現(xiàn)給高電平,所以不能直接接數(shù)碼管,但用別的口又存在口不夠用的問題,所以就用了8155,改了之后發(fā)現(xiàn)還是不行,通過探討發(fā)現(xiàn)是接錯(cuò)了引腳,實(shí)驗(yàn)箱的8155模塊引腳地址與

57、教科書上給出的不太一樣,查詢實(shí)驗(yàn)箱的說明手冊(cè)更改引腳之后成功的解決了這一問題,實(shí)現(xiàn)了數(shù)碼管的倒計(jì)時(shí)顯示。在軟件仿真方面也出現(xiàn)了不會(huì)畫總線的問題,最終通過查閱網(wǎng)上的相關(guān)資料得以解決并成功的畫出電路圖并實(shí)現(xiàn)了軟件仿真。</p><p>  這次課程設(shè)計(jì)收獲很多,首先能自己利用KAIL軟件進(jìn)行C語言編程,學(xué)會(huì)了用Proteus軟件進(jìn)行畫仿真圖并進(jìn)行軟件仿真,還進(jìn)一步熟練了JY2X00 IDE軟件的硬件仿真,通過大家的努

58、力探討和學(xué)習(xí),和對(duì)問題的發(fā)現(xiàn)與解決,使學(xué)到了很多課本上沒有的東西,加強(qiáng)了動(dòng)手能力,收益甚多。</p><p>  在答辯的基礎(chǔ)上,依據(jù)老師的指導(dǎo),對(duì)軟件仿真再次進(jìn)行了完善,同時(shí)將老師提出的幾個(gè)問題進(jìn)行了查閱,在C語言編程的時(shí)候,我們可以用單步運(yùn)行的方法來觀察每一個(gè)語句的執(zhí)行時(shí)間,最后將所有語句執(zhí)行時(shí)間累加起來得到延時(shí)時(shí)間;也先可以將C語言匯編成機(jī)器語言,再對(duì)每個(gè)語句所用機(jī)器周期進(jìn)行累加來得到最后的延時(shí)。</

59、p><p>  PLC技術(shù)使用了單片機(jī)技術(shù), PLC技術(shù)不是單片機(jī)技術(shù)的延伸。PLC是建立在單片機(jī)之上的產(chǎn)品,單片機(jī)是一種集成電路。單片機(jī)可以構(gòu)成各種各樣的應(yīng)用系統(tǒng),從微型、小型到中型、大型都可,PLC是單片機(jī)應(yīng)用系統(tǒng)的一個(gè)特例。用打比方的方式來形容就是:?jiǎn)纹瑱C(jī)比方為一張白紙,PLC比方為在白紙上畫好的表格,則使用單片機(jī)技術(shù)就象在白紙上寫字,使用PLC技術(shù)就象是填表格;掌握單片機(jī)技術(shù)就象學(xué)會(huì)寫字的能力,掌握PLC技術(shù)

60、就象是學(xué)會(huì)看表格和填表格的能力。可見單片機(jī)技術(shù)發(fā)展空間很大,因?yàn)槟阆胍裁?,就可以寫什么。而PLC技術(shù)里肯定有一些表格是不用的,也會(huì)有些表格空間是不夠用的。再者單片機(jī)技術(shù)資源讓費(fèi)要比PLC技術(shù)少。因?yàn)閱纹瑱C(jī)技術(shù)就像你要寫多少字就用多少紙,而PLC技術(shù)就像有些表格是不用的,必然造成更大讓費(fèi)。</p><p>  對(duì)于以后的展望方面,自然是希望多做些像這樣能鍛煉自己動(dòng)手能力和自學(xué)能力的課程設(shè)計(jì),對(duì)于單片機(jī)還研究的不是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論