版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 本設(shè)計(jì)電阻測(cè)量是利用A/D轉(zhuǎn)換原理,將被測(cè)模擬量轉(zhuǎn)換成數(shù)字量,并用數(shù)字方式顯示測(cè)量結(jié)果的電子測(cè)量?jī)x表。通常測(cè)量電阻都采用大規(guī)模的A/D轉(zhuǎn)換集成電路,測(cè)量精度高,讀數(shù)方便,在體積、重量、耗電、穩(wěn)定性及可靠性等方面性能指標(biāo)均明顯優(yōu)于指針式萬(wàn)用表。其中,A/D轉(zhuǎn)換器將輸入的模擬量轉(zhuǎn)換成數(shù)字量,邏輯控制電路產(chǎn)生控制信號(hào),按規(guī)定的時(shí)序
2、將A/D轉(zhuǎn)換器中各組模擬開關(guān)接通或斷開,保證A/D轉(zhuǎn)換正常進(jìn)行。A/D轉(zhuǎn)換結(jié)果通過計(jì)數(shù)譯碼電路變換成BCD碼,最后驅(qū)動(dòng)顯示器顯示相應(yīng)的數(shù)值。本系統(tǒng)以單片機(jī)AT89C52為系統(tǒng)的控制核心,結(jié)合A/D轉(zhuǎn)換芯片ADC0809設(shè)計(jì)一個(gè)電阻測(cè)量表,能夠測(cè)量一定數(shù)值之間的電阻值,通過四位數(shù)碼顯示。具有讀數(shù)據(jù)準(zhǔn)確,測(cè)量方便的特點(diǎn)。</p><p> 關(guān)鍵詞:?jiǎn)纹瑱C(jī)(AT89C52); 電壓;A/D轉(zhuǎn)換;ADC0809<
3、;/p><p><b> 目錄</b></p><p><b> 設(shè)計(jì)要求1</b></p><p> 1、方案論證與對(duì)比2</p><p><b> 1.1方案一1</b></p><p><b> 1.2方案二3</b&
4、gt;</p><p> 1.3方案對(duì)比與比較3</p><p> 2、系統(tǒng)硬件電路的設(shè)計(jì)3</p><p> 2.1 振蕩電路模塊3</p><p> 2.2 A/D轉(zhuǎn)換電路模塊4</p><p> 2.2.1主要性能4</p><p> 2.2.2 ADC0809芯片
5、的組成原理4</p><p> 2.2.3 ADC0809引腳功能5</p><p> 2.3 主控芯片AT89C52模塊6</p><p> 2.3.1主要功能特性6</p><p> 2.3.2 主要引腳功能7</p><p> 2.4 顯示控制電路的設(shè)計(jì)及原理9</p><
6、;p><b> 3、程序設(shè)計(jì)11</b></p><p> 3.1 初始化程序11</p><p><b> 3.2主程序11</b></p><p> 3.3顯示子程序11</p><p> 3.4 A/D轉(zhuǎn)換測(cè)量子程序12</p><p> 4
7、、調(diào)試及性能分析13</p><p> 4.1調(diào)試與測(cè)試13</p><p> 4.2性能分析13</p><p><b> 5、元件清單14</b></p><p> 6、總結(jié)與思考及致謝14</p><p><b> 參考文獻(xiàn)15</b></p
8、><p><b> 附一:原理圖16</b></p><p><b> 附二:程序17</b></p><p><b> 設(shè)計(jì)要求</b></p><p> 電阻測(cè)量(需要簡(jiǎn)單的外圍檢測(cè)電路,將電阻轉(zhuǎn)換為電壓)</p><p> 測(cè)量100,1
9、k,4.7k,10k,20k的電阻阻值,由數(shù)碼管顯示。</p><p><b> 測(cè)試:誤差10%。</b></p><p><b> 1、方案論證與對(duì)比</b></p><p><b> 1.1方案一 </b></p><p> 利用單穩(wěn)或電容充放電規(guī)律等,可以把
10、被測(cè)電阻量的大小轉(zhuǎn)換成脈沖的寬窄,即脈沖的寬度Tx與Rx成正比。只要把此脈沖和頻率固定不變的方波(以下稱為時(shí)鐘脈沖)相與,便可以得到計(jì)數(shù)脈沖,將它送給數(shù)字顯示器。如果時(shí)鐘脈沖的頻率等參數(shù)合適,便可實(shí)現(xiàn)測(cè)量電阻。計(jì)數(shù)控制電路輸出的脈沖寬度Tx應(yīng)與Rx成正比,其電路原理圖及具體555單穩(wěn)態(tài)觸發(fā)器的構(gòu)成及仿真如圖1所示。</p><p> 用555構(gòu)成的單穩(wěn)態(tài)電路在正常工作條件下輸出脈沖的寬度Tx與Rx的函數(shù)關(guān)系是:
11、</p><p> 所產(chǎn)生的時(shí)間誤差可能達(dá)到百分之十五,再加上其他原因產(chǎn)生的誤差,測(cè)量是的時(shí)間延遲太大。</p><p> 圖1 方案一原理圖</p><p><b> 1.2方案二</b></p><p> 用ADC0809電阻測(cè)量,以一個(gè)1K的電阻作為基準(zhǔn)電阻。和被測(cè)電阻進(jìn)行分壓,分壓比例得出電阻比例。&
12、lt;/p><p><b> =</b></p><p> 用ACD0809測(cè)量電阻時(shí)間誤差為%10以下,分辨率高,輸出能與TTL電平兼容。其原理圖如圖2所示。</p><p> 圖2 方案二原理圖</p><p> 1.3方案對(duì)比與比較</p><p> 由于課程設(shè)計(jì)的要求是電阻測(cè)量需要
13、簡(jiǎn)單的外圍檢測(cè)電路,將電阻轉(zhuǎn)換為電壓,測(cè)量100,1k,4.7k,10k,20k的電阻阻值,由數(shù)碼管顯示。測(cè)試:誤差10%。通過比較以上兩個(gè)方案,可知方案二相對(duì)來說比較適合。所以選用方案二作為實(shí)驗(yàn)方案。</p><p> 2、系統(tǒng)硬件電路的設(shè)計(jì)</p><p> 2.1 振蕩電路模塊</p><p> 振蕩電路通過這兩個(gè)引腳外并接石英晶體振蕩器和兩只電容(電
14、容和一般取33pF),這樣就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。為單片機(jī)提供時(shí)鐘信號(hào)。如圖3所示。</p><p><b> 圖3. 振蕩電路</b></p><p> 2.2 A/D轉(zhuǎn)換電路模塊</p><p> ADC0809是采用逐次逼近式原理的A/D轉(zhuǎn)換器。</p><p> ADC0809的工作過程是:首先輸入3
15、位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動(dòng) A/D轉(zhuǎn)換,之后EOC輸出信號(hào)變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作中斷申請(qǐng)。當(dāng)OE輸入高電平時(shí),輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上,9電路圖如圖4所示。</p><p> 圖4
16、 A/D轉(zhuǎn)換電路原理圖</p><p><b> 2.2.1主要性能</b></p><p> 1分辨率為8位二進(jìn)制數(shù)。</p><p> 2模擬輸入電壓范圍0V—5V,對(duì)應(yīng)A/D轉(zhuǎn)換值為00H—FFH。</p><p> 3每路A/D轉(zhuǎn)換完成時(shí)間為100µs。</p><p>
17、 4允許輸入4路模擬電壓,通過具有鎖存功能的4路模擬開關(guān),可以分時(shí)進(jìn)行4路A/D轉(zhuǎn)換。</p><p> 5工作頻率為500kHz,輸出與TTL電平兼容。</p><p> 2.2.2 ADC0809芯片的組成原理</p><p> 具體設(shè)計(jì)要求如圖5所示,它是由地址鎖存器、4路模擬開關(guān)、8位逐次A/D轉(zhuǎn)換器和三態(tài)鎖存輸出緩沖器構(gòu)成。由3位地址輸入線ADDR
18、A、ADDRB、ADDRC決定4路模擬輸入中的1路進(jìn)8位A/D轉(zhuǎn)換器,A/D轉(zhuǎn)換值進(jìn)入三態(tài)鎖存輸出緩沖器暫存,在CPU發(fā)來輸出允許控制信號(hào)OE后,三態(tài)門打開,經(jīng)DB7—DB0進(jìn)入CPU總線,完成一次A/D轉(zhuǎn)換全過程。</p><p> 圖5 A/D轉(zhuǎn)換電路原路圖</p><p> 2.2.3 ADC0809引腳功能</p><p> ADC0809采用28引腳
19、的封裝,雙列直插式。A/D轉(zhuǎn)換由集成電路ADC0809完成。ADC0809具有8路模擬輸入端口,地址線(23— 25腳—即C,B,A,)可決定對(duì)哪一路模擬輸入作A/D轉(zhuǎn)換。22腳為地址鎖存控制(ALE),當(dāng)輸入為高電平時(shí),對(duì)地址信號(hào)進(jìn)行鎖存。6腳為測(cè)試控制(START),當(dāng)輸入一個(gè)2us寬高電平脈沖時(shí),就開始A/D轉(zhuǎn)換。7腳為A/D轉(zhuǎn)換結(jié)束標(biāo)志(EOC),當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),7腳輸出高電平。9腳為A/D轉(zhuǎn)換數(shù)據(jù)輸出允許控制(OE),當(dāng)O
20、E腳為高電平時(shí),A/D轉(zhuǎn)換數(shù)據(jù)從該端口輸出。10腳為ADC0809的時(shí)鐘輸入端(CLOCK),利用單片機(jī)30腳的六分頻晶振頻率再通過14024二分頻得到1MHz時(shí)鐘。單片機(jī)的P1、P3.0—P3.3端口作為四位LED數(shù)碼管顯示控制。P3.5端口用作單路顯示/循環(huán)顯示轉(zhuǎn)換按鈕,P3.6端口用作單路顯示時(shí)選擇通道。P0端口作A/D轉(zhuǎn)換數(shù)據(jù)讀入用,P2端口用作ADC0809的A/D轉(zhuǎn)換控制。</p><p> 2.3
21、 主控芯片AT89C52模塊</p><p> AT89C52是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS—51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大的AT89C52單片機(jī)可為您提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場(chǎng)合。
22、</p><p> AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口。3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲(chǔ)器可有效地降低開發(fā)成本。</p><p> 如圖6所示為AT89C52管腳圖。
23、</p><p> 圖6 AT89C52管腳圖</p><p> 2.3.1主要功能特性</p><p> ·與MCS—51產(chǎn)品指令和引腳完全兼容</p><p> ·8k字節(jié)可重擦寫Flash閃速存儲(chǔ)器</p><p> ·1000次擦寫周期 </p><
24、p> ·全靜態(tài)操作:0Hz—24MHz</p><p> ·三級(jí)加密程序存儲(chǔ)器</p><p> ·32個(gè)可編程I/O口線</p><p> ·低功耗空閑和掉電模式 </p><p> ·3個(gè)16位定時(shí)/計(jì)數(shù)器</p><p> ·可編程串行
25、UART通道</p><p> 2.3.2 主要引腳功能</p><p><b> VCC : 電源</b></p><p><b> GND: 地</b></p><p> P0 口:P0 口是一組8 位漏極開路型雙向I/O 口,也即地址/數(shù)據(jù)總線復(fù)用口。</p><p
26、> P1口:P1口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P1端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(P1.1/T2EX)。 P2口:P2口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/
27、O口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P2端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR)時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在fla
28、sh編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。</p><p> P1口和P2口的第二功能如下表1所示。</p><p> 表1 P0和P1口的第二功能</p><p> P3口:P3口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P3口輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P3端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為
29、輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89C52特殊功能(第二功能)使用,在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。具體功能如表2所示:</p><p> 表2P3口的第二功能</p><p> RST: 復(fù)位輸入。晶振工作時(shí),RST腳持續(xù)2個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位??撮T狗計(jì)時(shí)完成后,RST腳輸出96個(gè)晶振周期的高電平。
30、特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無(wú)效。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效。</p><p> ALE/PROG:地址鎖存控制信號(hào)(ALE)是訪問外部程序存儲(chǔ)器時(shí),鎖存低8位地址的輸出脈沖。在flash編程時(shí),此引腳(PROG)也用作編程輸入脈沖。在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),AL
31、E脈沖將會(huì)跳過。如果需要,通過將地址為8EH的SFR的第0位置 “1”,ALE操作將無(wú)效。這一位置 “1”,ALE僅在執(zhí)行MOVX或MOVC指令時(shí)有效。否則,ALE將被微弱拉高。這個(gè)ALE使能標(biāo)志位(地址為8EH的SFR的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無(wú)效。</p><p> PSEN:外部程序存儲(chǔ)器選通信號(hào)(PSEN)是外部程序存儲(chǔ)器選通信號(hào)。當(dāng)AT89C52從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),PSE
32、N在每個(gè)機(jī)器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN將不被激活。</p><p> EA/VPP:訪問外部程序存儲(chǔ)器控制信號(hào)。為使能從0000H到FFFFH的外部程序存儲(chǔ)器讀取指令,EA必須接GND。為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。在flash編程期間,EA也接收12伏VPP 電壓。</p><p> XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。</
33、p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> 2.4 顯示控制電路的設(shè)計(jì)及原理</p><p> 顯示子程序采用動(dòng)態(tài)掃描法實(shí)現(xiàn)4位數(shù)碼管的數(shù)值顯示。測(cè)量所得的A/D轉(zhuǎn)換數(shù)據(jù)放70H—77H內(nèi)存單元中,測(cè)量數(shù)據(jù)在顯示時(shí)須經(jīng)過轉(zhuǎn)換成為十進(jìn)制BCD碼放在78H—7BH單元中,其中7B存放通道標(biāo)志數(shù)。寄存器R3用作8路循環(huán)控制,R0用作顯示數(shù)據(jù)地
34、址指針。</p><p> 本系統(tǒng)顯示部分采用4位數(shù)碼管動(dòng)態(tài)掃描顯示。</p><p> 動(dòng)態(tài)掃描顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一。其接口電路是把所有顯示器的8個(gè)筆劃段a-h同名端連在一起,而每一個(gè)顯示器的公共極COM 是各自獨(dú)立地受I/O線控制。CPU向字段輸出口送出字形碼時(shí),所有顯示器接收到相同的字形碼,但究竟是那個(gè)顯示器亮,則取決于COM端,而這一端是由 I/O控
35、制的,所以我們就可以自行決定何時(shí)顯示哪一位了。而所謂動(dòng)態(tài)掃描就是指我們采用分時(shí)的方法,輪流控制各個(gè)顯示器的COM端,使各個(gè)數(shù)碼管輪流點(diǎn)亮。本系統(tǒng)采用4位共陰極數(shù)碼管,COM端接接P20—P23端,8個(gè)筆劃段a-h分別按順序接P07—P00,輪流給P20—P23口低電平,使各個(gè)數(shù)碼管輪流點(diǎn)亮。</p><p> 在輪流點(diǎn)亮掃描過程中,每位顯示器的點(diǎn)亮?xí)r間是極為短暫的(約1ms),但由于人的視覺暫留現(xiàn)象及發(fā)光二極管
36、的余輝效應(yīng),盡管實(shí)際上各位顯示器并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感。</p><p> 顯示控制電路由圖7的8255芯片和圖8的數(shù)碼管顯示電路兩部分組成</p><p><b> 圖78255芯片</b></p><p> 圖8 數(shù)碼管顯示電路</p><p>
37、<b> 3、程序設(shè)計(jì)</b></p><p><b> 3.1 初始化程序</b></p><p> void Init()</p><p><b> {</b></p><p><b> ST = 0;</b></p><
38、p><b> OE = 0;</b></p><p> a8255_CON=0x81;</p><p><b> PB=0xff;</b></p><p><b> PA=0xff;</b></p><p><b> }</b></p
39、><p><b> 3.2主程序</b></p><p> void main()</p><p><b> {</b></p><p> uchar I=0,J=0;</p><p> uint RRR=0;</p><p><b>
40、; Init();</b></p><p> while (1) </p><p><b> { </b></p><p> Get_Resistance();</p><p> If(RRR==0)RRR=R_T; //計(jì)算平均值</p><p>
41、;<b> else </b></p><p> if(J==30){R=RRR;RRR=0;J=0;} //J為 30個(gè)平均值 《可改》</p><p><b> else J++;</b></p><p> Display();</p><p><b> }<
42、/b></p><p><b> }</b></p><p><b> 3.3顯示子程序</b></p><p> void Display()</p><p><b> {</b></p><p><b> uchar A;&
43、lt;/b></p><p> uint B=10000;</p><p> for(A=0x02;A<=0X40;A<<=1)</p><p><b> {</b></p><p> if(R/B) </p><p> {if(A!=0X02)De
44、lay(150);</p><p> PB=0XFF; </p><p><b> PA=0XFF;</b></p><p> PB=LED_CODE[(R%(B*10))/(B)];</p><p><b> PA=~A;</b></p><p><
45、b> }B/=10;</b></p><p><b> }</b></p><p><b> }</b></p><p> 3.4 A/D轉(zhuǎn)換測(cè)量子程序</p><p> uchar Ad_Cover()</p><p><b> {
46、 </b></p><p> uchar AD_DATA;</p><p><b> ST = 0;</b></p><p> ST = 1; //啟動(dòng)AD轉(zhuǎn)換</p><p><b> ST = 0;</b></p><p> while (EOC
47、==0)CLK = ~CLK;</p><p><b> OE = 1;</b></p><p> AD_DATA = P0;</p><p><b> OE = 0;</b></p><p> return AD_DATA;</p><p><b> }
48、</b></p><p><b> 4、系統(tǒng)調(diào)試與分析</b></p><p><b> 4.1 硬件調(diào)試</b></p><p> 硬件調(diào)試時(shí)可以檢查印制板和外圍電路是否有斷路或短路問題,在檢查無(wú)誤的情況下,通過外圍電路接入一個(gè)被測(cè)電阻,檢查數(shù)碼管顯示是否正常,若不正常,用萬(wàn)用表檢查出電路的問題所在
49、,并糾正電路的焊接問題。</p><p> 為了測(cè)量的精準(zhǔn)度,用萬(wàn)用表選擇的基準(zhǔn)電阻,盡量使基準(zhǔn)電阻接近,減少測(cè)量的誤差。</p><p><b> 4.2 軟件調(diào)試</b></p><p> 將用keil編譯產(chǎn)生的HEX文件下載到單片機(jī)開發(fā)板中,通過外圍電路接入一個(gè)已知的被測(cè)電阻,看數(shù)碼管上的顯示數(shù)值是否接近已知的電阻值,若不對(duì),則反復(fù)
50、調(diào)試程序,直到正確為止。</p><p><b> 4.3 性能分析</b></p><p> 1.誤差W=100%,如表3所示。</p><p><b> 2.誤差分析</b></p><p> AD的分辨率只有八位,分辨率小,所以測(cè)量小電阻的時(shí)候誤差小,隨著測(cè)量電阻的變大誤差變大。<
51、;/p><p><b> 表3 誤差分析</b></p><p><b> 5、元件清單</b></p><p> 6、總結(jié)與思考及致謝</p><p> 這次單片機(jī)課程設(shè)計(jì)意義非同一般,把我從單深入的理論編程到硬件軟件綜合實(shí)現(xiàn)一個(gè)使用的電路。通過這學(xué)期的單片機(jī)的學(xué)習(xí),知道了單片機(jī)在實(shí)際應(yīng)用中占
52、據(jù)很重要的作用,也了解單片機(jī)本身的功能,用編程控制;也了解了單片機(jī)的一些擴(kuò)展功能。通過這次設(shè)計(jì),我更深入地了解到單片機(jī)的使用原理和功能。</p><p> 為期兩周的設(shè)計(jì)中,我看到很多同學(xué)都很努力,很認(rèn)真,我也不敢懈怠。雖說兩周的時(shí)間有點(diǎn)倉(cāng)促,但老師和同學(xué)們夜以繼日在解決問題,我做電阻測(cè)量的設(shè)計(jì)中也遇到些許問題,但通過他人的指點(diǎn),并查閱很多有價(jià)值的書籍,我從中認(rèn)識(shí)了不少。也增強(qiáng)了自己發(fā)現(xiàn)問題解決問題的能力。還有
53、在編程的時(shí)候要仔細(xì),要實(shí)現(xiàn)一個(gè)完整的功能就要考慮全面,在測(cè)試程序的時(shí)候要善于發(fā)現(xiàn)錯(cuò)誤,而且可能是一些小問題,比如說把立即數(shù)和地址混用,這是很常見的。</p><p> 兩周的設(shè)計(jì)完滿結(jié)束了,經(jīng)過自己的努力和同學(xué)的幫忙終于有了成果,特別離不開指導(dǎo)老師xx的悉心教導(dǎo),我受益匪淺,相信他的工作作風(fēng)和知識(shí)筑xx是我們學(xué)習(xí)榜樣,給我很大的啟迪。感謝這些老師不畏辛勞,熱心精心的指導(dǎo)。在這里向他們說聲謝謝,你們辛苦了。<
54、;/p><p><b> 參考文獻(xiàn)</b></p><p> [1] 張?chǎng)? 《單片微機(jī)原理與應(yīng)用》.[M] 北京.電子工業(yè)出版社. 2008</p><p> [2] 樓然苗.李光飛. 《單片機(jī)課程設(shè)計(jì)指導(dǎo)》. [M]北京.航空航天大學(xué)出版社. 2007</p><p> [3] 長(zhǎng)洪潤(rùn).劉秀英. 《單片機(jī)應(yīng)用設(shè)計(jì)
55、200例(上、下)》. [M] 北京.航空航天大學(xué)出版社.2006</p><p> [4] 張毅剛.《 新編MCS—51單片機(jī)應(yīng)用設(shè)計(jì)(第3版)》.[M]哈爾濱工業(yè)大學(xué)出版社.2008</p><p> [5] 馬靜.《單片機(jī)原理與應(yīng)用》. [M] 實(shí)踐教學(xué)指導(dǎo)書中國(guó)計(jì)量出版社. 2003</p><p><b> 附一:原理圖</b>
56、</p><p><b> 附二:程序</b></p><p> #include <reg52.h> </p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> s
57、bit ST = P2 ^ 7;</p><p> sbit EOC = P3 ^ 4;</p><p> sbit OE = P2 ^ 3;</p><p> sbit CLK = P2 ^ 0;</p><p> xdata uchar PA _at_ 0xD1FF, PB _at_ 0xD2FF, PC _at_ 0xD5FF
58、, a8255_CON _at_ 0xD7FF; </p><p> uint R=0,R_T;</p><p> uchar code LED_CODE[]={0xA0, 0xBB, 0x62, 0x2A, 0x39, 0x2C, 0x24, </p><p> 0xBA, 0x20, 0x28}; </p><p>
59、; void Init()</p><p><b> {</b></p><p><b> ST = 0;</b></p><p><b> OE = 0;</b></p><p> a8255_CON=0x81;</p><p><b&
60、gt; PB=0xff;</b></p><p><b> PA=0xff;</b></p><p><b> }</b></p><p> uchar Ad_Cover()</p><p><b> { </b></p><p>
61、 uchar AD_DATA;</p><p><b> ST = 0;</b></p><p> ST = 1; </p><p><b> ST = 0;</b></p><p> while (EOC==0)CLK = ~CLK;</p><p><
62、;b> OE = 1;</b></p><p> AD_DATA = P0;</p><p><b> OE = 0;</b></p><p> return AD_DATA;</p><p><b> } </b></p><p>
63、 void Get_Resistance()</p><p> {float c;</p><p> uchar TEMP;</p><p> TEMP=Ad_Cover();</p><p> c=(float)(256-TEMP);</p><p> c = 1000.000*(c/(float)TEM
64、P);</p><p> R_T=(unsigned int)c;</p><p><b> }</b></p><p> void Delay(uint CNT)</p><p><b> {</b></p><p> while(CNT--);</p>
65、;<p><b> }</b></p><p> void Display()</p><p><b> {</b></p><p><b> uchar A;</b></p><p> uint B=10000;</p><p>
66、; for(A=0x02;A<=0X40;A<<=1)</p><p><b> {</b></p><p> if(R/B) </p><p> {if(A!=0X02)Delay(150); </p><p> PB=0XFF; </p><
67、;p><b> PA=0XFF;</b></p><p> PB=LED_CODE[(R%(B*10))/(B)];</p><p><b> PA=~A;</b></p><p><b> }B/=10;</b></p><p><b> }<
68、;/b></p><p><b> }</b></p><p> void main()</p><p><b> {</b></p><p> uchar I=0,J=0;</p><p> uint RRR=0;</p><p>
69、<b> Init();</b></p><p> while (1) </p><p><b> { </b></p><p> Get_Resistance();</p><p> if(RRR==0)RRR=R_T;</p><p><b&g
70、t; else </b></p><p> if(J==30){R=RRR;RRR=0;J=0;} </p><p><b> else J++;</b></p><p> Display();</p><p><b> }</b></p><p&g
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電阻數(shù)字測(cè)量?jī)x課程設(shè)計(jì)說明書
- 傳感器課程設(shè)計(jì)--基于熱敏電阻的溫度測(cè)量
- 箱式電阻爐課程設(shè)計(jì)
- 箱式電阻爐課程設(shè)計(jì)
- 箱式電阻爐課程設(shè)計(jì)
- 箱式電阻爐課程設(shè)計(jì)
- 箱式電阻爐課程設(shè)計(jì)
- 礦山測(cè)量課程設(shè)計(jì)
- 礦山測(cè)量課程設(shè)計(jì)
- 礦山測(cè)量課程設(shè)計(jì)
- 工程測(cè)量課程設(shè)計(jì)
- 工程測(cè)量課程設(shè)計(jì)
- 控制測(cè)量課程設(shè)計(jì)
- 礦上測(cè)量課程設(shè)計(jì)
- 溫度測(cè)量課程設(shè)計(jì)
- 光敏電阻傳感器課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--轉(zhuǎn)速測(cè)量課程設(shè)計(jì)
- 純電阻升降壓斬波器課程設(shè)計(jì)
- 礦山測(cè)量課程設(shè)計(jì) (2)
- gps高度測(cè)量課程設(shè)計(jì)--高度測(cè)量
評(píng)論
0/150
提交評(píng)論