版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、目 錄 摘要.i 1 設(shè)計(jì)軟件基礎(chǔ)知識(shí).1 1.1 c 編譯器 keil 介紹.1 1.2 51 單片機(jī)相關(guān)知識(shí).1 1.3 adc0809 簡介 .1 2 多通道數(shù)據(jù)采集系統(tǒng)設(shè)計(jì).4 2.1 單片機(jī)電路.4 2.2 adc 采樣電路 .4 2.3 顯示模塊.5 2.4 總原理圖.6 3 軟件設(shè)計(jì).7 3.1 系統(tǒng)總流程圖.7 3.2 程序代碼.7 4 實(shí)驗(yàn)記錄與結(jié)果分析.13 4.1 仿真基本流程.13 4.2 仿真結(jié)果.14 4.3 結(jié)果分析.15 5 心得體會(huì).16 參考文獻(xiàn).17 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 1 1 設(shè)計(jì)軟件基礎(chǔ)知識(shí) 1.1 c 編譯器 keil 介紹 keil c
2、51 是美國 keil software 公司出品的 51 系列兼容單片機(jī) c 語言軟件開發(fā)系統(tǒng), 與匯編相比,c 語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易 用。keil 提供了包括 c 編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器 等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uvision)將這些部分組合在一起。 keil c51 生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易 理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級語言的優(yōu)勢。 keilsoftware 公司推出的 uvision4 是一款可用于多種 8051mcu 的集成開發(fā)環(huán)境(ide),
3、 該 ide 同時(shí)也是 pk51 及其它開發(fā)套件的一個(gè)重要組件。除增加了源代碼、功能導(dǎo)航器、 模板編輯以及改進(jìn)的搜索功能外,uvision3 還提供了一個(gè)配置向?qū)Чδ?,加速了啟?dòng)代碼 和配置文件的生成。此外其內(nèi)置的仿真器可模擬目標(biāo) mcu,包括指令集、片上外圍設(shè)備 及外部信號(hào)等。uvision3 提供邏輯分析器,可監(jiān)控基于 mcui/o 引腳和外設(shè)狀態(tài)變化下 的程序變量。uvision4 提供對多種最新的 8051 類微處理器的支持,包括 analogdevices 的 aduc83x 和 aduc84x,以及 infineon 的 xc866 等。 1.2 51 單片機(jī)相關(guān)知識(shí) 51 單片機(jī)
4、是對目前所有兼容 intel 8031 指令系統(tǒng)的單片機(jī)的統(tǒng)稱。該系列單片機(jī)的始 祖是 intel 的 8031 單片機(jī),后來隨著技術(shù)的發(fā)展,成為目前廣泛應(yīng)用的 8 為單片機(jī)之一。 單片機(jī)是在一塊芯片內(nèi)集成了 cpu、ram、rom、定時(shí)器計(jì)數(shù)器和多功能 i/o 口等計(jì) 算機(jī)所需要的基本功能部件的大規(guī)模集成電路,又稱為 mcu。51 系列單片機(jī)內(nèi)包含以下 幾個(gè)部件:一個(gè) 8 位 cpu;一個(gè)片內(nèi)振蕩器及時(shí)鐘電路;4kb 的 rom 程序存儲(chǔ)器;一 個(gè) 128b 的 ram 數(shù)據(jù)存儲(chǔ)器;尋址 64kb 外部數(shù)據(jù)存儲(chǔ)器和 64kb 外部程序存儲(chǔ)空間的 控制電路;32 條可編程的 i/o 口線;兩個(gè)
5、 16 位定時(shí)計(jì)數(shù)器;一個(gè)可編程全雙工串行口; 5 個(gè)中斷源、兩個(gè)優(yōu)先級嵌套中斷結(jié)構(gòu)。 1.3 adc0809 簡介 adc0809 是美國國家半導(dǎo)體公司生產(chǎn)的 cmos 工藝 8 通道,8 位逐次逼近式轉(zhuǎn) 換器。其內(nèi)部有一個(gè) 8 通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號(hào),只選通 8 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 2 路模擬輸入信號(hào)中的一個(gè)進(jìn)行 a/d 轉(zhuǎn)換。 (1)主要特性: 1)8 路輸入通道,8 位 a/d 轉(zhuǎn)換器,即分辨率為 8 位。 2)具有轉(zhuǎn)換起??刂贫?。 3)轉(zhuǎn)換時(shí)間為 100s(時(shí)鐘為 640khz 時(shí)),130s(時(shí)鐘為 500khz 時(shí)) 。 4)單個(gè)+5v 電源供
6、電 。 5)模擬輸入電壓范圍 0+5v,不需零點(diǎn)和滿刻度校準(zhǔn)。 6)工作溫度范圍為-40+85 攝氏度 。 7)低功耗,約 15mw。 (2)內(nèi)部結(jié)構(gòu) adc0809 是 cmos 單片型逐次逼近式 a/d 轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)如圖 1.1 所示,它由 8 路模擬開關(guān)、地址鎖存與譯碼器、比較器、8 位開關(guān)樹型 a/d 轉(zhuǎn)換器、逐次逼近寄存器、 邏輯控制和定時(shí)電路組成。 圖 1.1 adc0809 (3)工作過程 首先輸入 3 位地址,并使 ale=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通 8 路模擬輸入之一到比較器。 start 上升沿將逐次逼近寄存器復(fù)位。下降沿啟動(dòng) a/d 轉(zhuǎn)換,之后 eo
7、c 輸出信號(hào)變低,指示轉(zhuǎn)換正在進(jìn)行。直到a/d 轉(zhuǎn)換完成, eoc 變?yōu)楦唠娖剑甘?a/d 轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作中 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 3 斷申請。當(dāng) oe 輸入高電平 時(shí),輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總 線上。 轉(zhuǎn)換數(shù)據(jù)的傳送 a/d 轉(zhuǎn)換后得到的數(shù)據(jù)應(yīng)及時(shí)傳送給單片機(jī)進(jìn)行處理。數(shù)據(jù)傳 送的關(guān)鍵問題是如何確認(rèn) a/d 轉(zhuǎn)換的完成,因?yàn)橹挥写_認(rèn)完成后,才能進(jìn)行傳送。為 此可采用下述三種方式。 1)定時(shí)傳送方式 對于一種 a/d 轉(zhuǎn)換其來說,轉(zhuǎn)換時(shí)間作為一項(xiàng)技術(shù)指標(biāo)是已知的和固定的。例如 adc0809 轉(zhuǎn)換時(shí)間為 128s,相當(dāng)于 6mhz
8、 的 mcs-51 單片機(jī)共 64 個(gè)機(jī)器周期。可 據(jù)此設(shè)計(jì)一個(gè)延時(shí)子程序, a/d 轉(zhuǎn)換啟動(dòng)后即調(diào)用此子程序,延遲時(shí)間一到,轉(zhuǎn)換肯 定已經(jīng)完成了,接著就可進(jìn)行數(shù)據(jù)傳送。 2)查詢方式 a/d 轉(zhuǎn)換芯片由表明轉(zhuǎn)換完成的狀態(tài)信號(hào),例如adc0809 的 eoc 端。因此可 以用查詢方式,測試 eoc 的狀態(tài),即可確認(rèn)轉(zhuǎn)換是否完成,并接著進(jìn)行數(shù)據(jù)傳送。 3)中斷方式 把表明轉(zhuǎn)換完成的狀態(tài)信號(hào)( eoc)作為中斷請求信號(hào),以中斷方式進(jìn)行數(shù)據(jù)傳 送。 不管使用上述哪種方式,只要一旦確定轉(zhuǎn)換完成,即可通過指令進(jìn)行數(shù)據(jù)傳送。 首先送出口地址并以信號(hào)有效時(shí), oe 信號(hào)即有效,把轉(zhuǎn)換數(shù)據(jù)送上數(shù)據(jù)總線,供單
9、片機(jī)接受。 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 4 2 多通道數(shù)據(jù)采集系統(tǒng)設(shè)計(jì) 2.1 單片機(jī)電路 單片機(jī)最小系統(tǒng)如下圖所示,各個(gè)引腳都已經(jīng)標(biāo)出。 圖 2.1 單片機(jī)最小系統(tǒng) 其中,振蕩電路以及復(fù)位電路均由單片機(jī)系統(tǒng)自帶。 2.2 adc 采樣電路 由于 adc0809 是帶地址鎖存的模數(shù)轉(zhuǎn)換器件,adda、addb、addc 為模擬通道 選擇,編碼為 000111 分別選中 in0in7。ale 為地址鎖存信號(hào),其上升沿鎖存 adda、addb、addc 的信號(hào),譯碼后控制模擬開關(guān),接通八路模擬輸入中相應(yīng)的一路。 clk 為輸入時(shí)鐘,為 ad 轉(zhuǎn)換器提供轉(zhuǎn)換的時(shí)鐘信號(hào),典型工作頻率為 640kh
10、z。start 為 ad 轉(zhuǎn)換啟動(dòng)信號(hào),正脈沖啟動(dòng) addaaddc 選中的一路模擬信號(hào) 開始轉(zhuǎn)換。oe 為輸出允許信號(hào),高電平時(shí)候打開三態(tài)輸出緩存器,使轉(zhuǎn)換后的數(shù)字量從 d0d7 輸出。eoc 為轉(zhuǎn)換結(jié)束信號(hào),啟動(dòng)轉(zhuǎn)換后 eoc 變?yōu)榈碗娖?,轉(zhuǎn)換完成后 eoc 變 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 5 成高電平。 圖 2.2 adc 模數(shù)轉(zhuǎn)換 2.3 顯示模塊 以下是 1602 液晶引腳的接線圖,中間沒有接線的為數(shù)據(jù)控制端口。 1602 字符型通 常有 14 條引腳線或 16 條引腳線的 lcd,多出來的 2 條線是背光電源線 vcc(15 腳)和地 線 gnd(16 腳),其控制原理與 14
11、 腳的 lcd 完全一樣: 圖 2.3 lcd1602 模塊 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 6 2.4 總原理圖 圖 2.4 多通道數(shù)據(jù)采集總原理圖 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 7 3 軟件設(shè)計(jì) 3.1 系統(tǒng)總流程圖 此次設(shè)計(jì)的多通道數(shù)據(jù)采集系統(tǒng)設(shè)置了 8 路模擬電壓輸入通道。仿真中為了便于調(diào) 節(jié)輸入的模擬電壓,在輸入模擬信號(hào)時(shí)采用電阻分壓,最終的采樣輸入電壓便可根據(jù)測 試需要調(diào)節(jié),如下為系統(tǒng)總流程圖: 開始 初始化 adc 模數(shù)轉(zhuǎn)換 液晶顯示 結(jié)束 圖 3.1 系統(tǒng)流程圖 3.2 程序代碼 #include #define uchar unsigned char #define uin
12、t unsigned int /*定義 lcd1602 接口信息 */ sbit lcdrs=p30;/數(shù)據(jù)命令選擇位 sbit lcden=p31;/使能位 sbit lcdrw=p32; /lcd1602 數(shù)據(jù)線接 p0 口 /*定義 adc0808 接口信息 */ 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 8 sbit ada=p20; sbit adb=p21; sbit adc=p22; sbit eoc=p23; sbit clk=p24; sbit start=p25; sbit oe=p26; /*定義數(shù)據(jù)*/ uchar string1=xuzhiqiang ad sp; /初始化數(shù)據(jù)
13、 uchar string2=chan from 1 to 8; uchar tab=0.0 0.0 0.0 0.0 ;/存放 ad 采集數(shù)據(jù) uchar tab1=0.0 0.0 0.0 0.0 ; uchar num,getdata=0; uint temp=0; /*延時(shí)函數(shù)*/ void delay(uchar t) uchar x,y; for(x=t;x0;x-) for(y=110;y0;y-); void delayl(uchar ltime) uchar i; for(i=ltime;i0;i-) delay(255); /*寫命令函數(shù)*/ void write_com(uc
14、har com) 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 9 lcdrs=0; p0=com; delay(10); lcden=1; delay(10); lcden=0; /*寫數(shù)據(jù)函數(shù)*/ void write_data(uchar date) lcdrs=1; p0=date; delay(10); lcden=1; delay(10); lcden=0; void disp(uchar h,l,uchar *p) write_com(0 x80+h*0 x40+l); while(*p!=0) write_data(*p); p+; /*初始化函數(shù)*/ void lcdinit() 武漢理工
15、大學(xué)能力擴(kuò)展訓(xùn)練說明書 10 lcdrw=0; delay(5); lcden=0;/使能位置低電平 write_com(0 x38); write_com(0 x0c); write_com(0 x06); write_com(0 x01); write_com(0 x80); disp(0,0, disp(1,0, delayl(20); void timeinit() tmod=0 x10;/定時(shí)器 1 工作于方式 1,16 位不重裝初值 th1=(65536-200)/256; /定時(shí) 200us(5khz) tl1=(65536-200)%256; ea=1; et1=1; tr1=
16、1; void adtr(bit adda,addb,addc,uchar channel) start=0; oe=0; start=1; start=0;/a/d 轉(zhuǎn)換啟動(dòng)信號(hào),正脈沖啟動(dòng)選中的模擬信號(hào)開始轉(zhuǎn)換 ada=adda; 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 11 adb=addb; adc=addc; delay(5); while(eoc=0);/啟動(dòng)轉(zhuǎn)換后 eoc 變?yōu)?l,轉(zhuǎn)換結(jié)束后變?yōu)?h oe=1; getdata=p1; temp=getdata*1.0/255*50; oe=0; if(channel=4) channel=channel-4; tab14*channe
17、l=temp/10+0 x30; tab14*channel+2=temp%10+0 x30; void main() lcdinit(); timeinit(); while(1) adtr(0,0,0,0); delay(5); 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 12 adtr(0,0,1,1); delay(5); adtr(0,1,0,2); delay(5); adtr(0,1,1,3); delay(5); adtr(1,0,0,4); delay(5); adtr(1,0,1,5); delay(5); adtr(1,1,0,6); delay(5); adtr(1,1,1,7);
18、 delay(5); disp(0,0,tab); disp(1,0,tab1); void t1(void) interrupt 3 using 0 th1=(65536-200)/256; tl1=(65536-200)%256; clk=clk; 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 13 4 實(shí)驗(yàn)記錄與結(jié)果分析 4.1 仿真基本流程 在 keil 軟件中編寫好 c 語言程序,編譯生成.hex 文件。 圖 4.1 keil 軟件圖 在 protues 軟件中畫好電路元件圖,并將連線接好,見圖 2.4。 添加仿真文件。單擊右鍵 at89c52,點(diǎn)擊屬性編輯,出現(xiàn)文件瀏覽對話框,加入對應(yīng) 的 ne
19、ngliyuozhan.hex 文件,點(diǎn)擊確定,見下圖 4.2。 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 14 圖 4.2 單片機(jī)屬性編輯框 點(diǎn)擊仿真按鍵,lcd1602 便可顯示 8 路電壓采集信號(hào),見圖 4.3 及圖 4.4。 4.2 仿真結(jié)果 圖 4.3 電壓設(shè)置值 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 15 圖 4.4 采集顯示值 如圖 14 所示,8 路模擬通道電壓值分別設(shè)置為 0、0.5v、1.0v、1.5v、2.0v、3.0v、4.0v、5.0v。經(jīng)過系統(tǒng)處理,lcd1602 顯示的采集 值分別為 0、0.5v、1.0v、1.5v、2.0v、3.0v、4.0v、5.0v。系統(tǒng)誤差為 0。 改變
20、 8 路輸入信號(hào)的電壓值,數(shù)據(jù)可及時(shí)在 lcd1602 上顯示。 4.3 結(jié)果分析 通過用 protues 軟件的仿真發(fā)現(xiàn)此次設(shè)計(jì)的系統(tǒng)原理圖能夠?qū)崿F(xiàn)電壓的正確測量,而 且電壓的誤差較小,1602 液晶屏能夠正確顯示出 8 路電壓測量結(jié)果。整個(gè)作品能較好的 實(shí)現(xiàn)基本功能和擴(kuò)展功能。 武漢理工大學(xué)能力擴(kuò)展訓(xùn)練說明書 16 5 心得體會(huì) 通過與同學(xué)的討論與認(rèn)真計(jì)算設(shè)計(jì)分析所完成的,課程設(shè)計(jì)的任務(wù)是設(shè)計(jì)一個(gè)多通道 數(shù)據(jù)采集系統(tǒng)。需要我們綜合運(yùn)用單片機(jī)等課程的知識(shí),通過查閱資料、方案論證與選 定;設(shè)計(jì)和選取電路和元器件;分析指標(biāo)及討論,完成設(shè)計(jì)任務(wù)。 在這次課程設(shè)計(jì)中,我學(xué)會(huì)了怎樣去根據(jù)課題的要求去設(shè)計(jì)電路和調(diào)試電路。動(dòng)手能 力得到很大的提高。從中我發(fā)現(xiàn)自己并不能很好的熟練去使用我所學(xué)到的高頻電路知識(shí)。 在以后學(xué)習(xí)中我要加強(qiáng)對使用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年安徽省安全員《A證》考試題庫及答案
- 2025年陜西省安全員-A證考試題庫附答案
- DB45T-木材加工企業(yè)安全規(guī)范編制說明
- 學(xué)前教育管理學(xué) 課件
- 單位管理制度展示匯編人員管理
- 半導(dǎo)體行業(yè)分析:AI需求推動(dòng)運(yùn)力持續(xù)增長互聯(lián)方案重要性顯著提升
- 2022年河北省張家口市第二十中學(xué)中考模擬英語試題(原卷版)
- 《本胃癌腹腔鏡》課件
- 2025年中國糖果市場深度評估及投資方向研究報(bào)告
- 電影投資行業(yè)競爭格局及投資價(jià)值分析報(bào)告
- 中小學(xué)心理健康教育課程設(shè)計(jì)與實(shí)踐智慧樹知到答案2024年浙江師范大學(xué)
- 30萬噸合成氨50萬噸尿素裝置拆除項(xiàng)目施工組織設(shè)計(jì)
- 動(dòng)物遺傳學(xué)智慧樹知到期末考試答案章節(jié)答案2024年西南大學(xué)
- 2024年7月國家開放大學(xué)??啤缎姓M織學(xué)》期末紙質(zhì)考試試題及答案
- 城市生命線安全…監(jiān)測預(yù)警指揮平臺(tái)建設(shè)方案
- 六年級數(shù)學(xué)《圓柱的體積》教案(一等獎(jiǎng))
- 呼吸科醫(yī)院感染危險(xiǎn)因素評估
- 2024CSCO惡性腫瘤患者營養(yǎng)治療指南解讀
- 常見化學(xué)專業(yè)詞匯英文翻譯
- 內(nèi)科護(hù)理學(xué)智慧樹知到期末考試答案章節(jié)答案2024年荊門職業(yè)學(xué)院
- 趣味可拓學(xué)智慧樹知到期末考試答案章節(jié)答案2024年廣東工業(yè)大學(xué)
評論
0/150
提交評論