版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 課 程 設(shè) 計</p><p> ?。ㄎC原理及應(yīng)用A)</p><p> 班 級 09網(wǎng)絡(luò)1班 </p><p> 姓 名 </p><p> 學(xué) 號 </p><p> 指導(dǎo)教師
2、 </p><p> 二○一一 年 七 月 八 日</p><p> 課程設(shè)計任務(wù)書及成績評定</p><p> 課題名稱 壓力測控系統(tǒng)的設(shè)計 </p><p> I、題目的目的和要求:</p><p> 設(shè)計一個對壓力傳感器的信號進行檢測并在LED數(shù)碼顯示器上
3、顯示壓力值的系統(tǒng),當(dāng)壓力低于30pa時,黃燈閃爍,閃爍周期為1秒。當(dāng)壓力高于150pa時,紅燈閃爍。LED的顯示內(nèi)容為P=XXX。X為測試值。</p><p> II、設(shè)計進度及完成情況</p><p> III、主要參考文獻及資料</p><p> 《微型計算機原理及應(yīng)用》 清華大學(xué)出版社 鄭學(xué)堅 周斌</p><p> 《微型計算
4、機技術(shù)及應(yīng)用》清華大學(xué)出版社 史嘉權(quán)</p><p> 《微機原理與接口技術(shù)基礎(chǔ)與應(yīng)用》海洋出版社 鄧振杰</p><p> 《微機原理與接口技術(shù)實驗及課程設(shè)計》西南交通大學(xué)出版社 楊斌 </p><p> 《單片機原理及接口技術(shù)》 清華大學(xué)出版社 梅麗鳳 王艷秋</p><p> 學(xué)科部主任 (簽字)</p&g
5、t;<p><b> Ⅵ、成績評定:</b></p><p> 設(shè)計成績: (教師填寫)</p><p> 指導(dǎo)老師: (簽字)</p><p> 二○一一 年 七 月 八 日</p><p><b> 一、設(shè)計要求&l
6、t;/b></p><p> 設(shè)計一個對壓力傳感器的信號進行檢測并在LED數(shù)碼顯示器上顯示壓力值的系統(tǒng),當(dāng)壓力低于30pa時,黃燈閃爍,閃爍周期為1秒。當(dāng)壓力高于150pa時,紅燈閃爍。LED的顯示內(nèi)容為P=XXX。X為測試值。</p><p><b> 二.設(shè)計思想</b></p><p> 壓力測試系統(tǒng)的設(shè)計,必然要牽涉到壓力的
7、感應(yīng)與轉(zhuǎn)化,所以必須要有壓力傳感與A/D轉(zhuǎn)換器。將自然中的模擬量轉(zhuǎn)化為電壓信號,再轉(zhuǎn)化位數(shù)字信號進行處理。一個小型的微機系統(tǒng),必須要有8086cpu來進行整體的控制,將其通過8255與A/D傳感器進行連接。這就是這個系統(tǒng)的主要框架。</p><p> 而具體的應(yīng)用框架則是在主要的框架上添加。要當(dāng)壓力低于30pa時,黃燈閃爍。當(dāng)壓力高于150pa時,紅燈閃爍。則應(yīng)添加8255。模塊。通過編程來控制黃燈與紅燈的亮滅
8、情況,考慮到要進行比較,所以我用了兩個比較器進行數(shù)據(jù)的比較。同時,由于燈要閃爍,閃爍周期要一秒,所以我們考慮到還要加一個8253芯片去控制。但根據(jù)個人情況,這個模塊我省略了。而至于LED顯示,且顯示內(nèi)容為三位。我只在程序之中體現(xiàn),而在硬件圖中沒有去體現(xiàn)。</p><p><b> 三.系統(tǒng)設(shè)計框圖</b></p><p><b> 四.程序流程圖<
9、/b></p><p><b> 五.源程序</b></p><p><b> ;宏定義</b></p><p> addr_8253 equ 208h</p><p> a_8253 equ addr_8253 </p><
10、p> b_8253 equ addr_8253+1h</p><p> ctrl_8253 equ addr_8253+3h</p><p> addr_adc0809 equ 210h </p><p> addr_8255 equ 200h</p><
11、;p> a_8255 equ addr_8255</p><p> b_8255 equ addr_8255+1h</p><p> c_8255 equ addr_8255+2h</p><p> ctrl_8255 equ addr_8255+3h&l
12、t;/p><p> ;******************************************</p><p> codesegment</p><p> assume cs:code,ds:code</p><p><b> start:</b></p><p><b&g
13、t; movax,cs</b></p><p><b> movds,ax</b></p><p> ;******************************************</p><p> ;8253產(chǎn)生方形波,周期為1s,通道0</p><p> movdx,ctrl_82
14、53;設(shè)置8253控制口 </p><p> moval,3eh;控制字00111110 00表示計時器0;11表示先讀寫低八位,后寫讀高八位; X11表示工作在模式3; 0表示二進制計數(shù)</p><p> outdx,al ;寫控制字</p><p> movdx,a_8253;設(shè)置計數(shù)初值(計數(shù)器0)</p
15、><p> movax,1000d</p><p> outdx,al;先寫低八位,后寫高八位</p><p><b> moval,ah</b></p><p><b> outdx,al</b></p><p> ;8253產(chǎn)生方形波,周期為1s,通道1
16、</p><p> movdx,ctrl_8253;設(shè)置8253控制口 </p><p> moval,7eh;控制字01111110 01表示計時器1;11表示先讀寫低八位,后寫讀高八位; X11表示工作在模式3; 0表示二進制計數(shù)</p><p> outdx,al ;寫控制字</p><p&g
17、t; movdx,b_8253;設(shè)置計數(shù)初值(計數(shù)器1)</p><p> movax,500d</p><p> outdx,al ;先寫低八位,后寫高八位</p><p><b> moval,ah</b></p><p><b> outdx,al</b&g
18、t;</p><p> ;******************************************</p><p><b> ;啟動A/D</b></p><p> movdx,addr_adc0809 ;ADC0809 </p><p> outdx,al </
19、p><p> ;******************************************</p><p><b> disp:</b></p><p><b> ;8255初始化</b></p><p> ;A口做為段碼輸出,B口做為位碼輸出,C口低2位做為有色燈的輸出</p&
20、gt;<p> movdx,ctrl_8255;8255初始化 </p><p> moval,80h;控制字 10000000 1表示方式控制字; 00端口A方式0; 0輸出; 0PC7-PC4 輸出; 0定義端口B為0 輸出;0 PC0-PC3 輸出 </p><p> outdx,al ;寫控制字</p>
21、<p><b> repeat:</b></p><p> ;初始化地址指針和位碼</p><p> leabx,TABLE;段碼表首址送bx Load effect address——取有效地址,也就是取偏移地址</p><p> leadi,BUFDA;指向緩沖區(qū)首地址 Load effect a
22、ddress——取有效地址,也就是取偏移地址</p><p> movcl,0dfh ;11011111b 位碼,共陰極,便于從第六位開始向低位依次顯示</p><p> next: ;顯示子程序</p><p><b> ;輸出位碼</b></p><p>
23、; movdx,b_8255;8255B口,輸出位碼</p><p> moval,cl</p><p> outdx,al</p><p> moval,[di];從緩沖區(qū)取段碼</p><p><b> xlat</b></p><p> movdx,a_8
24、255;輸出段碼到8255A口</p><p><b> outdx,al</b></p><p><b> ;延遲</b></p><p><b> pushcx</b></p><p> movcx,30h</p><p><b
25、> delay:</b></p><p> loopdelay</p><p><b> popcx</b></p><p><b> ;關(guān)LED顯示</b></p><p> movdx,a_8255</p><p><b>
26、moval,0</b></p><p><b> outdx,al</b></p><p> cmpcl,11111110b;已經(jīng)顯示最低位</p><p> jzconvey;顯示完成</p><p> incdi;指向下一個段碼</p><p> ro
27、rcl,1;顯示向低一位轉(zhuǎn)移</p><p><b> jmpnext</b></p><p><b> convey:</b></p><p> ;延時,方便LED顯示結(jié)果及有色燈的閃爍</p><p> cmpcount,0;count在后面定義</p>&l
28、t;p> jzadcall;延時時間到,開始下一次的數(shù)據(jù)采樣</p><p> deccount;延時時間未到</p><p> jmprepeat;******************jmp convey</p><p> ;******************************************</p>
29、<p> ;ADC0809接收模擬信號并轉(zhuǎn)化為數(shù)字信號</p><p><b> adcall:</b></p><p><b> callad</b></p><p> movcount,0ffh;設(shè)置下一次數(shù)據(jù)采集的時間間隔</p><p> jmprepeat<
30、;/p><p> TABLE:;段碼表</p><p><b> db3fh;0</b></p><p><b> db06h;1</b></p><p><b> db5bh;2</b></p><p><b> db4
31、fh;3</b></p><p><b> db66h;4</b></p><p><b> db6dh;5</b></p><p><b> db7dh;6</b></p><p><b> db07h;7</b></p
32、><p><b> db7fh;8</b></p><p><b> db6fh;9</b></p><p><b> db73h;P</b></p><p><b> db48h;=</b></p><p> db
33、00h;NULL</p><p> BUFDA:;顯示緩沖區(qū)</p><p> db10,11,12,12,12,0;初始顯示P= 0 </p><p> countdw0ffh</p><p> ;******************************************</p><
34、p><b> adproc</b></p><p> ;讀取AD轉(zhuǎn)換結(jié)果并啟動AD</p><p><b> pushax</b></p><p><b> pushbx</b></p><p><b> pushcx</b><
35、;/p><p><b> pushdx</b></p><p><b> pushdi</b></p><p> movdx,addr_adc0809 ;通道0</p><p><b> ;讀結(jié)果</b></p><p> inal,dx
36、;數(shù)字量存放在al中</p><p><b> ;啟動A/D</b></p><p> outdx,al;啟動下一次的ad轉(zhuǎn)換</p><p><b> pushax</b></p><p> ;******************************************&
37、lt;/p><p> ;根據(jù)數(shù)字量的值判斷有色燈是否要亮</p><p> cmpal,30d</p><p> jbyellow;小于30 小于則轉(zhuǎn)移到目標(biāo)指令執(zhí)行</p><p> cmpal,150d</p><p> jared;大于150 大于則轉(zhuǎn)移到目標(biāo)指令執(zhí)行&l
38、t;/p><p> movdx,ctrl_8255 ;8255控制口</p><p><b> pushax</b></p><p> mov al,00h;介于30和150之間,PC0輸出低電平</p><p><b> outdx,al</b></p><
39、;p><b> popax</b></p><p> jmpred_yellow</p><p> ;******************************************</p><p> red:movdx,c_8255 ;控制口</p><p> mov al,02h;
40、8255 PC1輸出高電平</p><p><b> outdx,al</b></p><p> jmpred_yellow</p><p> yellow:movdx,c_8255 ;控制口</p><p> moval,01h ;8255 PC0輸出高電平</p>
41、<p> out dx,al</p><p> red_yellow:</p><p><b> popax</b></p><p><b> movah,0</b></p><p> ;******************************************
42、</p><p> ;將數(shù)字量轉(zhuǎn)換成十進制,方便顯示</p><p> callbinidec</p><p><b> popdi</b></p><p><b> popdx</b></p><p><b> popcx</b>
43、</p><p><b> popbx</b></p><p><b> popax</b></p><p><b> ret</b></p><p><b> adendp</b></p><p> ;******
44、************************************</p><p> binidecproc</p><p> ;將存放于AL中的數(shù)轉(zhuǎn)換為十進制數(shù)存放到BUFDA中</p><p><b> pushax</b></p><p> movah,0;ax=al</p>
45、<p><b> movbl,10</b></p><p> movcx,4;</p><p> leadi,BUFDA+5;指向顯示緩沖區(qū)末尾</p><p> binidec_next:</p><p> divbl;al:商,ah:余數(shù)</p><p>
46、 mov[di],ah</p><p><b> decdi</b></p><p><b> deccx</b></p><p><b> movah,0</b></p><p><b> cmpal,0</b></p>
47、<p> jnzbinidec_next</p><p> binidec_null:</p><p> movbyte ptr [di],12</p><p><b> decdi</b></p><p> loopbinidec_null</p><p><
48、b> popax</b></p><p><b> ret</b></p><p> binidecendp</p><p> ;******************************************</p><p><b> codeends</b>
49、</p><p> endstart </p><p><b> 六、設(shè)計心得</b></p><p> 經(jīng)過一周的微機課程設(shè)計,讓我對微機這一門課程有了系統(tǒng)的疏導(dǎo)。在學(xué)習(xí)這門課程是我們只是獨立的講解一些芯片的結(jié)構(gòu)及用法,而通過微機課程設(shè)計,在我們在構(gòu)建一個小型的微機系統(tǒng)時,而真正的去關(guān)注這些芯片的連接。這不但要求我們對各個芯片要有一定
50、的了解與認(rèn)知。而且要懂得怎么融會貫通。這是我在這次微機實習(xí)中體會最深的。其二,通過微機課程設(shè)計,培養(yǎng)了我們想問題的思維方式。以前我們想問題時總是將一些問題孤立出來去思考,而這次實習(xí),他引導(dǎo)我們以多維的方式去解析整個問題。在課程設(shè)計中,我們不但要理解好系統(tǒng)的結(jié)構(gòu),進而畫出硬件連接圖、而且要寫出程序流程圖及源程序就,這些雖然是不同的表現(xiàn)形式,但他們必須用統(tǒng)一的思想去認(rèn)識。其三,通過對壓力測試系統(tǒng)的設(shè)計,讓我們更加了解了CPU8086、ADC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機原理課程設(shè)計---壓力測量系統(tǒng)的設(shè)計
- 微機原理壓力測控系統(tǒng)課程設(shè)計
- 微機原理壓力測控系統(tǒng)課程設(shè)計--壓力測控系統(tǒng)設(shè)計
- 微機原理課程設(shè)計--在線ph值的測量
- 微機原理課程設(shè)計
- 微機原理課程設(shè)計--電機調(diào)速系統(tǒng)設(shè)計
- 微機原理課程設(shè)計--- 溫度測控系統(tǒng)
- 微機原理課程設(shè)計----電壓采集系統(tǒng)
- 微機原理課程設(shè)計--溫度采集系統(tǒng)
- 微機原理課程設(shè)計報告
- 微機原理課程設(shè)計.rar
- 微機原理課程設(shè)計報告
- 2017微機原理課程設(shè)計
- 微機原理課程設(shè)計.rar
- 微機原理課程設(shè)計.rar
- 微機原理課程設(shè)計.rar
- 微機原理課程設(shè)計報告
- 《微機原理》課程設(shè)計報告
- 微機原理課程設(shè)計報告
- 微機原理課程設(shè)計課程設(shè)計----微機內(nèi)存擴充卡
評論
0/150
提交評論