單片機(jī)課程設(shè)計(jì)-電阻量測(cè)量_第1頁(yè)
單片機(jī)課程設(shè)計(jì)-電阻量測(cè)量_第2頁(yè)
單片機(jī)課程設(shè)計(jì)-電阻量測(cè)量_第3頁(yè)
單片機(jī)課程設(shè)計(jì)-電阻量測(cè)量_第4頁(yè)
單片機(jī)課程設(shè)計(jì)-電阻量測(cè)量_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、農(nóng)業(yè)裝備工程學(xué)院課程設(shè)計(jì)說(shuō)明書(shū)電阻量測(cè)量摘 要本設(shè)計(jì)基于單片機(jī)和AD轉(zhuǎn)換器實(shí)現(xiàn)電阻的測(cè)量。采用ADC0808,實(shí)現(xiàn)由模擬電壓轉(zhuǎn)換到數(shù)字信號(hào),通過(guò)單片機(jī)系統(tǒng)AT89C51處理后,由LCD顯示器顯示被測(cè)量電阻的阻值。測(cè)量范圍為15K,精度大于98%。其中穩(wěn)壓電源采用的是三端集成穩(wěn)壓器7805構(gòu)成的正5V直流電源,對(duì)單片機(jī)、A/D轉(zhuǎn)換器、LCD顯示器供電。本設(shè)計(jì)從硬件和軟件兩部分入手,其中硬件分為數(shù)據(jù)采集、模數(shù)轉(zhuǎn)換、數(shù)據(jù)顯示三個(gè)模塊。數(shù)據(jù)采集通過(guò)我們對(duì)兩方案的分析與對(duì)比,決定采用橋式法測(cè)量被測(cè)電阻電壓,A/D轉(zhuǎn)換器使用常見(jiàn)的仿真器件ADC0808,數(shù)據(jù)顯示使用LCD1602。硬件設(shè)計(jì)完成后,用Kei

2、l編程,編寫(xiě)每個(gè)模塊的程序。接著使用Proteus對(duì)設(shè)計(jì)的硬件進(jìn)行仿真,記錄數(shù)據(jù)并進(jìn)行了分析,得出誤差小,測(cè)量范圍大的結(jié)論。最后使用Altium Designer繪制仿真電路的原理圖和PCB板。 關(guān)鍵詞:AT89C51單片機(jī),Proteus仿真,數(shù)據(jù)處理1目 錄第一章 緒論1第二章 總體設(shè)計(jì)2§2.1總體設(shè)計(jì)思路2第三章 硬件設(shè)計(jì)5§3.1直流穩(wěn)壓電源電路的設(shè)計(jì)5§3.2電壓測(cè)量的設(shè)計(jì)5§3.3模數(shù)ADC轉(zhuǎn)換的設(shè)計(jì)7§3.4 液晶顯示電路的設(shè)計(jì)7第四章 軟件設(shè)計(jì)11§4.1 主程序工作流程圖11§4.2 程序設(shè)計(jì)11第五章

3、軟件仿真12§5.1 Protues仿真圖12§5.2 Altium Designer原理圖14第六章 設(shè)計(jì)結(jié)論16參考文獻(xiàn)17附錄19第一章 緒論隨著現(xiàn)代科技的飛速發(fā)展,生產(chǎn)生活中人們對(duì)工具的要求越來(lái)越高。其中對(duì)我們?nèi)粘K褂玫碾娮璞淼木群托阅芤惨笤絹?lái)越高,并且電阻表完全可以通過(guò)現(xiàn)代科技來(lái)實(shí)現(xiàn)智能化,測(cè)量不同阻值的電阻。測(cè)量不同阻值的電阻時(shí),可以更換檔位。并且同時(shí)顯示出阻值和量程。目前市面上測(cè)量電子元器件參數(shù)R的儀表種類(lèi)較多,方法和優(yōu)缺點(diǎn)也各有不同。一般的測(cè)量方法都存在計(jì)算復(fù)雜,不易實(shí)現(xiàn)自動(dòng)測(cè)量而且很難實(shí)現(xiàn)智能化等缺點(diǎn)。將電阻參數(shù)轉(zhuǎn)化為電壓形式,并通過(guò)模數(shù)轉(zhuǎn)換,這樣處

4、理一方面使測(cè)量精度提高了,另一方面也便于使儀表實(shí)現(xiàn)智能化,并能很好的實(shí)現(xiàn)各個(gè)要求。本設(shè)計(jì)從硬件和軟件兩部分入手,其中硬件分為數(shù)據(jù)采集、模數(shù)轉(zhuǎn)換、數(shù)據(jù)顯示三個(gè)模塊。數(shù)據(jù)采集我們采用橋式法測(cè)量被測(cè)電阻電壓,A/D轉(zhuǎn)換器使用常見(jiàn)的仿真器件ADC0808,數(shù)據(jù)顯示使用LCD1602。硬件設(shè)計(jì)完成后用Keil編程,具體程序在正文當(dāng)中,最后對(duì)設(shè)計(jì)的電路進(jìn)行仿真,記錄顯示數(shù)據(jù)和實(shí)際數(shù)據(jù),并進(jìn)行數(shù)據(jù)對(duì)比,得出結(jié)論。1第二章 總體設(shè)計(jì)§2.1總體設(shè)計(jì)思路本設(shè)計(jì)包括硬件和軟件設(shè)計(jì)兩個(gè)部分。模塊劃分為電壓測(cè)量(數(shù)據(jù)采集)、模數(shù)轉(zhuǎn)換、阻值顯示等子模塊。電路結(jié)構(gòu)可劃分為:電壓測(cè)量,電壓轉(zhuǎn)換電阻,阻值顯示及相關(guān)

5、的控制管理軟件組成。用戶(hù)終端完成信息采集、處理、數(shù)據(jù)傳送、顯示等功能。從設(shè)計(jì)的要求來(lái)分析該設(shè)計(jì)須包含如下結(jié)構(gòu):電壓測(cè)量電路,電壓轉(zhuǎn)換電路,阻值顯示電路、單片機(jī)及相關(guān)的控制軟件組成。A/D轉(zhuǎn)換器:ADC0809是很常用的一款8位的模數(shù)轉(zhuǎn)換芯片。而ADC0808是0809的簡(jiǎn)化版,主要的不同點(diǎn)是0808的轉(zhuǎn)換輸出out0-7與常用的輸出端高低位是相反的,即0809的最低位是out0,0808的最低位是out7.ADC0808在實(shí)際中不常用,實(shí)際中常用的是0809,而0808最常用的是在proteus仿真里面,因?yàn)?809是沒(méi)有模型庫(kù),無(wú)法仿真的。ADC 0808和ADC 0809除精度略有差別外(

6、前者精度為8位、后者精度為7位),其余各方面完全相同。它們都是CMOS器件,不僅包括一個(gè)8位的逐次逼近型的ADC部分,而且還提供一個(gè)8通道的模擬多路開(kāi)關(guān)和通道尋址邏輯,因而有理由把它作為簡(jiǎn)單的“數(shù)據(jù)采集系統(tǒng)”。利用它可直接輸入8個(gè)單端的模擬信號(hào)分時(shí)進(jìn)行A/D轉(zhuǎn)換,在多點(diǎn)巡回檢測(cè)和過(guò)程控制、運(yùn)動(dòng)控制中應(yīng)用十分廣泛。1) 主要技術(shù)指標(biāo)和特性(1)分辨率: 8位。(2)總的不可調(diào)誤差: ADC0808為±2LSB,ADC 0809為±1LSB。(3)轉(zhuǎn)換時(shí)間: 取決于芯片時(shí)鐘頻率,如CLK=500kHz時(shí),TCONV=128s。(4)單一電源: +5V。(5)模擬輸入電壓范圍:

7、單極性05V;雙極性±5V,±10V(需外加一定電路)。(6)具有可控三態(tài)輸出緩存器。(7)啟動(dòng)轉(zhuǎn)換控制為脈沖式(正脈沖),上升沿使所有內(nèi)部寄存器清零,下降沿使A/D轉(zhuǎn)換開(kāi)始工作。(8)使用時(shí)不需進(jìn)行零點(diǎn)和滿(mǎn)刻度調(diào)節(jié)。2) 部分外部引腳介紹(1)IN0IN78路模擬輸入,通過(guò)3根地址譯碼線(xiàn)ADDA、ADDB、ADDC來(lái)選通一路。(2)D7D0A/D轉(zhuǎn)換后的數(shù)據(jù)輸出端,為三態(tài)可控輸出,故可直接和微處理器數(shù)據(jù)線(xiàn)連接。8位排列順序是D7為最高位,D0為最低位。(3)ADDA、ADDB、ADDC模擬通道選擇地址信號(hào),ADDA為低位,ADDC為高位。(4)VR(+)、VR(-)正、負(fù)

8、參考電壓輸入端,用于提供片內(nèi)DAC電阻網(wǎng)絡(luò)的基準(zhǔn)電壓。在單極性輸入時(shí),VR(+)=5V,VR(-)=0V;雙極性輸入時(shí),VR(+)、VR(-)分別接正、負(fù)極性的參考電壓。顯示器:選用LCD1602。工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。1602液晶也叫1602字符型液晶,它是一種專(zhuān)門(mén)用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒芎芎玫仫@示圖形。特性:3.3V或5V工作電壓,對(duì)比度可調(diào);內(nèi)含復(fù)位電路;提供各種控制

9、命令,如:清屏、字符閃爍、光標(biāo)閃爍、顯示移位等多種功能;有80字節(jié)顯示數(shù)據(jù)存儲(chǔ)器DDRAM;內(nèi)建有192個(gè)5X7點(diǎn)陣的字型的字符發(fā)生器CGROM;8個(gè)可由用戶(hù)自定義的5X7的字符發(fā)生器CGRAM;微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧,常用在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中;操作控制。它們之間的構(gòu)成框圖如圖2-1總體設(shè)計(jì)框圖所示:AT89C51LCD顯示電壓轉(zhuǎn)換電阻(ADC0808)測(cè)量精度選擇電壓測(cè)量圖2-1 總體設(shè)計(jì)框圖處理器采用51系列單片機(jī)AT89C51。整個(gè)系統(tǒng)是在系統(tǒng)軟件控制下工作的。當(dāng)測(cè)量一個(gè)電阻時(shí),經(jīng)過(guò)電壓采集,電壓轉(zhuǎn)換為電阻,電阻顯示三個(gè)部分可以在LCD上顯示該被測(cè)電阻的阻值。當(dāng)

10、被測(cè)電阻為100范圍以?xún)?nèi)時(shí),通過(guò)開(kāi)關(guān)選擇測(cè)量量程,再次測(cè)量該電阻,以減小誤差。25第三章 硬件設(shè)計(jì)§3.1直流穩(wěn)壓電源電路的設(shè)計(jì)對(duì)于一個(gè)完整的電子設(shè)計(jì)來(lái)講,首要問(wèn)題就是為整個(gè)系統(tǒng)提供電源供電模塊,電源電路的穩(wěn)定可靠是系統(tǒng)平穩(wěn)運(yùn)行的前提和基礎(chǔ)。電子設(shè)備除用電池供電外,還采用市電(交流電網(wǎng))供電。通過(guò)變壓、整流、濾波和穩(wěn)壓后,得到穩(wěn)定的直流電。直流穩(wěn)壓電源是電子設(shè)備的重要組成部分!本項(xiàng)目直流穩(wěn)壓電源為+5V。如下圖所示:直流穩(wěn)壓電源的制作一般有3種制作形式,分別是分立元件構(gòu)成的穩(wěn)壓電源、線(xiàn)性集成穩(wěn)壓電源和開(kāi)關(guān)穩(wěn)壓電源。下圖穩(wěn)壓電源采用的是三端集成穩(wěn)壓器7805構(gòu)成的正5V直流電源。圖3-

11、1 三端固定式集成穩(wěn)壓電源電路圖§3.2電壓測(cè)量的設(shè)計(jì)電路的論證與對(duì)比方案一利用單穩(wěn)或電容充放電規(guī)律等,可以把被測(cè)電阻量的大小轉(zhuǎn)換成脈沖的寬窄,即脈沖的寬度Tx與Rx成正比。只要把此脈沖和頻率固定不變的方波(以下稱(chēng)為時(shí)鐘脈沖)相與,便可以得到計(jì)數(shù)脈沖,將它送給數(shù)字顯示器。如果時(shí)鐘脈沖的頻率等參數(shù)合適,便可實(shí)現(xiàn)測(cè)量電阻。計(jì)數(shù)控制電路輸出的脈沖寬度Tx應(yīng)與Rx成正比,其電路原理圖及具體555單穩(wěn)態(tài)觸發(fā)器的構(gòu)成及仿真如圖3-2所示。A/D轉(zhuǎn)換電路譯碼-驅(qū)動(dòng)-顯示電路555單穩(wěn)態(tài)電路圖3-2 方案一原理圖用555構(gòu)成的單穩(wěn)態(tài)電路在正常工作條件下輸出脈沖的寬度Tx與Rx關(guān)系是:Tx=R*Cx*

12、ln3所產(chǎn)生的時(shí)間誤差可能達(dá)到百分之十五,再加上其他原因產(chǎn)生的誤差,測(cè)量是的時(shí)間延遲太大。 方案二用ADC0808電阻測(cè)量,以已知的電阻作為基準(zhǔn)電阻。和被測(cè)電阻進(jìn)行分壓,分壓比例得出電阻比例。R1R2=V1V2用ACD0808測(cè)量電阻時(shí)間誤差為10%以下,分辨率高,輸出能與TTL電平兼容。其原理圖如圖所示。譯碼-驅(qū)動(dòng)-顯示電路A/D轉(zhuǎn)換電路簡(jiǎn)易外圍電路圖3-3 方案二原理圖方案的對(duì)比與比較由于課程設(shè)計(jì)的要求是電阻測(cè)量需要簡(jiǎn)單的外圍檢測(cè)電路,將電阻轉(zhuǎn)換為電壓。測(cè)試:誤差10%。通過(guò)比較以上兩個(gè)方案,可知方案二相對(duì)來(lái)說(shuō)比較適合。所以選用方案二作為實(shí)驗(yàn)方案。如圖3-4所示為被測(cè)電阻電壓測(cè)量。電壓經(jīng)過(guò)

13、已知電阻R1和被測(cè)電阻Rx接到地。通過(guò)OUT輸出被測(cè)電阻Rx上的電壓。送到ADC0808的IN0口。圖3-4 被測(cè)電阻電壓測(cè)量圖§3.3模數(shù)ADC轉(zhuǎn)換的設(shè)計(jì)由電壓測(cè)量得到的電壓經(jīng)過(guò)ADC模數(shù)轉(zhuǎn)換可得到8位的電壓值,經(jīng)過(guò)歐姆定律(即電壓之比等于電阻之比)可得到被測(cè)電阻的阻值的大小。公式如下OUTUi=RxR1+Rx本設(shè)計(jì)用到的R1的阻值為600和300。由被測(cè)電阻得到的電壓經(jīng)ADC0808的26腳IN0輸入,經(jīng)過(guò)內(nèi)部的AD轉(zhuǎn)換,在OUT17輸出數(shù)字電壓量,經(jīng)過(guò)上述公式的轉(zhuǎn)變,在P2口上的顯示的數(shù)字量為被測(cè)電阻的阻值數(shù)字量。如圖3-5所示為被測(cè)電阻電壓量轉(zhuǎn)換為阻值量。IN0ADC0808

14、OUT1OUT7OUTP2圖3-5 被測(cè)電阻電壓量轉(zhuǎn)換為阻值量圖§3.4 液晶顯示電路的設(shè)計(jì)經(jīng)過(guò)ADC0809模數(shù)轉(zhuǎn)換得到的電阻值數(shù)字量,在MCU的P2口輸入,MCU系統(tǒng)處理后在P0口由LCD1602顯示出來(lái)該被測(cè)電阻的阻值。如圖3-6所示為被測(cè)電阻阻值顯示。D0D7LCD1602P0AT89C51P2ADC OUT1OUT7圖3-6 被測(cè)電阻阻值顯示圖單片機(jī)時(shí)鐘電路的設(shè)計(jì):本系統(tǒng)采用單片機(jī)內(nèi)部方式產(chǎn)生時(shí)鐘信號(hào),用于外接一個(gè)12MHz石英晶體振蕩器和2個(gè)30pF微調(diào)電容,構(gòu)成穩(wěn)定的的自激振蕩器,其發(fā)出的脈沖直接送入內(nèi)部的時(shí)鐘電路。XTAL1和XTAL2分別為反向放大器的輸入和輸出。該

15、反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。因?yàn)橐粋€(gè)機(jī)器周期含有6個(gè)狀態(tài)周期,而每個(gè)狀態(tài)周期為2個(gè)振蕩周期,所以一個(gè)機(jī)器周期共有12個(gè)振蕩周期,如果外接石英晶體振蕩器的振蕩頻率為12MHZ,一個(gè)振蕩周期為1/12us,故而一個(gè)機(jī)器周期為1us。如圖3-7所示為時(shí)鐘電路。圖3-7 時(shí)鐘電路圖單片機(jī)復(fù)位電路的設(shè)計(jì):確定單片機(jī)工作的起始狀態(tài),完成單片機(jī)的啟動(dòng)過(guò)程。復(fù)位方法一般有上電自動(dòng)復(fù)位和外部按鍵手動(dòng)復(fù)位,單片機(jī)在時(shí)鐘電路工作以后, 在RESET端口持續(xù)給出2個(gè)機(jī)器周期的高電平時(shí)就可以完成復(fù)位操作6。例如使用晶振頻率為12MHz時(shí),則復(fù)位

16、信號(hào)持續(xù)時(shí)間應(yīng)不小于2us。本設(shè)計(jì)采用的是外部手動(dòng)按鍵復(fù)位電路。如圖3-8所示為復(fù)位電路。圖3-8 復(fù)位電路圖由時(shí)鐘電路和復(fù)位電路連接的單片機(jī)最小系統(tǒng)如下圖所示:圖3-9 單片機(jī)最小系統(tǒng)系統(tǒng)硬件電路的選擇及說(shuō)明:硬件電路的設(shè)計(jì)如上文圖中所示,從以上的分析可知本設(shè)計(jì)中要用到如下器件:AT89C51、ADC0808轉(zhuǎn)換器、LCD1602、按鍵等一些單片機(jī)外圍應(yīng)用電路,以及單片機(jī)的手工復(fù)位,單片機(jī)電源電路等。其中R3,R6電阻為已知電阻,R4,R5為不同測(cè)量精度下的未知電阻,開(kāi)始工作時(shí)可在LCD上觀察到被測(cè)電阻的阻值。電路設(shè)有2個(gè)按鍵,S1鍵作為阻值測(cè)量精度的選擇鍵,S2鍵作為電路復(fù)位鍵。第四章 軟

17、件設(shè)計(jì)§4.1 主程序工作流程圖按上述工作原理和硬件結(jié)構(gòu)分析可知系統(tǒng)主程序流程圖如下圖所示開(kāi)始系統(tǒng)初始化(重新)放置電阻選擇測(cè)量精度開(kāi)關(guān)S1,重測(cè)此電阻初次顯示無(wú)正常顯示<300最終顯示正常顯示結(jié)束 圖4-1 主程序工作流程圖§4.2 程序設(shè)計(jì)A/D轉(zhuǎn)換程序、SMC1602驅(qū)動(dòng)程序、主函數(shù)見(jiàn)附錄。第五章 軟件仿真§5.1 Proteus仿真圖本設(shè)計(jì)通過(guò)利用Proteus仿真,將所編寫(xiě)的程序用Keil軟件編譯。本設(shè)計(jì)所要求達(dá)到的目標(biāo)是測(cè)量一個(gè)電阻,在誤差允許范圍內(nèi),通過(guò)LCD1602顯示出該電阻的阻值。仿真圖如下圖所示:圖5-1 Proteus電路仿真圖表5-

18、1 仿真測(cè)量電阻阻值實(shí)際電阻()仿真測(cè)量(600)硬件測(cè)量(600)仿真測(cè)量(300)硬件測(cè)量(300)1.220111.520112.622225.444646.3746610999101414121312474848474749484849495151515052908989909210098981001002202182222202232402402452382463003003002972973303273383323374704694774724805105085165135225505505675505691K993102799610662K120842233209023373K2

19、9853042302631773K333233426334235253K53535377135253950§5.2 Altium Designer原理圖除仿真之外,本設(shè)計(jì)又使用Altium Designer繪制了硬件電路的原理圖,如下圖所示:圖5-2 硬件電路的原理圖其中電源電路的設(shè)計(jì)如圖5-3所示圖5-3 電源電路圖本設(shè)計(jì)使用USB接口給電路提供+5V電壓,與使用Proteus仿真電路有所不同。電路中所有的高電平全部接在VCC端,地接在USB接口的4號(hào)腳上。通電時(shí)紅燈LED-R亮。經(jīng)過(guò)對(duì)原理圖編譯,更新后產(chǎn)生的PCB板見(jiàn)附錄,在此只展示了PCB板的頂層。第六章 設(shè)計(jì)結(jié)論本設(shè)計(jì)研究了

20、一種基于單片機(jī)技術(shù)的電阻測(cè)量。由電路知識(shí)可以容易測(cè)出一個(gè)電阻上的電壓。由于測(cè)量的電壓是模擬量,故用ADC轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字量,再由單片機(jī)系統(tǒng)處理,再將數(shù)據(jù)傳送給顯示器即可完成電阻的阻值測(cè)量和顯示。由于數(shù)字量在數(shù)值上是離散的,通過(guò)此種方法得到的阻值存在著誤差,為了盡可能的減小此誤差,在選擇已知電阻上,試用了很多電阻。通過(guò)大量數(shù)據(jù)與實(shí)際電阻的阻值相比較,以及實(shí)驗(yàn)室能提供的電阻,選用了600和300的已知電阻,用不同的量程可以盡可能的減小誤差。表5-1中給出了部分電阻的硬件電路測(cè)量結(jié)果,從中可以得知,同一電阻,用不同的量程測(cè)量得到不同的阻值,存在的誤差也很明顯。本設(shè)計(jì)只采用了兩種已知電阻,也就是2個(gè)量

21、程測(cè)量電阻,測(cè)量范圍從15K,精度大于98%。若提高測(cè)量精度,只需增加更大的量程,即可完成大電阻的阻值測(cè)量。由于硬件電路的連接,元器件不理想等原因,實(shí)際測(cè)量電阻的阻值與仿真得到的阻值還是有一定誤差的。雖然硬件電路能正常工作,但程序以及元器件的選擇不足,使得這次設(shè)計(jì)并沒(méi)有達(dá)到很好的測(cè)量效果,對(duì)微歐姆級(jí)和K歐姆級(jí)電阻無(wú)法測(cè)量,還是感到不理想。通過(guò)此次設(shè)計(jì),尤其在硬件電路的設(shè)計(jì)的方面,使我對(duì)單片機(jī)系統(tǒng)有了更好的認(rèn)識(shí)。在以后的學(xué)習(xí)中,會(huì)更加注重設(shè)計(jì)原理與硬件電路的相結(jié)合,做好每一個(gè)設(shè)計(jì),達(dá)到理想的要求。參考文獻(xiàn)1 史翔,張?jiān)罎?基于AT89C51單片機(jī)微電阻測(cè)量系統(tǒng)J. 甘肅科技,2011年8月2 周

22、瑞景. Proteus在MCS-51&ARM7系統(tǒng)中的應(yīng)用百例M. 北京:電子工業(yè)出版社,20103 李全利.單片機(jī)原理及接口技術(shù)M.2版. 北京:高等教育出版社,20134 王東峰,王會(huì)良.單片機(jī)C語(yǔ)言應(yīng)用100例M.北京:電子工業(yè)出版社,20125 彭偉. 單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)100例基于8051+Proteus仿真.北京:電子工業(yè)出版社,20106 張毅剛 彭喜元,彭宇.單片機(jī)原理及應(yīng)用.北京:高等教育出版社,2010.57 郭天祥 新概念51單片機(jī)C語(yǔ)言教程.北京:電子工業(yè)出版社,2009.18 張毅剛 基于Proteus的單片機(jī)課程的基礎(chǔ)實(shí)驗(yàn)與課程設(shè)計(jì) 北京:人民郵電出版

23、社,20129 Alan B. Marcovitz Introduction to logic Design.北京:電子工業(yè)出版社,2013附錄硬件電路PCB板各模塊程序:A/D轉(zhuǎn)換函數(shù):#include <at89x51.h>#define START P3_4 /ATART,ALE接口。0->1->0:啟動(dòng)AD轉(zhuǎn)換。#define EOC P3_3 /轉(zhuǎn)換完畢由0變1.#define OUTPORT P2 #define K1 P1_0/AD轉(zhuǎn)換函數(shù),返回轉(zhuǎn)換結(jié)果。/轉(zhuǎn)換結(jié)果是3位數(shù)unsigned int uiADTransform()float uiResult

24、;START=1; /啟動(dòng)AD轉(zhuǎn)換。START=0;while(EOC=0); /等待轉(zhuǎn)換結(jié)束。uiResult=OUTPORT; /輸入轉(zhuǎn)換結(jié)果。P1=0xFF;if(K1=1)uiResult=uiResult*600/(255-uiResult); /已知電阻為600歐姆,計(jì)算未知電阻,測(cè)量大電阻,0-9999歐姆else uiResult=uiResult*300/(255-uiResult); /已知電阻為300歐姆,計(jì)算另外的電阻,測(cè)量大電阻,0-9999歐姆 return uiResult;SMC1602驅(qū)動(dòng)程序:#include "SMC1602.h"voi

25、d vWriteCMD(unsigned char ucCommand) vDelay();/先延時(shí)。LCDE=1;/然后把LCD改為寫(xiě)入命令狀態(tài)。LCDRS=0;LCDRW=0;LCDPORT=ucCommand;/再輸出命令。LCDE=0;/最后執(zhí)行命令。void vWriteData(unsigned char ucData) vDelay(); /先延時(shí)。LCDE=1; /然后把LCD改為寫(xiě)入數(shù)據(jù)狀態(tài)。LCDRS=1;LCDRW=0;LCDPORT=ucData; /再輸出數(shù)據(jù)。LCDE=0; /最后顯示數(shù)據(jù)。void vShowOneChar(unsigned char ucChar

26、)switch(ucChar)case ' ': vWriteData(0x20);break;case ':': vWriteData(0x3A);break;case '(': vWriteData(0x28);break;case ')': vWriteData(0x29);break;case '0': vWriteData(0x30);break;case '1': vWriteData(0x31);break;case '2': vWriteData(0x32);brea

27、k;case '3': vWriteData(0x33);break;case '4': vWriteData(0x34);break;case '5': vWriteData(0x35);break;case '6': vWriteData(0x36);break;case '7': vWriteData(0x37);break;case '8': vWriteData(0x38);break;case '9': vWriteData(0x39);break;case 'R': vWriteData(0x52);break;case 'a': vWriteData(0x61);break;case 'c': vWriteData(0x63);break;case 'e': vWriteData(0x65);break;case 'i': vWriteData(0x69);break; case 'n': vWriteDat

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論