版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 畢業(yè)設(shè)計(jì)題目 四、簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì) </p><p><b> 任 務(wù) 書(shū)</b></p><p><b> 摘 要</b></p><p> 根據(jù)8051單片機(jī)的內(nèi)部結(jié)構(gòu)特點(diǎn)本文提出以MCS-51單片機(jī)為核心的電壓測(cè)量系統(tǒng)。該系統(tǒng)以8051和ADC0809核心內(nèi)件,能夠在單片機(jī)
2、的控制下監(jiān)測(cè)八路的輸入電壓值,用8位串行A/D轉(zhuǎn)換器進(jìn)行0-5V量程自動(dòng)轉(zhuǎn)換,并且測(cè)量的電壓值可通過(guò)三位數(shù)碼管顯示同時(shí)用一位數(shù)碼管顯示選擇通道。整個(gè)系統(tǒng)的設(shè)計(jì)過(guò)程中主要采用了模塊化的設(shè)計(jì)方法,完成了硬件電路的設(shè)計(jì)及軟件程序的編寫(xiě),還詳細(xì)的給出了相關(guān)的硬件框圖和軟件流程圖,通過(guò)最終硬件電路的調(diào)試,使該系統(tǒng)能夠在要求的條件下達(dá)到正常的測(cè)量及顯示功能。單片機(jī)8051是整個(gè)系統(tǒng)的核心,實(shí)現(xiàn)輸入端的分路選擇,模數(shù)轉(zhuǎn)換后數(shù)據(jù)的處理及在數(shù)碼管上數(shù)據(jù)的
3、顯示等功能。正文著重給出了軟硬件系統(tǒng)的各部分電路,介紹了該系統(tǒng)的工作原理,MCS-51單片機(jī)特點(diǎn),8051的功能和應(yīng)用,ADC0809的功能和應(yīng)用等。</p><p> 關(guān)鍵詞:MCS-51單片機(jī);8051 ;ADC0809;數(shù)碼管</p><p><b> 目 錄</b></p><p><b> 1 硬件設(shè)計(jì)1&l
4、t;/b></p><p> 1.1 單片機(jī)件簡(jiǎn)介1</p><p> 1.1.1 8031芯片1</p><p> 1.1.2 8051芯片1</p><p> 1.1.3 8751芯片1</p><p> 1.2 8051單片機(jī)簡(jiǎn)介2</p><p>
5、1.2.1 中央處理器2</p><p> 1.2.2 數(shù)據(jù)存儲(chǔ)器(RAM)2</p><p> 1.2.3 程序存儲(chǔ)器(ROM)3</p><p> 1.2.4 定時(shí)/計(jì)數(shù)器(ROM)3</p><p> 1.2.5 并行輸入輸出(I/O)口3</p><p> 1.2.6 全雙工串行
6、口3</p><p> 1.2.7 中斷系統(tǒng)3</p><p> 1.2.8 時(shí)鐘電路3</p><p> 1.3 引腳極其功能4</p><p> 1.3.1 電源引腳Vcc和Vss4</p><p> 1.3.2 外接晶振引腳XTAL1和XTAL24</p><p
7、> 1.3.3 控制信號(hào)或與其它電源復(fù)用引腳4</p><p> 1.3.4 輸入/輸出(I/O)引腳P口5</p><p> 1.4 ADC0809芯片簡(jiǎn)介6</p><p> 1.4.1 主要特性7</p><p> 1.4.2 內(nèi)部結(jié)構(gòu)7</p><p> 1.4.3 外部
8、特性(引腳功能)7</p><p> 1.5 8051中斷系統(tǒng)8</p><p> 1.5.1 8051單片機(jī)中斷系統(tǒng)中的五個(gè)中斷源8</p><p> 1.5.2 8051中斷系統(tǒng)的4個(gè)特殊功能寄存器9</p><p> 1.5.3 中斷的優(yōu)先排隊(duì)與嵌套9</p><p> 1.5.4
9、 MCS-51中斷系統(tǒng)的初始化9</p><p> 1.5.5 各中斷源與之對(duì)應(yīng)的中斷服務(wù)程序矢量地址如圖示9</p><p> 1.5.6 LED工作原理10</p><p> 1.6 數(shù)字電壓表的原理結(jié)構(gòu)12</p><p> 1.6.1 數(shù)據(jù)采集接口電路12</p><p> 1.6
10、.2 LED顯示電路12</p><p> 2 軟件設(shè)計(jì)13</p><p> 2.1 流程圖13</p><p> 2.2 程序設(shè)計(jì)17</p><p> 3 設(shè)計(jì)總結(jié)18</p><p> 參 考 文 獻(xiàn)19</p><p> 附 錄 A20</
11、p><p> 附 錄 B23</p><p> 附 錄 C24</p><p><b> 1 硬件設(shè)計(jì)</b></p><p> 1.1 單片機(jī)件簡(jiǎn)介</p><p> MCS51系列單片機(jī)包括三個(gè)基本型8031、8051、8751</p><p>
12、 1.1.1 8031芯片</p><p> 8031內(nèi)部包括一個(gè)8位CPU、128個(gè)字節(jié)RAM,21個(gè)特殊功能寄存器(SFR)、4個(gè)8位并行I/O口、1個(gè)全雙工串行口、2個(gè)16位定時(shí)器/計(jì)數(shù)器,但片內(nèi)無(wú)程序存儲(chǔ)器,需外擴(kuò)EPROM芯片。</p><p> 1.1.2 8051芯片</p><p> 8051是在8031的基礎(chǔ)上,片內(nèi)集成有4K ROM,作
13、為程序存儲(chǔ)器,是一個(gè)程序不超過(guò)4K字節(jié)的小系統(tǒng)。ROM內(nèi)的程序是公司制作芯片時(shí),代為用戶燒制的,出廠的8051都是含有特殊用途的單片機(jī)。所以8051適合與應(yīng)用在程序已定,且批量大的單片機(jī)產(chǎn)品中。</p><p> 1.1.3 8751芯片</p><p> 8751是在8031基礎(chǔ)上,增加了4K字節(jié)的EPROM,它構(gòu)成了一個(gè)程序小于4KB的小系統(tǒng)。用戶可以將程序固化在EPROM中,可
14、以反復(fù)修改程序。但其價(jià)格相對(duì)8031較貴。8031外擴(kuò)一片4KB EPROM的就相當(dāng)與8751,它的最大優(yōu)點(diǎn)是價(jià)格低。隨著大規(guī)模集成電路技術(shù)的不斷發(fā)展,能裝入片內(nèi)的外圍接口電路也可以是大規(guī)模的。</p><p> 下圖是MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu):</p><p> 圖1.1 MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)</p><p> 圖1.2 MCS-51內(nèi)部
15、結(jié)構(gòu)框圖</p><p> 1.2 8051單片機(jī)簡(jiǎn)介</p><p> 8051單片機(jī)是把那些作為控制應(yīng)用所必需的基本內(nèi)容都集成在一個(gè)尺寸有限的集成電路芯片上[2]。如果按功能劃分,它由如下功能部件組成,即中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口、中斷系統(tǒng)和時(shí)種電路,其基本結(jié)構(gòu)依舊是CPU加上外圍芯片的傳統(tǒng)結(jié)構(gòu)模式。但對(duì)各種功能部件的
16、控制是采用特殊功能寄存器的集中控制方式。</p><p> 1.2.1 中央處理器</p><p> 中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。</p><p> 1.2.2 數(shù)據(jù)存儲(chǔ)器(RAM)</p>
17、<p> 8051內(nèi)部有128個(gè)8位用戶數(shù)據(jù)存儲(chǔ)單元和128個(gè)專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問(wèn),而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫(xiě)的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。</p><p> 1.2.3 程序存儲(chǔ)器(ROM)</p><p> 8051共有4096個(gè)8位掩膜ROM,用
18、于存放用戶程序,原始數(shù)據(jù)或表格。</p><p> 1.2.4 定時(shí)/計(jì)數(shù)器(ROM)</p><p> 8051有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。</p><p> 1.2.5 并行輸入輸出(I/O)口</p><p> 8051共有4組8位I/O口(P0、 P1、P2或P3),用于對(duì)外
19、部數(shù)據(jù)的傳輸。</p><p> 1.2.6 全雙工串行口</p><p> 8051內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。</p><p> 1.2.7 中斷系統(tǒng)</p><p> 8051具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)
20、串行中斷,可滿足不同的控制要求,并具有2級(jí)的優(yōu)先級(jí)別選擇。</p><p> 1.2.8 時(shí)鐘電路</p><p> 8051內(nèi)置最高頻率達(dá)12MHz的時(shí)鐘電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序但8051單片機(jī)需外置振蕩電容。</p><p> 由上可見(jiàn),8051單片機(jī)的硬件結(jié)構(gòu)具有功能部件種類全,功能強(qiáng)等特點(diǎn)。特別值得一提的是該單片機(jī)CPU中的位處理器,它
21、實(shí)際上是一個(gè)完整的1位微計(jì)算機(jī),這個(gè)一位微計(jì)算機(jī)有自己的CPU、位寄存器、I/O口和指令集。1位機(jī)在開(kāi)關(guān)決策、邏輯電路仿真、過(guò)程控制方面非常有效;而8位機(jī)在數(shù)據(jù)采集,運(yùn)算處理方面有明顯的長(zhǎng)處。MCS-51單片機(jī)中8位機(jī)和1位機(jī)的硬件資源復(fù)合在一起,二者相輔相承,它是單片機(jī)技術(shù)上的一個(gè)突破,這也是MCS-51單片機(jī)在設(shè)計(jì)的精美之處。</p><p> 1.3 引腳極其功能</p><p>
22、; 圖1.3 80C51的管腳圖</p><p> MCS—51系列單片機(jī)的40個(gè)引腳中有2個(gè)專用于主電源引腳,2個(gè)外接晶振的引腳,4個(gè)控制或與其它電源復(fù)用的引腳,以及32條輸入輸出I/O引腳。</p><p> 下面按引腳功能分為4個(gè)部分?jǐn)⑹鰝€(gè)引腳的功能。</p><p> 1.3.1 電源引腳Vcc和Vss</p><p>
23、 Vcc(40腳):接+5V電源正端。</p><p> Vss(20腳):接+5V電源正端。</p><p> 1.3.2 外接晶振引腳XTAL1和XTAL2</p><p> XTAL1(19腳):接外部石英晶體的一端。在單片機(jī)內(nèi)部,它是一個(gè)反相放大器的輸入端,這個(gè)放大器構(gòu)成采用外部時(shí)鐘時(shí),對(duì)于HMOS單片機(jī),該引腳接地;對(duì)于CHOMS單片機(jī),該引腳作為
24、外部振蕩信號(hào)的輸入端。</p><p> XTAL2(18腳):接外部晶體的另一端。在單片機(jī)內(nèi)部,接至片內(nèi)振蕩器的反相放大器的輸出端。當(dāng)采用外部時(shí)鐘時(shí),對(duì)于HMOS單片機(jī),該引腳作為外部振蕩信號(hào)的輸入端。對(duì)于CHMOS芯片,該引腳懸空不接。</p><p> 1.3.3 控制信號(hào)或與其它電源復(fù)用引腳</p><p> 控制信號(hào)或與其它電源復(fù)用引腳有RST/V
25、PD、ALE/P、PSEN和EA/VPP等4種形式。</p><p> 1、RST/VPD(9腳):RST即為RESET,VPD為備用電源,所以該引腳為單片機(jī)的上電復(fù)位或掉電保護(hù)端。當(dāng)單片機(jī)振蕩器工作時(shí),該引腳上出現(xiàn)持續(xù)兩個(gè)機(jī)器周期的高電平,就可實(shí)現(xiàn)復(fù)位操作,使單片機(jī)復(fù)位到初始狀態(tài)。當(dāng)VCC發(fā)生故障,降低到低電平規(guī)定值或掉電時(shí),該引腳可接上備用電源VPD(+5V)為內(nèi)部RAM供電,以保證RAM中的數(shù)據(jù)不丟失。&
26、lt;/p><p> 圖1.4 上電自動(dòng)復(fù)位 圖1.5 手動(dòng)復(fù)位電路 圖1.6 內(nèi)部時(shí)鐘方式 圖1.7 外部時(shí)鐘方式</p><p> 2、ALE/ P (30腳):當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),ALE(允許地址鎖存信號(hào))以每機(jī)器周期兩次的信號(hào)輸出,用于鎖存出現(xiàn)在P0口的低</p><p> 3、PSEN(29腳):片外程序存儲(chǔ)器讀選通輸出端,低電平有效。當(dāng)從外
27、部程序存儲(chǔ)器讀取指令或常數(shù)期間,每個(gè)機(jī)器周期PESN兩次有效,以通過(guò)數(shù)據(jù)總線口讀回指令或常數(shù)。當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器期間,PESN信號(hào)將不出現(xiàn)。</p><p> 4、EA/Vpp(31腳):EA為訪問(wèn)外部程序儲(chǔ)器控制信號(hào),低電平有效。當(dāng)EA端保持高電平時(shí),單片機(jī)訪問(wèn)片內(nèi)程序存儲(chǔ)器4KB(MS—52子系列為8KB)。若超出該范圍時(shí),自動(dòng)轉(zhuǎn)去執(zhí)行外部程序存儲(chǔ)器的程序。當(dāng)EA端保持低電平時(shí),無(wú)論片內(nèi)有無(wú)程序存儲(chǔ)器,均
28、只訪問(wèn)外部程序存儲(chǔ)器。對(duì)于片內(nèi)含有EPROM的單片機(jī),在EPROM編程期間,該引腳用于接21V的編程電源Vpp。</p><p> 1.3.4 輸入/輸出(I/O)引腳P口</p><p> 1、P0口(39腳~22腳),P0.0~P0.7統(tǒng)稱為P0口。當(dāng)不接外部存儲(chǔ)器與不擴(kuò)展I/O接口時(shí),它可作為準(zhǔn)雙向8位輸入/輸出接口。當(dāng)接有外部程序存儲(chǔ)器或擴(kuò)展I/O口時(shí),P0口為地址/數(shù)據(jù)分時(shí)
29、復(fù)用口。它分時(shí)提供8位雙向數(shù)據(jù)總線。</p><p> 對(duì)于片內(nèi)含有EPROM的單片機(jī),當(dāng)EPROM編程時(shí),從P0口輸入指令字節(jié),而當(dāng)檢驗(yàn)程序時(shí),則輸出指令字節(jié)。</p><p> 2、P1口(1腳~8腳),P1.0~P1.7統(tǒng)稱為P1口,可作為準(zhǔn)雙向I/O接口使用。對(duì)于MCS—52子系列單片機(jī),P1.0和P1.1還有第2功能:P1.0口用作定時(shí)器/計(jì)數(shù)器2的計(jì)數(shù)脈沖輸入端T2;P1.
30、1用作定時(shí)器/計(jì)數(shù)器2的外部控制端T2EX。對(duì)于EPROM編程和進(jìn)行程序校驗(yàn)時(shí),P0口接收輸入的低8位地址。</p><p> 3、P2口(21腳~28腳),P2.0~P2.7統(tǒng)稱為P2口,一般可作為準(zhǔn)雙向I/O接口。當(dāng)接有外部程序存儲(chǔ)器或擴(kuò)展I/O接口且尋址范圍超過(guò)256個(gè)字節(jié)時(shí),P2口用于高8位地址總線送出高8位地址。對(duì)于EPROM編程和進(jìn)行程序校驗(yàn)時(shí),P2口接收輸入的8位地址。</p>&l
31、t;p> 4、P3口(10腳~17腳),P3.0~P3.7統(tǒng)稱為P3口。它為雙功能口,可以作為一般的準(zhǔn)雙向I/O接口,也可以將每1位用于第2功能,而且P3口的每一條引腳均可獨(dú)立定義為第1功能的輸入輸出或第2功能。P3口的第2功能見(jiàn)下表</p><p> 表1.1 單片機(jī)P3.0管腳含義</p><p> 綜上所述,MCS—51系列單片機(jī)的引腳作用可歸納為以下兩點(diǎn):</p
32、><p> 1、 單片機(jī)功能多,引腳數(shù)少,因而許多引腳具有第2功能;</p><p> 2、 單片機(jī)對(duì)外呈3總線形式,由P2、P0口組成16位地址總線;由P0口分時(shí)復(fù)用作為數(shù)據(jù)總線。</p><p> 1.4 ADC0809芯片簡(jiǎn)介</p><p> ADC0809是一種8路模擬輸入8路數(shù)字輸出的逐次比較型A/D轉(zhuǎn)換器。目前在8位單片機(jī)
33、系統(tǒng)中有著廣泛的使用。ADC0809是采樣頻率為8位的、以逐次逼近原理進(jìn)行模—數(shù)轉(zhuǎn)換的器件。其內(nèi)部有一個(gè)8通道多路開(kāi)關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號(hào),只選通8個(gè)單斷模擬輸入信號(hào)中的一個(gè)進(jìn)行A/D轉(zhuǎn)換。</p><p> 1.4.1 主要特性</p><p> 1、8路8位A/D轉(zhuǎn)換器,即分辨率8位。 2、具有轉(zhuǎn)換起停控制端。 3、轉(zhuǎn)換時(shí)間為100μs。</p>
34、<p> 4、單個(gè)+5V電源供電。5、模擬輸入電壓范圍0~+5V,不需零點(diǎn)和滿刻度校準(zhǔn)。 6、工作溫度范圍為-40~+85攝氏度。 </p><p> 7、低功耗,約15mW。</p><p> 1.4.2 內(nèi)部結(jié)構(gòu)</p><p> ADC0809是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)如圖所示,它由8位模擬開(kāi)關(guān)、地址鎖存與譯碼器、
35、比較器、8位開(kāi)關(guān)輸入A/D轉(zhuǎn)換器、逐次逼近。</p><p> 1.4.3 外部特性(引腳功能)</p><p> ADC0809芯片有28條引腳,采用雙列直插式封裝,下面說(shuō)明各引腳功能。 1、IN0~I(xiàn)N7:8路模擬量輸入端。2、2-1~2-8:8位數(shù)字量輸出端。3、ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路4、ALE:地址鎖存允許信號(hào),輸入
36、,高電平有效。 5、START: A/D轉(zhuǎn)換啟動(dòng)信號(hào),輸入,高電平有效。 6、EOC: A/D轉(zhuǎn)換結(jié)束信號(hào),輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。 7、OE:數(shù)據(jù)輸出允許信號(hào),輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開(kāi)輸出三態(tài)門,輸出數(shù)字量。8、CLK:時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KHZ。 9、REF(+)、REF(-):基準(zhǔn)電壓。 </p>
37、<p> 0、Vcc:電源,單一+5V,GND:地。</p><p> ADC0809的工作過(guò)程是:首先輸入3位地址,并使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)楦唠娖剑甘続/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作
38、中斷申請(qǐng)。當(dāng)OE輸入高電平 時(shí),輸出三態(tài)門打開(kāi),轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。</p><p> 表1.2 通道選擇表</p><p> 1.5 8051中斷系統(tǒng)</p><p> 1.5.1 8051單片機(jī)中斷系統(tǒng)中的五個(gè)中斷源</p><p> 1、INT0:外部中斷0請(qǐng)求,低電平有效。</p><
39、p> 2、INT1:外部中斷1請(qǐng)求,低電平有效。</p><p> 3、T0:定時(shí)/計(jì)數(shù)器0溢出中斷請(qǐng)求。</p><p> 4、T1:定時(shí)/計(jì)數(shù)器1溢出中斷請(qǐng)求。</p><p> 5、TX/RX:串行口通信中斷請(qǐng)求,當(dāng)串行口完成一幀數(shù)據(jù)的發(fā)送或接受時(shí),便請(qǐng)求中斷。</p><p> 1.5.2 8051中斷系統(tǒng)的4個(gè)特殊
40、功能寄存器</p><p> 1、定時(shí)計(jì)數(shù)控制器TCON</p><p> 2、串行口控制器SCON</p><p> 3、中斷允許控制器IE</p><p> 4、中斷優(yōu)先控制器IP</p><p> 1.5.3 中斷的優(yōu)先排隊(duì)與嵌套</p><p> 1、中斷的優(yōu)先排隊(duì)。自然優(yōu)
41、先級(jí)排列由高到低的順序:外部中斷0、定時(shí)/計(jì)數(shù)器0溢出中斷、外部中斷1、定時(shí)/計(jì)數(shù)器1溢出中斷、串行口中斷。</p><p> 2、中斷嵌套。CPU在響應(yīng)中斷時(shí),先處理高級(jí)中斷,再處理低級(jí)中斷,若有多個(gè)同級(jí)中斷請(qǐng)求時(shí),則按自然優(yōu)先級(jí)順序處理。</p><p> 1.5.4 MCS-51中斷系統(tǒng)的初始化</p><p> 1、設(shè)定所有中斷源的中斷優(yōu)先級(jí);<
42、;/p><p> 2、若為外部中斷,應(yīng)規(guī)定低電平出發(fā)還是邊沿出發(fā)方式;</p><p> 3、開(kāi)相應(yīng)中斷源中斷。</p><p> 1.5.5 各中斷源與之對(duì)應(yīng)的中斷服務(wù)程序矢量地址如圖示</p><p> 表1.3 中斷源及對(duì)應(yīng)的矢量地址</p><p> 1.5.6 LED工作原理</p>
43、<p> LED顯示是用發(fā)光二極管顯示字段的顯示器件,也可稱為數(shù)碼管,其外形結(jié)構(gòu)如圖所示,由圖可見(jiàn)它由8個(gè)發(fā)光二極管構(gòu)成,通過(guò)不同的組合可用來(lái)顯示0~9、A~F及小數(shù)點(diǎn)。</p><p> 圖1.9 管腳配置 圖1.10 共陰極 圖1.11 共陽(yáng)極</p><p> LED顯示器分為共陰極和共陽(yáng)極,共陰極是將8個(gè)發(fā)光二極管陰極連接在一起作為公共端,而共陽(yáng)極是將
44、8個(gè)發(fā)光二極管的陽(yáng)極連接在一起作為公共端。如圖1.7.2所示,LED顯示器有靜態(tài)和動(dòng)態(tài)顯示兩種方式,靜態(tài)顯示是將共陰極聯(lián)到一起接地,每位的顯示段(a-dp)分別與一個(gè)8位的鎖存器輸出相連。由于顯示的各位可以相互獨(dú)立,各位可以互相顯示,只要在該位的段選線上保持段選碼電平,該位就能保持相應(yīng)的顯示字符。并且由于各位由一個(gè)8位鎖存器控制段選線,故在同一時(shí)間內(nèi)每一位顯示的字符可以不同。這種方式占用鎖存器較多。動(dòng)態(tài)顯示是將所有位的段選線相應(yīng)的并聯(lián)在
45、一起,由一個(gè)8位的I/O口控制,形成段選線的多路復(fù)用。而各位的陰極分別由相應(yīng)的I/O口控制,實(shí)現(xiàn)各位的分時(shí)選通。要LED能夠顯示相應(yīng)的字符,就必須采用動(dòng)態(tài)掃描方式,只要每位顯示的時(shí)間足夠短,則可造成多位同時(shí)顯示的假象,達(dá)成顯示的目的。在數(shù)字電路中常常要把數(shù)據(jù)或運(yùn)算結(jié)果通過(guò)半導(dǎo)體數(shù)碼管、液晶數(shù)碼和熒光數(shù)碼管,用十進(jìn)制數(shù)顯示出來(lái)。</p><p> 發(fā)光二極管的工作電壓為1.5V-3.0V,工作電流為己毫安到幾十毫
46、安,壽命很長(zhǎng)。半導(dǎo)體數(shù)碼管將十位數(shù)分成七個(gè)字段,每段為一個(gè)發(fā)光二極管,其字形結(jié)構(gòu)如圖1.7.2所示,選擇不同的字段發(fā)光,可顯示出不同的字型。共陽(yáng)極:把發(fā)光二極管的陽(yáng)極連在一起構(gòu)成共陽(yáng)極。使用時(shí)公共端接Vcc,當(dāng)某陽(yáng)極為低電平時(shí),該發(fā)光二極管就導(dǎo)通發(fā)光。輸出一個(gè)段碼就可以控制LED顯示器的字型,表1.4給出了段碼與字型的關(guān)系,假定a、b、c、d、e、f、g、DP分別對(duì)應(yīng)D0、D1、D2、D3、D4、D5、D6、D7。</p>
47、<p> 表1.4 段碼與字型的關(guān)系</p><p> 1.6 數(shù)字電壓表的原理結(jié)構(gòu)</p><p> 1.6.1 數(shù)據(jù)采集接口電路</p><p> 圖1.12 數(shù)據(jù)采集接口電路</p><p> 1.6.2 LED顯示電路</p><p> 圖1.13 數(shù)碼管顯示電路</p
48、><p><b> 2 軟件設(shè)計(jì)</b></p><p> 2.1 流程圖 </p><p><b> DELAY子程序:</b></p><p> 圖2.1 DELAY子程序流程圖 </p
49、><p><b> GETAD子程序:</b></p><p> 圖2.2 GETAD子程序</p><p><b> 電壓變換子程序:</b></p><p> 圖2.3 變換電壓變換子程序流程圖</p><p><b> 主程序流程圖:</b&g
50、t;</p><p> 圖2.4 主程序流程圖</p><p><b> 2.2 程序設(shè)計(jì)</b></p><p> 系統(tǒng)工作原理:當(dāng)從表筆給ADC0809輸入一個(gè)0V-5.0V的電壓值,經(jīng)模數(shù)轉(zhuǎn)換后輸出一個(gè)八位二進(jìn)制數(shù),并將數(shù)值傳入8051芯片內(nèi)在經(jīng)2803芯片在數(shù)碼管顯示出電壓值。</p><p><
51、b> 中斷服務(wù)程序:</b></p><p><b> CH_TRANS:</b></p><p> MOV TH0,#03CH</p><p> MOV TL0,#0B0H</p><p> DJNZBEISHU,T0_OUT</p><p> MOVBEIS
52、HU,#40</p><p> LCALLGETAD</p><p><b> RETI</b></p><p><b> 拆分:</b></p><p> XS_CHAIFEN:</p><p> MOV A,DIS_BUF</p><p&
53、gt;<b> MOV B,#10</b></p><p><b> DIV AB</b></p><p><b> MOV 31H,A</b></p><p> MOV 30H,B </p><p><b> RET</b><
54、/p><p><b> 變換電壓子程序:</b></p><p><b> CONVERT:</b></p><p> MOVA,AD_BUF</p><p> MOVCF_B_H,B</p><p> MOVCF_B_L,A</p><
55、p> MOVCF_C_H,#27H</p><p> MOVCF_C_L,#10H ;10000</p><p> LCALLDIV16</p><p> MOVDIS_BUF2,CF_S_L</p><p> MOVCF_B_H,CF_Y_H</p><p> M
56、OVCF_B_L,CF_Y_L</p><p> MOVCF_C_H,#00H</p><p> MOVCF_C_L,#64H ;100</p><p> LCALLDIV16</p><p> MOVDIS_BUF1,CF_S_L</p><p><b>
57、RET</b></p><p><b> 3 設(shè)計(jì)總結(jié)</b></p><p> 通過(guò)三周的課程設(shè)計(jì),使我深刻地認(rèn)識(shí)到學(xué)好專業(yè)知識(shí)的重要性,加深了對(duì)單片機(jī)理論的理解,也理解了理論聯(lián)系實(shí)際的含義,并且檢驗(yàn)了自己在大二下學(xué)期學(xué)習(xí)的單片機(jī)知識(shí)。也使我認(rèn)識(shí)到我對(duì)單片機(jī)方面的知識(shí)了解太少,對(duì)于書(shū)本上的很多知識(shí)還不能靈活運(yùn)用,有很多我們需要掌握的知識(shí)在等著我去學(xué)
58、習(xí),雖然在這次設(shè)計(jì)中對(duì)于知識(shí)的運(yùn)用和銜接還不夠熟練,我會(huì)在以后的學(xué)習(xí)生活中彌補(bǔ)我的不足。本次的設(shè)計(jì)使我從中學(xué)到了一些很重要的東西,那就是如何從理論到實(shí)踐的轉(zhuǎn)化,怎樣將我所學(xué)到的知識(shí)很好地應(yīng)用到實(shí)際生活當(dāng)中去。這個(gè)課題雖然看似很簡(jiǎn)單,但是實(shí)際上挺難,對(duì)我們的實(shí)際動(dòng)手能力是一個(gè)相當(dāng)大的考驗(yàn),這也對(duì)我們今后的工作敲響了警鐘:掌握基礎(chǔ)知識(shí),且不能眼高手低。</p><p> 這三周的課程設(shè)計(jì)是對(duì)過(guò)去所學(xué)知識(shí)的系統(tǒng)提高和
59、擴(kuò)充的過(guò)程,為今后的發(fā)展打下了良好的基礎(chǔ)。在大學(xué)的課堂的學(xué)習(xí)只是在給我們灌輸專業(yè)知識(shí),而我們應(yīng)把所學(xué)的用到我們現(xiàn)實(shí)的生活中去,此次的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)給我奠定了一個(gè)實(shí)踐基礎(chǔ),我會(huì)在以后的學(xué)習(xí)、生活中磨練自己,更好地處理所遇到的問(wèn)題,使自己適應(yīng)于以后的競(jìng)爭(zhēng)。</p><p><b> 參 考 文 獻(xiàn)</b></p><p> [1] 張有德.單片微型機(jī)原理、應(yīng)用與
60、實(shí)驗(yàn).上海:復(fù)旦大學(xué)出版社,2000. </p><p> [2] 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì).北京:北京航空航天大學(xué)出版社,2000.</p><p> [3] 李光飛.單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo).北京:北京航空航天大學(xué)出版社,2004.</p><p> [4] 雷思孝,馮育長(zhǎng).單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用.西安:西安電子科技大學(xué)出版社,2005.</p&g
61、t;<p> [5] 張俊謨.單片機(jī)中級(jí)教程原理與應(yīng)用. 北京:北京航空航天大學(xué)出版社,2002.</p><p><b> 附 錄 A</b></p><p><b> 程序清單:</b></p><p> WEI EQU80H</p><p> ADC
62、H1 EQU 70H</p><p> DUAN EQU0CH</p><p> DPH_BUFDATA38H;DPH緩沖</p><p> DISCNT DATA39H ;用于顯示計(jì)數(shù)</p><p> WEI_BUF DATA40H ;位掃描暫存</p>&
63、lt;p> AD_CNT DATA41H ;用于通道計(jì)數(shù)</p><p> AD_BUF DATA42H ;用于轉(zhuǎn)換值暫存</p><p> DIS_BUF1DATA43H</p><p> DIS_BUF2DATA44H</p><p> CF_B_H DATA45H</p&g
64、t;<p> CF_B_L DATA46H</p><p> CF_C_H DATA47H</p><p> CF_C_L DATA48H</p><p> CF_S_H DATA49H</p><p> CF_S_L DATA4AH</p><p> CF_Y_
65、H DATA4BH</p><p> CF_Y_L DATA4CH</p><p> DIG0 DATA30H</p><p> DIG1 DATA31H</p><p> DIG2 DATA32H</p><p> DIG3 DATA33H</p&
66、gt;<p> RUNLEDBITP1.2 ;端口定義</p><p><b> ORG0000H</b></p><p><b> LJMPMAIN</b></p><p> ORG 000BH</p><p> LJMPCH_TRANS
67、</p><p><b> ORG0100H</b></p><p><b> MAIN:</b></p><p> MOV DIS_BUF1 ,#88</p><p> MOV DIS_BUF2,#88</p><p> LCALLCHAIFE
68、N</p><p> MOVDPL,#00H</p><p> MOVDPH,#WEI</p><p> MOVA,#0FFH</p><p> MOVX@DPTR,A</p><p> MOV TMOD,#01H ;啟動(dòng)t0定時(shí)器F方式1,產(chǎn)生50毫秒定時(shí)</p><
69、;p> MOV TH0,#03CH</p><p> MOV TL0,#0B0H</p><p> MOV BEISHU,#40 ;定時(shí)時(shí)間是2s。</p><p> MOV DPH_BUF,#ADCH1</p><p> MOVAD_CNT, #8</p><p><b
70、> M_LOP:</b></p><p> LCALLDIS8</p><p> LJMP M_LOP</p><p> CH_TRANS: ;中斷子程序</p><p> MOV TH0,#03CH ;賦初值</p>
71、<p> MOV TL0,#0B0H</p><p> DJNZBEISHU,T0_OUT</p><p> MOVBEISHU,#40 ;倍數(shù)</p><p> LCALLGETAD</p><p><b> RETI</b></p><p>
72、<b> GETAD:</b></p><p> MOVDPH,DPH_BUF ;讀入數(shù)值</p><p> MOVXA,@DPTR</p><p> MOVAD_BUF,A</p><p> LCALLCONVERT</p><p> INCDPH_BUF
73、</p><p> DJNZAD_CNT, GETAD_NEXT</p><p> MOVDPH_BUF,#ADCH1</p><p> MOVAD_CNT, #8</p><p> GETAD_NEXT:</p><p><b> RET</b></p>&l
74、t;p><b> CONVERT:</b></p><p> MOVA,AD_BUF ;變換電壓子程序</p><p> MOVCF_B_H,B</p><p> MOVCF_B_L,A</p><p> MOVCF_C_H,#27H</p><p
75、> MOVCF_C_L,#10H ;10000</p><p> LCALLDIV16</p><p> MOVDIS_BUF2,CF_S_L ;高位給前兩個(gè)顯示管</p><p> MOVCF_B_H,CF_Y_H </p><p> MOVCF_B_L,CF_Y_L</p
76、><p> MOVCF_C_H,#00H</p><p> MOVCF_C_L,#64H ;100</p><p> LCALLDIV16</p><p> MOVDIS_BUF1,CF_S_L ;高位給前后兩個(gè)顯示管</p><p><b> RET</b><
77、/p><p><b> DIV16:</b></p><p> MOVB, #2</p><p><b> MUL AB</b></p><p> MOV A, B</p><p> MOV B, #100</p><p&g
78、t;<b> DIV AB</b></p><p><b> RET</b></p><p> DELAY:MOV R7, #0FH</p><p> DL1:MOVR6,#0FFH</p><p> DL2:DJNZR6,DL2</p>&
79、lt;p> DJNZR7,DL1</p><p><b> RET</b></p><p><b> DIS8:</b></p><p> MOVDPRT,WEI</p><p> MOVDPTR,#DISTAB</p><p> MOVDIS
80、CNT,#8</p><p> MOVR0,#30H</p><p><b> DISL :</b></p><p> MOVA,@R0 ;讀入數(shù)據(jù)</p><p> MOVCA,@A+DPTR</p><p><b> MOVP0,
81、A</b></p><p> MOVA,WEI</p><p> MOVP1,A </p><p><b> RLA</b></p><p> MOVWEI,A</p><p> LCALLDELAY</p><p> M
82、OVP0,#00H</p><p><b> INCR0</b></p><p> DJNZDISCNT,DISL</p><p> SETB EX1</p><p> SETB EX0</p><p><b> RET</b></
83、p><p> XS_CHAIFEN: ;拆分子程序</p><p> MOV A,DIS_BUF</p><p><b> MOV B,#10</b></p><p><b> DIV AB</b></p><p><b>
84、; MOV 31H,A</b></p><p> MOV 30H,B </p><p><b> RET</b></p><p><b> DISTAB:</b></p><p> DB0C0H,0F9 H,0A4 H, 0B0H,99 H ;0-4</
85、p><p> DB92H,82 H, 0F8H,80 H, 90H ;5-9</p><p><b> END</b></p><p><b> 附 錄 B </b></p><p><b> 數(shù)字電壓表原理圖:</b></p><p>
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)---簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)
- 簡(jiǎn)易電壓表畢業(yè)設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)--簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)
- 簡(jiǎn)易電壓表的制作畢業(yè)設(shè)計(jì)
- 數(shù)字電壓表畢業(yè)設(shè)計(jì)
- 數(shù)字電壓表畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)-數(shù)字電壓表
- 畢業(yè)設(shè)計(jì)---數(shù)字電壓表
- 數(shù)字電壓表畢業(yè)設(shè)計(jì)
- 數(shù)字電壓表設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 數(shù)字電壓表的設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)---數(shù)字電壓表的設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表設(shè)計(jì)
- 直流數(shù)字電壓表畢業(yè)設(shè)計(jì)
- 數(shù)字電壓表畢業(yè)設(shè)計(jì) (2)
- 畢業(yè)設(shè)計(jì)---數(shù)字電壓表的設(shè)計(jì) (2)
- 簡(jiǎn)易數(shù)字電壓表課程設(shè)計(jì)
- 簡(jiǎn)易數(shù)字電壓表 課程設(shè)計(jì)
- 簡(jiǎn)易數(shù)字電壓表課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論