版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、微處理器與接口技術(shù)課程設(shè)計(jì)報(bào)告多量程電壓表設(shè)計(jì)專業(yè):電子信息工程班級(jí):1412姓 名:邇瑋學(xué)號(hào):142001062142016年 7月1課程設(shè)計(jì)目的1.1鞏固和加深對(duì)微處理器原理和接口技術(shù)知識(shí)的理解;1. 2培養(yǎng)根據(jù)課題需要選學(xué)參考書籍、查閱手冊(cè)和文獻(xiàn)資料的能力;1.3學(xué)會(huì)方案論證的比較方法,拓寬知識(shí),初步掌握工程設(shè)計(jì)的基本方法;14掌握常用儀器、儀表的正確使用方法,學(xué)會(huì)軟、硬件的設(shè)計(jì)和調(diào)試方法;1. 5能按課程設(shè)計(jì)的要求編寫課程設(shè)計(jì)報(bào)告,能止確反映設(shè)計(jì)和實(shí)驗(yàn)成果, 能用計(jì)算機(jī)繪制電路圖和流程圖。2. 課程設(shè)計(jì)要求2. 1使用adc0832進(jìn)行模數(shù)轉(zhuǎn)換;2.2通過串口讀取測(cè)量到的電壓值;2.3
2、數(shù)碼管顯示測(cè)量到的電壓值;2.4可測(cè)多個(gè)量程的電壓。3. 硬件設(shè)計(jì)3. 1設(shè)計(jì)思想該系統(tǒng)的硬件設(shè)計(jì)思路如下:首先,通過adc0832對(duì)外部電壓進(jìn)行模數(shù)轉(zhuǎn)換,然后通 過時(shí)鐘線、數(shù)據(jù)線和控制使能線與單片機(jī)相連。而后,單片機(jī)通過八根數(shù)據(jù)線與四個(gè)控制線 與四位數(shù)碼管進(jìn)行連接,川于顯示測(cè)量到的電壓。另外,單片機(jī)通過tx給外部發(fā)送數(shù)據(jù), pc端可以通過usbttl模塊玄接接收到電壓值。最后,關(guān)于多量程設(shè)計(jì),量程方面我采 用了電阻分壓方式,這樣就可以實(shí)現(xiàn)人量程的測(cè)量,量程選擇方面我使用了開關(guān)與繼電器實(shí) 現(xiàn)。3. 2主要元器件介紹3. 2. 1 adc0832adc0832是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的一種8位分
3、辨率、雙通道a/d轉(zhuǎn)換芯片。芯片 引腳圖如圖1所示。其引腳分別為cs (片選使能)、cho (模擬輸入通道0)、ch0 (模擬輸 入通道1)、gnd (供電及參考電壓低電位)、di (數(shù)據(jù)信號(hào)輸入)、do (數(shù)據(jù)信號(hào)輸出)、 clk (時(shí)鐘信號(hào)輸入)以及vcc/vref (電源及參考電壓輸入)其時(shí)序邏輯圖如圖2所示。 由圖2可知一般悄況下adc0832與單片機(jī)連接應(yīng)使川四根控制信號(hào)線,分別為cs、do、 di和clk。但由圖2可知do與di其屮一個(gè)作用時(shí),另一個(gè)則不作用,因此在進(jìn)行硬件 電路設(shè)計(jì)時(shí)可以將do和di連接在同一個(gè)i/o 口上。adc0832為8位分辨率a/d轉(zhuǎn)換芯片,其最髙分辨可達(dá)
4、256級(jí),可以適應(yīng)一般的模擬量(低梢度)轉(zhuǎn)換要求。adc0832 2-channel muxdual-ln-line package (n)cs 18vcc(%ef)cho 27 clkch1 36 dognd 45 di圖1adc0832 timingclock (clk)12345678jmmuwuuirrrrmmnjirl910111213141516181920output datachip select (c5)address muxodd/signoata in (01)sgl/5iftri-statems8 first datadata out (do)»:5lsb f
5、irst datatri-state7 (msb!7<wsb)(lsb|mux settling 一 time3. 3. 2 stc89c52rcstc89c52rc單片機(jī)是宏晶科技推出的超強(qiáng)抗干擾、高速、低功耗單片機(jī),指令代碼完 全兼容傳統(tǒng)8051單片機(jī)。其最高頻率時(shí)鐘為80 mhz, flash存儲(chǔ)器為8kb, ram為512 bit,e2prom為2kb,可反復(fù)擦寫編程。工作溫度為-40°c+85°c,內(nèi)置看門狗電路,內(nèi)部電源 供電系統(tǒng)、時(shí)鐘電路和復(fù)位電路都經(jīng)過特殊處理?!?時(shí)鐘/機(jī)器周期”和“12時(shí)鐘/機(jī)器周 期”可在isp編程時(shí)反復(fù)設(shè)置。其dpip封裝引腳圖
6、如圖3所示。實(shí)物圖如圖4所示。t2/p1.0vcc140t2ex/p1.1939p0.0/ad0p1- 2338p0 1/ad1p1. 3437p0.2/ad2p1.4536p0. 3/ad3p1.5635p0 4/ad1p1.6734p0 5/ad5p1. 7833p0.6/ad6rst932p0.7/ad7rxd/p3. 01031eatxd/p3. 11130ale/progint0/p3.21229psenint1/p3.31328p2.7/a15t0/p3.41427p2.6/a14t1/p3.51526p2.5/a13wr/p3. 61625p2.4/a12rd/p3. 71724
7、p2. 3/auxtal21823p2.2/a10xtal11999 1p2.1/a9vss2021p2 0/a8圖33.2.3四位共陽極數(shù)碼管圖5所示即為該系統(tǒng)所采用的共陽極數(shù)碼管。該數(shù)碼管共有12個(gè)引腳,其中8個(gè)為數(shù)據(jù)引腳,4個(gè)為控制引腳。數(shù)據(jù)引腳作用為向數(shù)碼管輸入要顯示的數(shù)據(jù),控制引腳作用為分 別控制四個(gè)數(shù)碼的亮和滅。圖6所示及為其內(nèi)部電路圖。3.3原理圖及功能電路介紹整體原理圖如圖7所示。該電路可以分為三個(gè)部分,分別為:模數(shù)轉(zhuǎn)換部分、顯示部分 和數(shù)據(jù)處理部分。圖73. 3. 1顯示部分圖8圖8所示即為顯示部分電路圖。該部分實(shí)現(xiàn)的功能是顯示測(cè)量到的樹值。數(shù)碼管的八個(gè) 的數(shù)據(jù)引腳引岀接到單
8、片機(jī)的p0上,用于接受顯示數(shù)據(jù)。四個(gè)控制引腳分別接在四個(gè)pnp 管的集電極上,然后pnp管的棊極連接單片機(jī)的四個(gè)i/o 口,發(fā)射極接vcc。這里控制引 腳不肓接接單片機(jī)上的原因是:?jiǎn)纹瑱C(jī)i/o無法提供人電流,不能作為共陽極數(shù)碼管的控制 信號(hào),因此需要接三極管方人電流。3. 2. 2模數(shù)轉(zhuǎn)換部分圖9圖9所示即為模數(shù)轉(zhuǎn)換部分電路圖。該部分的主要作川是測(cè)量電壓值并以數(shù)字量傳輸?shù)?單片機(jī)屮。該部分可以分為兩個(gè)子部分,分別為測(cè)量部分和最程控制部分。測(cè)最部分由 adc0832組成,它通過三根線將cs、clk、do與di與單片機(jī)相連。另外,其ch0接到 量程控制部分讀取電壓。量程控制部分主要山繼電器、開關(guān)和
9、電阻組成。開關(guān)連接一個(gè)i/o 口和繼電器。繼電器選擇接入ch0的信號(hào),當(dāng)為導(dǎo)通時(shí),量程為05v,外部無其他電路, 當(dāng)為不導(dǎo)通時(shí),量程為050v,外部接一個(gè)電阻分壓電路。3. 2. 3數(shù)據(jù)處理部分小央數(shù)據(jù)處理部分由89c52rc構(gòu)成。該部分將上述兩部分整合并控制。mcu的p0 口 接數(shù)碼管的數(shù)據(jù)線;p1.0p1.3接數(shù)碼管控制部分(三極管的基極);p1.4接量程控制部分的 開關(guān),作用是讀取當(dāng)前量程選擇情況;p2.0p2.2分別接adc0832的cs、clk和do/di; tx接外部通信設(shè)備,接受當(dāng)前的電壓測(cè)量值。4. 軟件設(shè)計(jì)4. 1設(shè)計(jì)思想單片機(jī)啟動(dòng)后,先初始化串口,并定義緩存變量,然后進(jìn)行w
10、h訂0死循環(huán)。在死循環(huán)中, 先調(diào)用m)轉(zhuǎn)換函數(shù)讀一次“電壓值”,但這時(shí)得到的并不是真正的電壓值,所以需要進(jìn)行精度修正,將范圍0255的范圍修正為0500。再判斷當(dāng)詢量程選擇情況,根據(jù)它來判斷顯示 與串口數(shù)據(jù)的小數(shù)點(diǎn)位置,最示將數(shù)據(jù)顯示并通過串口發(fā)送。4. 2軟件流程圖圖104. 3源程序/52系列單片機(jī)頭文件定義/c語言頭文件定義include <reg52. h>includesldio. h>j f 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 t i/ / *弓 i 腳定義 * *f f $丫 j "丫丫 j "丫丫 j "丫丫 j
11、"丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j/adc0832控制!定義/cs:片選使能信號(hào)輸出端/clk:時(shí)鐘信號(hào)輸出端/dt/do信號(hào)輸出端(由于d0與d1在通信時(shí)不會(huì)同時(shí)冇效,sbitcs 二p2"0;sbitclk=p2'1;sbitdto=p2"2;所以共用一個(gè)to 口)/數(shù)碼管控制引腳定義(數(shù)據(jù)引腳共8個(gè),使用p0)sbits_1 二p0;sbits 2=pri;sbits_3=p2;sbits 4二p3;
12、第一個(gè)數(shù)碼管陽極控制端 第二個(gè)數(shù)碼管陽極控制端 /第三個(gè)數(shù)碼管陽極控制端 第四個(gè)數(shù)碼管陽極控制端/用于鼠程的選擇以及繼電器的控制/就程與繼電器控制引腳定義 sbitkey二p4;f f $丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j/ / *;量定 義 *f f %vunsigned int table = oxco, 0xf9, 0xa4, oxbo, 0x99, 0
13、x92, 0x82, 0xf8, 0x80, 0x90;/0、9在共陽數(shù)碼管中所對(duì)應(yīng)的十六進(jìn)制值f ff $ 丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j "丫丫 j/*延時(shí) looous*f f %vvoid delay_1000us()/簡(jiǎn)單延時(shí)函數(shù),約延時(shí)looousunsigned int adc0832()unsigned int i,buff;cs=1;clk=o;cs=
14、o;dio=1;clk=1;clk=o;dio=1;clk=1;clk=o;dto=0;clk=1;clk=o;dio=1;for(i=0;i<8;i+)clk=1;clk=o;buff«=l;buff|=d10;unsigned char i=1000; while (i-);.9“.9“.9“.9“.9“.9“.9“.9“.9“.9“.9“ f tw tw tw tw tw tw tw tw tw tw tw tw tw/*adc0832 讀取程序*f f"q、x * % "q、夕(、"q、夕(、"q、夕(、"q、夕(、&q
15、uot;q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、此處編程參考adc0832英文于-冊(cè)/緩存數(shù)據(jù)定義一個(gè)讀取周期開始/cs置一,轉(zhuǎn)換開始為第一個(gè)時(shí)鐘信號(hào)做準(zhǔn)備芯片使能/給發(fā)送d1發(fā)送起始電平第一個(gè)時(shí)鐘開始/第一個(gè)時(shí)鐘結(jié)束給di發(fā)送高電平,選擇單通道模式第二個(gè)時(shí)鐘開始第二個(gè)時(shí)鐘結(jié)束給di發(fā)送低電平,選擇通道0/第三個(gè)時(shí)鐘開始/第三個(gè)時(shí)鐘結(jié)束/d0置一,準(zhǔn)備讀収數(shù)據(jù)讀取八位數(shù)據(jù),山高到低讀取/時(shí)鐘佶號(hào)拉髙/下降沿有效,進(jìn)行讀取數(shù)據(jù)將下面儲(chǔ)心的低位數(shù)據(jù)向右移將輸出
16、數(shù)據(jù)d10通過或運(yùn)算儲(chǔ)存在buff最低位cs二 1;return buff;測(cè)量完畢,將cs拉高,片選無效/*宙i i初始化程序*j f 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 尢 9999void uartinit(void)scon=0x50;tmod二0x20;tll=0xfd;thl=0xfd;et1=o;tr1=1;/串行口初始化/8位數(shù)據(jù),可變波特率設(shè)定定時(shí)器1為16位自動(dòng)重裝方式/設(shè)定定時(shí)初值/設(shè)定定時(shí)初值禁止定時(shí)器1中斷/啟動(dòng)定時(shí)器1 ,“ ,“ ,“ ,“ ,“ ,“ ,“ ,“ ,“ ,“ ,“f ftw tw tw tw tw tw tw tw tw tw tw
17、tw tw/* 工程序 *f f"q、x * % "q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、夕(、"q、void mainounsi gned int buff, ge, shi, bai;uarttnit ();vh訂c(l)buff=adc0832()*100; buff=buff/51; bai=buff/100;shi=(buff%100)/10;ge二
18、buff%10;if(key=l)s_l=0;potable0; delay_1000us();p0=0xff;s 1=1;/緩存數(shù)據(jù)定義/串口初始化/死循壞主函數(shù)程序開始讀取ad的值,并進(jìn)行修正梢度修正,轉(zhuǎn)換為000、500范用保存buff的百位/保存buff的十位/保存buff的個(gè)位數(shù)碼管顯示程序如果key為1,量程設(shè)為05v/選通第一位數(shù)碼管,顯示第一位數(shù)/p0 口輸出8位數(shù)據(jù)短暫延時(shí)數(shù)碼管消隱關(guān)閉第一位數(shù)碼管s 2=0;/選通第二位數(shù)碼管,顯示第二位數(shù)pofable bai&0x7f;/p0 口輸出8位數(shù)據(jù),因?yàn)榱砍虨闉?5v,所以第一位后顯示小數(shù)點(diǎn)while(!tt);ti=
19、o;elses_1=o;potable0; deltiy_1000us ();po=oxff;s_1二1;s_2=0;po=tablebcii; delciy_1000us (); po=oxff;s_2=l;p0二oxff;s_2=l;數(shù)碼管消隱關(guān)閉第二位數(shù)碼管s_3=0;/選通第三位數(shù)碼管,顯示第三位數(shù)po=tableshi;/p0 口輸出8位數(shù)據(jù)delay_1000us ();短暫延時(shí)po=oxff;數(shù)碼管消隱s_3=l;關(guān)閉第三位數(shù)碼管s_4=0;選通第四位數(shù)碼管,顯示第四位數(shù)po=tablege;/p0 口輸出8位數(shù)據(jù)delay looous ();短暫延時(shí)po=oxff;數(shù)碼管消隱
20、s_4=l;/關(guān)閉第四位數(shù)碼管/串口發(fā)送程序ti二1;/ti置一,開始發(fā)送數(shù)據(jù)printf ("%d. %d%dn,z, bai, shi, ge);將buff/100后發(fā)出/直到數(shù)據(jù)發(fā)送完畢數(shù)據(jù)發(fā)送完畢后,ti置o/如果key為1,量程設(shè)為050v/選通第一位數(shù)碼管,顯示第一位數(shù)/p0 口輸出8位數(shù)據(jù)短暫延時(shí)數(shù)碼管消隱關(guān)閉第一位數(shù)碼管 選通第二位數(shù)碼管,顯示第二位數(shù)/p0 口輸出8位數(shù)據(jù)短暫延時(shí)數(shù)碼管消隱關(guān)閉第二位數(shù)碼管s 3二 0;/選通第三位數(shù)碼管,顯示第三位數(shù)p0二tableshi&0x7f;/p0 口輸出8位數(shù)據(jù),因?yàn)榱砍虨闉?、50v,所以第二位后顯示小數(shù)點(diǎn)del
21、ay looous();po=oxff;s 3=1;s_4二0;po=tablege;短暫延時(shí)/數(shù)碼管消隱關(guān)閉第三位數(shù)碼管 /選通第四位數(shù)碼管,顯示第四位數(shù)/p0 口輸出8位數(shù)據(jù)delay_1000us();po=oxff;s 4=1;ti=1;短暫延時(shí)數(shù)碼管消隱關(guān)閉第四位數(shù)碼管串口發(fā)送程序/ti置一,開始發(fā)送數(shù)據(jù) printf ("%d%d. %dn", bai, shi, ge);/將buff/100后發(fā)出 while(!tt);玄到數(shù)據(jù)發(fā)送完畢tt=o;數(shù)據(jù)發(fā)送完畢后,ti置o5. 調(diào)試運(yùn)行5.1小量程測(cè)量結(jié)果圖11為小量程電壓的仿真測(cè)量結(jié)果。左下方電壓表為adc0832輸入的電壓,為4. 32v。而圖中數(shù)碼管讀到的值為4. 33v,串口發(fā)送的數(shù)據(jù)也為4.33v。因此,可以得出結(jié)論,在小量程的仿真測(cè)試中,電壓測(cè)量誤差非常小,對(duì)忽略不計(jì)。ascdefg dp331234-xtal2po.o/adop0.1/ad1p0.2/ad2p0.3/ad3p0.4/ad4p0.5/ad5 po.adg po.
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版法律服務(wù)企業(yè)法務(wù)專員職位勞動(dòng)合同3篇
- 二零二五版房屋買賣合同范本下載涉及裝修及家具家電條款3篇
- 二零二五年時(shí)尚服飾品牌區(qū)域獨(dú)家代理銷售合同2篇
- 二零二五年度航空貨運(yùn)大客戶承運(yùn)合同范本3篇
- 二零二五年建筑材料出口銷售與綠色認(rèn)證合同3篇
- 二零二五版grc構(gòu)件生產(chǎn)、安裝與裝配式建筑推廣實(shí)施合同3篇
- 二零二五版技術(shù)開發(fā)與成果轉(zhuǎn)化合同3篇
- 二零二五年建筑材料運(yùn)輸及安裝服務(wù)合同6篇
- 二零二五年度家具安裝與室內(nèi)空氣凈化合同2篇
- 二零二五版展覽館場(chǎng)地租賃合同范本(含展覽策劃服務(wù))3篇
- 公路工程施工現(xiàn)場(chǎng)安全檢查手冊(cè)
- 公司組織架構(gòu)圖(可編輯模版)
- 1汽輪機(jī)跳閘事故演練
- 陜西省銅川市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會(huì)明細(xì)
- 禮品(禮金)上交登記臺(tái)賬
- 北師大版七年級(jí)數(shù)學(xué)上冊(cè)教案(全冊(cè)完整版)教學(xué)設(shè)計(jì)含教學(xué)反思
- 2023高中物理步步高大一輪 第五章 第1講 萬有引力定律及應(yīng)用
- 青少年軟件編程(Scratch)練習(xí)題及答案
- 浙江省公務(wù)員考試面試真題答案及解析精選
- 系統(tǒng)性紅斑狼瘡-第九版內(nèi)科學(xué)
- 全統(tǒng)定額工程量計(jì)算規(guī)則1994
評(píng)論
0/150
提交評(píng)論