

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