版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 《微型計(jì)算機(jī)原理與接口技術(shù)》</p><p><b> 課 程 設(shè) 計(jì)</b></p><p> ?。?2009級(jí)本科)</p><p> 題 目: 汽車信號(hào)燈系統(tǒng)的控制 </p><p><b> 課程設(shè)計(jì)任務(wù)書</b></p>
2、<p><b> 摘 要</b></p><p> 本課題設(shè)計(jì)以我系現(xiàn)有的硬件教學(xué)資源為基礎(chǔ),以我們平時(shí)做微型計(jì)算機(jī)實(shí)驗(yàn)所用的“TPC-H微機(jī)接口實(shí)驗(yàn)系統(tǒng)”為開發(fā)平臺(tái),意在設(shè)計(jì)、實(shí)現(xiàn)一個(gè)汽車信號(hào)燈模擬控制系統(tǒng)。</p><p> 該汽車信號(hào)燈模擬控制系統(tǒng)通過利用實(shí)驗(yàn)室中裝有TD-DOS操作系統(tǒng)的PC機(jī)及實(shí)驗(yàn)系統(tǒng)上的主要控制芯片8255A、電平開關(guān)和發(fā)
3、光二極管實(shí)來模擬實(shí)現(xiàn)。通過我們小組所有成員的共同努力,該汽車信號(hào)燈控制系統(tǒng)已在實(shí)驗(yàn)室成功實(shí)現(xiàn)預(yù)期功能模擬。</p><p><b> 關(guān)鍵詞</b></p><p> 汽車信號(hào)燈 8255A 8086 端口</p><p><b> 目 錄</b></p><p><b>
4、 一.前言2</b></p><p> 1.1 設(shè)計(jì)背景2</p><p> 1.2系統(tǒng)設(shè)計(jì)目的2</p><p> 1.3設(shè)計(jì)任務(wù)與要求2</p><p> 二.總體方案設(shè)計(jì)分析、討論2</p><p> 2.1 總體方案設(shè)計(jì)分析2</p><p> 2.1
5、.1 問題描述分析2</p><p> 2.1.2 問題的解決方案分析3</p><p> 2.2 系統(tǒng)的主要功能3</p><p><b> 三.詳細(xì)設(shè)計(jì)5</b></p><p> 3.1 硬件設(shè)計(jì)5</p><p> 3.1.1 芯片選擇5</p><
6、;p> 3.1.2 系統(tǒng)電路圖6</p><p> 3.1.3 電路圖說明分析6</p><p> 3.2 軟件設(shè)計(jì)6</p><p> 3.2.1 程序流程圖7</p><p> 3.2.2 程序設(shè)計(jì)源代碼與注釋8</p><p> 四.系統(tǒng)調(diào)試與實(shí)現(xiàn)12</p><
7、p> 4.1 實(shí)驗(yàn)步驟12</p><p> 4.2 調(diào)試結(jié)果與分析12</p><p> 4.3、設(shè)計(jì)模擬電路仿真14</p><p><b> 五.總結(jié)14</b></p><p> 5.1 課程設(shè)計(jì)小結(jié)14</p><p> 5.2 課程設(shè)計(jì)體會(huì)15</p
8、><p><b> 致謝15</b></p><p> 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)成績?cè)u(píng)定表18</p><p><b> 一.前言</b></p><p><b> 1.1 設(shè)計(jì)背景</b></p><p> 汽車信號(hào)燈的作用是大家所熟知的,
9、汽車通過顯示不同的信號(hào)燈來告訴前后左右的行車者本汽車正在進(jìn)行的操作。信號(hào)燈燈具的發(fā)展是隨著汽車制造技術(shù)及電光源技術(shù)的發(fā)展而逐步完善的。它經(jīng)歷了機(jī)油(或煤油)燈、乙炔氣燈到電光源燈的發(fā)展歷程?,F(xiàn)代汽車信號(hào)燈燈具已經(jīng)開始使用發(fā)光二極管(LED)技術(shù)以及光導(dǎo)技術(shù),這是信號(hào)燈燈具的一次飛躍。</p><p><b> 1.2系統(tǒng)設(shè)計(jì)目的</b></p><p> 1、了解
10、汽車信號(hào)燈的控制原理。</p><p> 2、掌握8086CPU和并行接口芯片8255A邏輯功能及使用方法。</p><p> 3、掌握一定的匯編語言知識(shí),培養(yǎng)自己的動(dòng)手操作能力。</p><p> 4、學(xué)習(xí)程序設(shè)計(jì)的基本思路和方法。</p><p> 1.3設(shè)計(jì)任務(wù)與要求</p><p> 1.以8086C
11、PU為核心、并行接口芯片8255A、4個(gè)邏輯電平開關(guān)和六個(gè)發(fā)光二極管設(shè)計(jì)一汽車信號(hào)燈控制系統(tǒng)</p><p> 2.該系統(tǒng)通過開關(guān)控制的信號(hào)燈有汽車左轉(zhuǎn)、汽車右轉(zhuǎn)、汽車出現(xiàn)緊急狀況、汽車剎車、汽車停靠等十類燈.</p><p> 3. 該系統(tǒng)只有在開關(guān)閉合即有信號(hào)輸入時(shí)才有效果。</p><p> 二.總體方案設(shè)計(jì)分析、討論</p><p&
12、gt; 2.1 總體方案設(shè)計(jì)分析</p><p> 2.1.1 問題描述分析</p><p> 問題描述分析: 汽車行駛時(shí)一共有五種狀況: 汽車左轉(zhuǎn) 汽車右轉(zhuǎn) 汽車出現(xiàn)緊急狀況 汽車剎車 汽車???在進(jìn)行課程設(shè)計(jì)時(shí),可以考慮到10種組合模式如下: 輸入狀態(tài) 輸出狀態(tài) 左轉(zhuǎn) 左頭燈
13、,左尾燈,儀表左燈亮 右轉(zhuǎn) 右頭燈,右尾燈,儀表右燈亮 緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)閃爍 剎車 左右尾燈亮 左轉(zhuǎn)+剎車 左頭燈,左尾燈,儀表左燈亮 右轉(zhuǎn)+剎車 右頭燈,右尾燈,儀表右燈亮 剎車+緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)亮 左轉(zhuǎn)+剎車+緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)亮
14、右轉(zhuǎn)+剎車+緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)亮 停靠 左右頭燈,左右尾燈同時(shí)閃爍 </p><p> 2.1.2 問題的解決方案分析</p><p> 通過對(duì)以上問題描述的深入分析,可總結(jié)出以下三點(diǎn):</p><p> ?。?)通過6個(gè)發(fā)光二級(jí)管模擬兩個(gè)頭燈、兩個(gè)尾燈和儀表盤上的兩個(gè)指示燈。</p><p
15、> ?。?)利用4個(gè)開關(guān)可產(chǎn)生的16種情況的前10種組合來分別模擬左轉(zhuǎn)、右轉(zhuǎn)、緊急,剎車,??康臓顟B(tài),使發(fā)光二極管信號(hào)燈相應(yīng)亮、滅或閃爍。</p><p> ?。?)通過程序或者定時(shí)/計(jì)數(shù)器控制燈的閃爍頻率??紤]到程序設(shè)計(jì)比較簡便,所以本次課程設(shè)計(jì)一旦涉及到信號(hào)燈的閃爍,都為程序控制。</p><p> 在對(duì)任務(wù)需求進(jìn)行詳細(xì)分析以后,我們小組決定主要控制芯片采用實(shí)驗(yàn)箱上的8255A
16、,由于本次設(shè)計(jì)中對(duì)信號(hào)燈閃爍的頻率并沒有嚴(yán)格的要求,所以就沒必要采用8253來進(jìn)行定時(shí),當(dāng)然,在本系統(tǒng)中加入8253也不是件難事,不過小組在綜合考慮以及對(duì)任務(wù)進(jìn)行詳細(xì)分析和討論后,決定節(jié)省硬件資源放棄使用8253,用程序來進(jìn)行定時(shí)。</p><p> 2.2 系統(tǒng)的主要功能</p><p> (1) 當(dāng)用戶置開關(guān)狀態(tài)為01H時(shí),也即左轉(zhuǎn),表左轉(zhuǎn)開關(guān)閉合,則儀表左燈、左頭燈、左尾燈同時(shí)亮
17、,其他燈滅。</p><p> (2) 當(dāng)用戶置開關(guān)狀態(tài)為02H時(shí),也即右轉(zhuǎn),表右轉(zhuǎn)開關(guān)閉合,則儀表右燈、右頭燈、右尾燈同時(shí)亮,其他燈滅。</p><p> (3) 當(dāng)用戶置開關(guān)狀態(tài)為03H時(shí),表緊急開關(guān)閉合,也即出現(xiàn)緊急狀態(tài)時(shí),則所有燈閃爍。</p><p> (4) 當(dāng)用戶置開關(guān)狀態(tài)為04H時(shí), 表踩剎車(合上剎車開關(guān)),則左尾燈、右尾燈亮,其它燈滅。&l
18、t;/p><p> (5) 當(dāng)用戶置開關(guān)狀態(tài)為05H時(shí),表示汽車左轉(zhuǎn)剎車,則儀表左燈、左頭燈、左尾燈同時(shí)亮,其它燈滅。</p><p> (6) 當(dāng)用戶置開關(guān)狀態(tài)為06H時(shí),表示汽車右轉(zhuǎn)剎車,則儀表右燈、右頭燈、右尾燈同時(shí)亮,其它燈滅。</p><p> (7) 當(dāng)用戶置開關(guān)狀態(tài)為07H時(shí),表示汽車此時(shí)處于緊急剎車狀態(tài),則全部指示燈亮。</p>&l
19、t;p> (8) 當(dāng)用戶置開關(guān)狀態(tài)為08H時(shí),表示汽車此時(shí)處于左轉(zhuǎn)緊急剎車狀態(tài),則全部指示燈亮。</p><p> (9) 當(dāng)用戶置開關(guān)狀態(tài)為09H時(shí),表示汽車此時(shí)處于右轉(zhuǎn)緊急剎車狀態(tài),則全部指示燈亮。</p><p> (10) 當(dāng)用戶置開關(guān)狀態(tài)為0AH時(shí),表示汽車此時(shí)在停靠,則儀表左右燈滅,左右頭燈亮,左右尾燈閃爍。</p><p> 所以,可以設(shè)
20、置實(shí)驗(yàn)箱上的6個(gè)發(fā)光二極管的對(duì)應(yīng)情況為:</p><p> L0:右尾燈 L1:左尾燈 L2:右頭燈 L3:左頭燈 L4:儀表右燈 L5:儀表左燈</p><p> 通過4個(gè)開關(guān)(K0、K1、K2、K3的組合)產(chǎn)生的16種情況的前10種來作為輸入選擇,影響6個(gè)指示燈的輸出,對(duì)應(yīng)關(guān)系如下表: </p><p> 表1 開關(guān)狀態(tài)與燈狀態(tài)對(duì)應(yīng)表</p
21、><p><b> 三.詳細(xì)設(shè)計(jì)</b></p><p><b> 3.1 硬件設(shè)計(jì)</b></p><p> 3.1.1 芯片選擇</p><p> 根據(jù)課題所要實(shí)現(xiàn)的功能,結(jié)合所學(xué)的知識(shí)進(jìn)行分析,系統(tǒng)要用到8086微處理器芯片和可編程的并行接口芯片8255A。8086是Intel系列的16位
22、微處理器,它有16根數(shù)據(jù)線和20根地址線,本系統(tǒng)采用它作為處理器。8255是可編程I/O口擴(kuò)展芯片。對(duì)8255輸入不同的指令可改變I/O口的工作方式。8255內(nèi)部有4個(gè)寄存器:分別為寄存器A、B、C和控制寄存器。A、B、C寄存器的數(shù)據(jù)就是引腳PA7~PA0、PB7~PB0、PC7~PC0上輸入或輸出的數(shù)據(jù)。而控制寄存器的數(shù)據(jù)則表明PA、PB、PC的工作方式。通過CS、A0、A1、RD和WR對(duì)4個(gè)寄存器進(jìn)行操作。(1)CS為低電平時(shí)選通8
23、255;(2)A1、A0為地址選通;(3)RD和WR為讀、寫信號(hào):RD為低、WR為高時(shí)為讀方式,RD為高、WR為低時(shí)為寫方式。(4)D0~D7為數(shù)據(jù)口。 向控制寄存器寫入不同的數(shù)據(jù)可以使8255工作在三種不同的方式下。</p><p> 8086最小工作模式系統(tǒng)結(jié)構(gòu)圖</p><p> 3.1.2 系統(tǒng)電路圖</p><p><b> 圖3 系統(tǒng)電路
24、圖</b></p><p> 3.1.3 電路圖說明分析</p><p> 1.8255的CS端接實(shí)驗(yàn)室中TPC-H實(shí)驗(yàn)系統(tǒng)的I/O地址譯碼電路地址為288H~28FH的接口,從而達(dá)到選通控制。</p><p> 2.DATA與8086/8088數(shù)據(jù)總線的低八位相連接,RD與IOR相連接,WR與IOW相連接,將8086/8088的地址線A1,A2與
25、8255的A0,A1連接起來。</p><p> 3.8255的PA端口用于輸出,與發(fā)光二極管相連接,用于控制燈的閃爍效果,PC端口用于輸入,用其低五位做為輸入控制,對(duì)于8255的PB端口則為空閑狀態(tài)。</p><p> 4. L0(右尾燈)、L1(左尾燈)、L2(右頭燈) L3(左頭燈) L4(儀表右燈)、 L5(儀表左燈)</p><p><b>
26、 3.2 軟件設(shè)計(jì)</b></p><p> 3.2.1 程序流程圖</p><p> 圖4 系統(tǒng)總程序流程圖</p><p> 3.2.2 程序設(shè)計(jì)源代碼與注釋</p><p> data segment ;數(shù)據(jù)段</p&g
27、t;<p> ctr db 'enter c key to continue!',0ah,0dh ;程序初始提示信息</p><p> db 'enter other keys to exit to dos!',0ah,0dh,'$'</p><p> ctr01 db '1. z
28、uo zhuan wan.....',0ah,0dh,'$' ;左轉(zhuǎn)彎時(shí)提示信息(以下類似)</p><p> ctr02 db '2. you zhuan wan.....',0ah,0dh,'$'</p><p> ctr03 db '3. jin ji kai guan he shang.....
29、9;,0ah,0dh,'$'</p><p> ctr04 db '4. sha che.....',0ah,0dh,'$'</p><p> ctr05 db '5. zuo zhuan wan sha che.....',0ah,0dh,'$'</p><p> ctr06
30、 db '6. you zhuan wan sha che.....',0ah,0dh,'$'</p><p> ctr07 db '7. jin ji sha che.....',0ah,0dh,'$'</p><p> ctr08 db '8. jin ji zuo zhuan sha che.....&
31、#39;,0ah,0dh,'$'</p><p> ctr09 db '9. jin ji you zhuan sha che.....',0ah,0dh,'$'</p><p> ctr10 db '10. ting kao.....',0ah,0dh,'$'</p><p>
32、<b> data ends</b></p><p> stack segment stack ;堆棧段</p><p> sta dw 50 dup(?)</p><p> stack ends</p><p> code se
33、gment ;代碼段</p><p> assume cs:code,ds:data,es:data,ss:stack</p><p> start: push ds</p><p><b> sub ax,ax</b></p>&l
34、t;p><b> push ax</b></p><p> mov ax,data</p><p><b> mov ds,ax</b></p><p><b> mov es,ax</b></p><p> ccc: mov dx,offset ctr
35、 ;顯示提示信息</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov ah,01h</p><p><b> int 21h</b></p><p> cmp al,'c'
36、 ;若輸入‘C’,則繼續(xù)執(zhí)行,否則返回到DOS</p><p><b> jz eee</b></p><p> mov ax,4c00h</p><p><b> int 21h </b></p><p> eee: mov dx,0ff03h </p>
37、;<p> ;給8255A送入方式控制字89H 設(shè)置為A口輸出,C口輸入(因?yàn)閷?shí)驗(yàn)箱上沒B口)</p><p> mov al,89h</p><p> out dx,al </p><p> mov dx,0ff02h ;將4個(gè)開關(guān)的狀態(tài)送入AL</p><p><b> in al,dx&
38、lt;/b></p><p> mov cx,0020h ;設(shè)置循環(huán)次數(shù)</p><p> bb1: cmp al,01h ;將al的值依次與01H到0AH比較</p><p> jnz bb2 </p><p> ;不是01H則轉(zhuǎn)bb1執(zhí)行,是則調(diào)用中斷在
39、屏幕上顯示應(yīng)提示信息,順序執(zhí)行下去</p><p> mov dx,offset ctr01</p><p> ;左轉(zhuǎn)彎狀態(tài),實(shí)現(xiàn)六盞燈狀態(tài)為:閃、滅、閃、滅、閃、滅</p><p> mov ah,09h</p><p> int 21h ;調(diào)用09號(hào)中斷,在屏幕上顯示現(xiàn)在正處于左轉(zhuǎn)彎狀態(tài)</p&g
40、t;<p> mov dx,off00h</p><p> left: mov al,11101010b ;六盞燈狀態(tài)為:亮、滅、亮、滅、亮、滅(最高兩位沒影響)</p><p><b> out dx,al</b></p><p> call delay0 ;調(diào)延時(shí)子程序</p><
41、p><b> loop left</b></p><p><b> jmp ccc</b></p><p> bb2: cmp al,02h</p><p><b> jnz bb3</b></p><p> mov dx,offset ctr02</
42、p><p> ;右轉(zhuǎn)彎狀態(tài),實(shí)現(xiàn)六盞燈狀態(tài)為:滅、亮、滅、亮、滅、亮</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p><p> right: mov al,11010101b ;六盞燈狀態(tài)為:滅、
43、亮、滅、亮、滅、亮</p><p><b> out dx,al</b></p><p> call delay0</p><p> loop right</p><p><b> jmp ccc</b></p><p> bb3: cmp al,03h<
44、/p><p><b> jnz bb4</b></p><p> mov dx,offset ctr03 ;緊急開關(guān)合上</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p&
45、gt;<p> hurry: mov al,11000000b ;六盞燈狀態(tài)為:閃、閃、閃、閃、閃、閃</p><p><b> out dx,al</b></p><p> call delay0</p><p> mov al,11111111b</p><p><b> out
46、dx,al</b></p><p> call delay0</p><p> loop hurry</p><p><b> jmp ccc</b></p><p> bb4: cmp al,04h</p><p><b> jnz bb5</b>
47、</p><p> mov dx,offset ctr04 ;剎車</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p><p> break: mov al,11000011b ;六盞燈狀
48、態(tài)為:滅、滅、滅、滅、亮、亮</p><p><b> out dx,al</b></p><p> call delay0</p><p> loop break</p><p><b> jmp ccc</b></p><p> bb5: cmp al,05
49、h</p><p><b> jnz bb6</b></p><p> mov dx,offset ctr05 ;左轉(zhuǎn)彎剎車</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h&l
50、t;/p><p> leftbreak: mov al,11001010b ;六盞燈狀態(tài)為:亮、滅、亮、滅、亮、滅</p><p><b> out dx,al</b></p><p> call delay0</p><p> loop leftbreak</p><p><b>
51、; jmp ccc</b></p><p> bb6: cmp al,06h</p><p><b> jnz bb7</b></p><p> mov dx,offset ctr06 ;右轉(zhuǎn)彎剎車</p><p> mov ah,09h</p><p><b&
52、gt; int 21h</b></p><p> mov dx,0ff00h</p><p> rightbreak: mov al,11000101b ;六盞燈狀態(tài)為:滅、亮、滅、亮、滅、亮</p><p><b> out dx,al</b></p><p> call delay0</p
53、><p> loop rightbreak</p><p><b> jmp ccc</b></p><p> bb7: cmp al,07h</p><p><b> jnz bb8</b></p><p> mov dx,offset ctr07 ;緊急剎車
54、</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p><p> hurrybreak: mov al,11111111b ;六盞燈狀態(tài)為:亮、亮、亮、亮、亮、亮</p><p><b>
55、 out dx,al</b></p><p> call delay0</p><p> loop hurrybreak</p><p><b> jmp ccc</b></p><p> bb8: cmp al,08h</p><p><b> jnz bb9
56、</b></p><p> mov dx,offset ctr08 ;緊急左轉(zhuǎn)剎車</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p><p> hurryleftbreak: m
57、ov al,11111111b ;六盞燈狀態(tài)為:亮、亮、亮、亮、亮、亮</p><p><b> out dx,al</b></p><p> call delay0</p><p> mov al,11011111b</p><p><b> out dx,al</b></p>
58、<p> call delay0</p><p> loop hurryleftbreak</p><p><b> jmp ccc</b></p><p> bb9: cmp al,09h</p><p><b> jnz bb10</b></p><
59、;p> mov dx,offset ctr09 ;緊急右轉(zhuǎn)剎車</p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p><p> hurryrightbreak: mov al,11111111b ;六盞燈狀態(tài)為:
60、亮、亮、亮、亮、亮、亮</p><p><b> out dx,al</b></p><p> call delay0</p><p> mov al,11101111b</p><p><b> out dx,al</b></p><p> call delay0
61、</p><p> loop hurryrightbreak</p><p><b> jmp ccc</b></p><p> bb10: cmp al,0ah</p><p><b> jnz bb11</b></p><p> mov dx,offset c
62、tr10 ;???lt;/p><p> mov ah,09h</p><p><b> int 21h</b></p><p> mov dx,0ff00h</p><p> stop: mov al,11001100b ;六盞燈狀態(tài)為:滅、滅、亮、亮、閃、閃</p><p&
63、gt;<b> out dx,al</b></p><p> call delay0</p><p> mov al,11001111b</p><p><b> out dx,al</b></p><p> call delay0</p><p><b>
64、; loop stop</b></p><p><b> jmp ccc</b></p><p> bb11: jmp ccc</p><p><b> ret </b></p><p> delay proc near
65、 ;延時(shí)子程序</p><p><b> push cx</b></p><p> mov cx,0ffffh</p><p> pp: loop pp</p><p><b> pop cx</b></p><p><b> ret</
66、b></p><p> delay endp</p><p> delay0 proc near ;延時(shí)子程序</p><p><b> push cx</b></p><p><b> push ax</b></p>
67、<p> mov cx,0080h</p><p> pp0: call delay</p><p><b> loop pp0</b></p><p><b> pop ax</b></p><p><b> pop cx</b></p>
68、;<p><b> ret</b></p><p> delay0 endp</p><p> code ends</p><p><b> end start</b></p><p><b> 四.系統(tǒng)調(diào)試與實(shí)現(xiàn)</b></p>&l
69、t;p><b> 4.1 實(shí)驗(yàn)步驟</b></p><p> ?。?) 準(zhǔn)備好PC機(jī)、實(shí)驗(yàn)箱和導(dǎo)線若干。</p><p> ?。?) 用導(dǎo)線按照事先畫好的實(shí)驗(yàn)電路圖將以上各個(gè)實(shí)驗(yàn)電路模塊連接起來,就是硬件控制的汽車信號(hào)燈控制系統(tǒng)。</p><p> ?。?) 在DOS下編寫匯編程序代碼。</p><p> (4
70、) 匯編調(diào)試、運(yùn)行。</p><p> ?。?) 記錄運(yùn)行結(jié)果,以及調(diào)試中遇到的問題。</p><p> 4.2 調(diào)試結(jié)果與分析</p><p> 4.2.1上機(jī)調(diào)試和運(yùn)行結(jié)果</p><p> 第一步:編輯源程序:即建立.ASM文件。</p><p> 第二步:匯編源程序。源文件建立后,要用匯編程序?qū)υ次募M(jìn)
71、行匯編,以便產(chǎn)生二進(jìn)制的目標(biāo)文件(.OBJ文件)。本程序用MASM.EXE編譯界面如圖10示。</p><p> 圖 10 用MASM.EXE編譯界面</p><p> 第三步;用LINK程序產(chǎn)生.EXE文件。匯編程序已產(chǎn)生出二進(jìn)制的代碼文件(.OBJ),但.OBJ文件并不是可執(zhí)行文件,還必須使用(LINK)把.OBJ文件轉(zhuǎn)換為可執(zhí)行的.EXE文件。用LINK.EXE連接為可執(zhí)行文件
72、界面如圖11所示。</p><p> 圖 11 用MASM.EXE編譯界面</p><p> 第四步;程序的調(diào)試。</p><p> 建立KDW.EXE文件后,輸入td rf.exe打開TD編輯器,查看計(jì)算機(jī)語言和寄存器狀態(tài),抄寫機(jī)器語言用于硬件調(diào)試。</p><p> 4.3、設(shè)計(jì)模擬電路仿真</p><p&g
73、t;<b> 分析:</b></p><p> 雖然實(shí)現(xiàn)了原本預(yù)期的各種控制狀態(tài),不過程序還有待優(yōu)化、改進(jìn),比如實(shí)驗(yàn)中的燈亮滅的情況延時(shí)保持一段時(shí)間后,返回到主程序中在屏幕上顯示提示語句,不過此時(shí)燈的狀態(tài)還是保持(返回前應(yīng)該將燈全熄滅)。要再手動(dòng)撥動(dòng)開關(guān)成其它狀態(tài)然后按下C鍵才能變化成另一種汽車狀態(tài),這樣操作起來比較麻煩。還有,該系統(tǒng)的使用者得去記住各個(gè)開關(guān)組合所表示的汽車狀態(tài),不夠人性
74、化,應(yīng)該進(jìn)一步改進(jìn)成用單個(gè)開關(guān)對(duì)應(yīng)一種汽車狀態(tài)的情況。</p><p> 這些系統(tǒng)目前存在的各種不足我們將在以后的學(xué)習(xí)和生活中不斷總結(jié)、修改和改進(jìn)。</p><p><b> 五.總結(jié)</b></p><p> 5.1 課程設(shè)計(jì)小結(jié)</p><p> 本次課程設(shè)計(jì)是我們小組是要設(shè)計(jì)一個(gè)汽車信號(hào)燈控制系統(tǒng),主要通過
75、8255A的A口和C口模擬汽車信號(hào)燈的亮滅閃爍情況。通過本次的設(shè)計(jì)以此來加深對(duì)微機(jī)接口技術(shù)的理解,提高了自己的動(dòng)手能力。</p><p> 首先我們小組是著手對(duì)硬件電路的設(shè)計(jì),本次課程設(shè)計(jì)主要采用了8255A接口電路。我們通過課本了解到了各個(gè)芯片的引腳及功能、工作方式、內(nèi)部結(jié)構(gòu)和控制字。對(duì)各個(gè)功能的熟悉便于了硬件電路的設(shè)計(jì)。</p><p> 然后就是對(duì)程序的設(shè)計(jì),想要設(shè)計(jì)出一個(gè)實(shí)用的
76、控制系統(tǒng)需要了解程序流程,先畫出了流程圖,然后對(duì)代碼進(jìn)行編寫,主要采用匯編語言。</p><p> 最后聯(lián)系實(shí)驗(yàn)室的老師在實(shí)際的實(shí)驗(yàn)箱上對(duì)程序,硬件電路進(jìn)行調(diào)試。在調(diào)試過程中遇到了很多問題,有些問題在同學(xué)和老師的幫助下得以解決,有些我們小組討論找出并解決問題。</p><p> 5.2 課程設(shè)計(jì)體會(huì)</p><p> 經(jīng)過這段時(shí)間的課程設(shè)計(jì),我們最終實(shí)現(xiàn)了該汽
77、車信號(hào)燈控制系統(tǒng),感到特別的欣慰,期間獲益頗多。將微機(jī)接口技術(shù)中的理論與實(shí)踐相結(jié)合起來,對(duì)芯片的功能也有了進(jìn)一步認(rèn)識(shí)理解,重溫了匯編語言的編程。在實(shí)驗(yàn)調(diào)試過程中發(fā)現(xiàn)問題,分析問題,如何解決問題的能力都有所提高,這對(duì)我們不久的將來離開學(xué)校,投入實(shí)際工作都是很有借鑒意義的。</p><p> 希望通過以后的學(xué)習(xí),不斷提升自身各方面的能力,如對(duì)專業(yè)知識(shí)的掌握程度,動(dòng)手實(shí)踐能力等。經(jīng)過此次的課程設(shè)計(jì),我們學(xué)會(huì)了合作。我
78、們要形成自己的設(shè)計(jì)思想,以便在今后的專業(yè)課形成自己的風(fēng)格。同時(shí)在多多鍛煉自己的動(dòng)手能力,以便在以后的工作能獨(dú)立完成一些設(shè)計(jì)項(xiàng)目。</p><p><b> 致謝</b></p><p> 在本次微機(jī)課程設(shè)計(jì)完成之際,首先要特別感謝我的指導(dǎo)老師張靜老師以及實(shí)驗(yàn)室的盛老師、朱老師。是他們耐心、細(xì)心地指導(dǎo)以及積極地配合、幫助,才使我們組得以最終完成本次汽車信號(hào)燈控制系統(tǒng)
79、,在此致以深深的感謝!</p><p> 這學(xué)期,我感謝學(xué)校對(duì)我的栽培,老師們用心良苦的教學(xué),使我慢慢成長。我會(huì)不斷鞭策自己,繼續(xù)努力,不會(huì)辜負(fù)學(xué)校老師和同學(xué)們對(duì)我期望,謝謝!</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 馮博琴主編.《微機(jī)原理與接口技術(shù)(第3版)》[M].北京:清華大學(xué)出版社.2011</
80、p><p> [2] 戴梅萼主編.《微型計(jì)算機(jī)技術(shù)及應(yīng)用》[M]. 北京:清華大學(xué)出版社.2008</p><p> [3] 王成耀.《匯編語言程序設(shè)計(jì)(第2版)》[M]. 北京:高等教育出版社.2006</p><p> [4] 曾樹洪.《TPC-H微機(jī)接口實(shí)驗(yàn)系統(tǒng)學(xué)生指導(dǎo)書》[M]. 惠州學(xué)院計(jì)算機(jī)科學(xué)系.2009</p><p>
81、[5] 李繼燦.《微型計(jì)算機(jī)及接口實(shí)驗(yàn)指導(dǎo)書》[M]. 北京: 清華大學(xué)出版社.2005</p><p> [6]路宏偉.《微機(jī)原理實(shí)驗(yàn)與課程設(shè)計(jì)指導(dǎo)書》[M].中國電力出版社.2006</p><p> [7] 趙文博等.《常用集成電路速查手冊(cè) 》.機(jī)械工業(yè)出版社.2010</p><p> 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)成績?cè)u(píng)定表</p><
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信號(hào)燈課程設(shè)計(jì)---簡易交通信號(hào)燈控制器
- 單片機(jī)課程設(shè)計(jì)--汽車轉(zhuǎn)向信號(hào)燈控制設(shè)計(jì)
- 交通信號(hào)燈課程設(shè)計(jì)--交通指揮信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 交通信號(hào)燈課程設(shè)計(jì)---交通信號(hào)燈系統(tǒng)設(shè)計(jì)
- 汽車信號(hào)燈控制系統(tǒng)
- 交通信號(hào)燈控制課程設(shè)計(jì)
- eda課程設(shè)計(jì)---彩色信號(hào)燈循環(huán)控制
- 交通信號(hào)燈控制課程設(shè)計(jì)
- 課程設(shè)計(jì)---交通信號(hào)燈控制
- 微機(jī)原理與接口課程設(shè)計(jì)---汽車信號(hào)燈
- 交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)
- 課程設(shè)計(jì)---交通信號(hào)燈控制設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)——信號(hào)燈
- 課程設(shè)計(jì)---交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)--- 交通信號(hào)燈系統(tǒng)設(shè)計(jì)
- 交通信號(hào)燈課程設(shè)計(jì)--交通信號(hào)燈控制電路的設(shè)計(jì)
- 交通信號(hào)燈plc控制系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)---交通信號(hào)燈plc控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)--交通信號(hào)燈控制系統(tǒng)的設(shè)計(jì)
- 課程設(shè)計(jì)---交通信號(hào)燈plc控制系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論