版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)設(shè)計</b></p><p><b> ?。?0 屆)</b></p><p> 基于單片機的數(shù)控電流源設(shè)計</p><p> 所在學院 </p><p> 專業(yè)班級 通信工程
2、 </p><p> 學生姓名 學號 </p><p> 指導(dǎo)教師 職稱 </p><p> 完成日期 年 月 </p><p><b> 摘 要</b><
3、;/p><p> 隨著經(jīng)濟活動轉(zhuǎn)變,世界正在轉(zhuǎn)入高新技術(shù)產(chǎn)業(yè)迅猛發(fā)展的時代,電源技術(shù)的應(yīng)用越來越廣泛。電源技術(shù)是電子技術(shù)中應(yīng)用最廣泛的一種,尤其是數(shù)控電流源,涉及了科研、電氣、電子、系統(tǒng)集成、控制理論、材料等諸多學科領(lǐng)域。直流穩(wěn)壓電源在實驗室等是常用的電子技術(shù)常用的儀器之一,也是必不可少的。在電子電路中,一般會需要穩(wěn)定電壓的直流電源來供電,但是這種傳統(tǒng)的方法功能簡單,又不容易控制,精度低,復(fù)雜度又高,可靠性又不好。
4、普通的直流穩(wěn)壓電源有很多種,但是均存在精度不高等缺點。原因在于它們的輸出電壓都是通過粗調(diào)及細調(diào)來控制調(diào)節(jié),這樣在一個小范圍內(nèi)改變電壓時,很難控制,直接影響到精確度。再者隨著計算機和通訊技術(shù)的發(fā)展,給電力電子技術(shù)提供了廣闊的發(fā)展前景,同時也給電源提出了更高的要求。普通電源由于精確度不高等缺點已不能滿足現(xiàn)實的需要,所以數(shù)控電源技術(shù)在現(xiàn)今社會越來越重要了。</p><p> 本系統(tǒng)以單片機系統(tǒng)為核心而設(shè)計的新一代——
5、數(shù)控直流電源。它不但電路簡單,結(jié)構(gòu)緊湊,價格低廉,性能優(yōu)越,而且由于單片機具有計算和控制能力,利用它對數(shù)據(jù)進行各種計算,從而可排除和減少模擬電路引起的誤差,輸出電壓和限定電流采用數(shù)輸入采用鍵盤方式,電源的外表美觀,操作使用方便,具有較高的使用價值。</p><p> 現(xiàn)今社會,已經(jīng)進入一個高新科技時代,當然,人們對于高科技產(chǎn)品的要求也越來越高。性能好的產(chǎn)品,必有好的電源。精確度高,穩(wěn)定性好,是電源的必然要求。數(shù)
6、控電流技術(shù)在電源穩(wěn)定性和精確度做出了很大的貢獻。</p><p> 本系統(tǒng)通過以單片機為核心來控制,來完成一個精確度高,穩(wěn)定性好的電流源。</p><p> 關(guān)鍵詞:電流源;單片機;精度</p><p><b> Abstract</b></p><p> With the society development
7、, the world is transferred to the era of high-tech industries, power technology is most extensive. Power electronics technology is the most widely used electronic technology of a particular controlled current source. It
8、involves the research, electrical, electronics, systems integration, control theory, materials, and many other areas. DC power supply is commonly used in laboratory instruments with electronic technology. An electronic c
9、ircuit usually needs a stable vo</p><p> This system is DC power supply designed base on MCU. the circuit is simple, and it has the feature of compact, low cost, superior performance, and because of microco
10、ntroller with computing and control, to use its data in a variety of calculations, which can eliminate and reduce errors caused by analog circuit, the output voltage and current limit by a few Input mode using the keyboa
11、rd, power supply looks beautiful and easy to operate with high use value.</p><p> Nowadays, it has become a high-tech era, of course, people of high technology products are increasingly high requirements. P
12、erformance of a good product, there must be a good power supply. High accuracy, good stability, is a necessary requirement for the power supply. Controlled current technology in the power supply stability and accuracy ma
13、de a great contribution.</p><p> Microcontroller is used in the system as the control core, to complete a high accuracy, good stability current source.</p><p> Keywords: Current source; Microc
14、ontroller; Accuracy</p><p><b> 目 錄</b></p><p><b> 1 引 言1</b></p><p> 1.1 設(shè)計任務(wù)1</p><p> 1.2 設(shè)計內(nèi)容1</p><p> 1.3設(shè)計目的和意義1<
15、;/p><p> 2 數(shù)控電流源硬件系統(tǒng)總體設(shè)計2</p><p> 2.1 傳統(tǒng)電流源的設(shè)計方案2</p><p> 2.2 數(shù)控電流源總體設(shè)計方案2</p><p> 2.3 電流源的軟件系統(tǒng)組成3</p><p> 3 數(shù)控電流源硬件模塊設(shè)計4</p><p> 3.
16、1 電源模塊4</p><p> 3.1.1 電源方案確定4</p><p> 3.1.2 電源模塊具體電路4</p><p> 3.1.3 電源模塊PCB設(shè)計4</p><p> 3.2 顯示模塊4</p><p> 3.3 電流輸出模塊6</p><p> 3.
17、3.1 電流輸出電路圖6</p><p> 3.3.2 電流輸出PCB圖錯誤!未定義書簽。</p><p> 3.4 主控模塊6</p><p> 3.4.1 AT89C51介紹6</p><p> 3.4.2 主控模塊電路圖9</p><p> 3.5 D/A模塊9</p>&
18、lt;p> 3.5.1 D/A芯片介紹9</p><p> 3.5.2 D/A模塊電路圖12</p><p> 3.5.3 D/A轉(zhuǎn)換電路PCB圖錯誤!未定義書簽。</p><p> 3.6 A/D模塊13</p><p> 3.6.1 A/D芯片介紹13</p><p> 3.6.2
19、 A/D模塊電路圖14</p><p> 3.7 控制電壓產(chǎn)生電路15</p><p> 3.7.1 控制電壓輸出電路15</p><p> 3.8 鍵盤模塊15</p><p> 4 數(shù)控電流源的軟件總體設(shè)計16</p><p> 4.1 基于單片機控制一個數(shù)控電流源分析16</p
20、><p> 4.1.1 編程語言的選擇16</p><p> 4.1.2 設(shè)計環(huán)境的選擇16</p><p> 4.1.3 總體設(shè)計系統(tǒng)流程圖17</p><p> 5 系統(tǒng)測試18</p><p><b> 6 結(jié)論19</b></p><p> 致
21、 謝錯誤!未定義書簽。</p><p><b> 參考文獻20</b></p><p> 附錄1 主要源程序代碼22</p><p><b> 1 引 言</b></p><p><b> 1.1 設(shè)計任務(wù)</b></p><p>
22、 基于單片機控制設(shè)計一個數(shù)控電流源。完成硬件設(shè)計PCB板制作電路安裝調(diào)試,以及程序設(shè)計。</p><p><b> 1.2 設(shè)計內(nèi)容</b></p><p> ?。?)交流220V供電,輸出最大電壓10V,輸出電流10-200mA。 (2)輸出電流通過鍵盤調(diào)節(jié),步進1mA。 (3)使用LED顯示輸出電流,誤差≤5%。</p><p>
23、1.3設(shè)計目的和意義</p><p> 在這個高科技時代,人們對于高科技產(chǎn)品的需求越來越大,越來越高。電源作為人們生活中不可或缺的電子商品。隨著科技的迅速發(fā)展,電源行業(yè)越來越重視能源的節(jié)約和運行的優(yōu)化狀態(tài)。所以此時數(shù)控電源技術(shù)開始廣泛的應(yīng)用起來。現(xiàn)今社會,產(chǎn)品智能化、數(shù)字化已成為人們追求的一種趨勢,設(shè)備的性能,價格,發(fā)展空間等備受人們的關(guān)注,尤其對電子設(shè)備的精密度和穩(wěn)定度最為關(guān)注。性能好的電子設(shè)備,首先離不開穩(wěn)
24、定的電源,電源穩(wěn)定度越高,設(shè)備和外圍條件越優(yōu)越,那么設(shè)備的壽命更長?;诖?,人們對數(shù)控恒定電流器件的需求越來越迫切。當今社會,數(shù)控電壓技術(shù)已經(jīng)很成熟,但是電流方面特別是數(shù)控電流的技術(shù)才剛剛起步有待發(fā)展,高性能的數(shù)控電流器件的開發(fā)和應(yīng)用存在巨大的發(fā)展空間。精確度高,穩(wěn)定性好,是電源的必然要求。數(shù)控電流技術(shù)在電源穩(wěn)定性和精確度做出了很大的貢獻。</p><p> 2 數(shù)控電流源硬件系統(tǒng)總體設(shè)計</p>
25、<p> 2.1 傳統(tǒng)電流源的設(shè)計方案</p><p> 傳統(tǒng)電流源的設(shè)計一般比較簡單,而且成本不高,但是它有它明顯的缺陷。它是通過電位器來控制基準電壓進行分壓,再進行電壓-電流轉(zhuǎn)化。其主要框圖如下圖2-1:</p><p> 從圖2-1可以明顯看出,傳統(tǒng)電流源的設(shè)計簡單,但是存在一定的不足。第一,傳統(tǒng)電流源輸出的電流完全靠標在電位器或者指針表的讀數(shù)讀出,肉眼讀數(shù)存在明
26、顯的誤差,而且往往不方便。第二,用電位器產(chǎn)生參考電位的方法是不恰當?shù)?在電子元件中電位器是最容易產(chǎn)生噪聲的,對干擾也最為敏感,而且在使用一段時間以后,電位器作為機械元件會出現(xiàn)磨損的情況,此時該電流源的輸出電流將變得不穩(wěn)定,噪聲大幅度提高,如不更換電位器該電流源將無法正常使用。</p><p> 2.2 數(shù)控電流源總體設(shè)計方案</p><p> 本設(shè)計采用以單片機89C51為核心芯片,利
27、用89C51來控制D/A數(shù)據(jù)的輸入并將其轉(zhuǎn)換成模擬量輸出,同時89C51系統(tǒng)把預(yù)置電流送到顯示器上。再改變輸出的電壓量來控制電流的變化,最后輸出的電流通過A/D轉(zhuǎn)化,再把轉(zhuǎn)換的數(shù)字量送到單片機上,同時單片機把實際電流送到顯示器上顯示。此方案的優(yōu)點是成本低,電路簡單,可升級性強。與傳統(tǒng)電流源相比,在原理上有一定的相似。但是不同的是數(shù)控電流源是由單片機控制的D/A提供參考電壓,取代了傳統(tǒng)電流源的電位器,使得不論是在控制精度還是使用壽命上都有
28、很大的提高。另外單片機具有可編程性,可以進行更為復(fù)雜的控制,如輸出特定的波形,和電腦通訊,實現(xiàn)智能化控制等,這些功能都是傳統(tǒng)電流源難于實現(xiàn)的。其總體框圖如下圖2-2。</p><p> 2.3 電流源的軟件系統(tǒng)組成</p><p> 本設(shè)計采用PROTEL 99SE,用此軟件進行原理圖以及PCB圖的制作。PROTEL 99SE軟件設(shè)計系統(tǒng)是一套建立在IBMPC兼容機環(huán)境下的EDA電路集
29、成設(shè)計軟件平臺。它具有電路原理圖設(shè)計、PCB(印制電路板)設(shè)計、電路的層次化設(shè)計、報表制作、電路仿真以及邏輯器件設(shè)計等功能。Microchip公司為PIC系列單片機配備了功能強大的軟件集成開發(fā)系統(tǒng)Mplab,該軟件是一個集成多種單片機應(yīng)用開發(fā)工具軟件于一體的、功能完備的軟件包。</p><p> 開發(fā)環(huán)境我用的是Silicon Laboratories IDE,原因之一是Silicon IDE作為一款Silic
30、on官方出的軟件,無論是是兼容性、還是對新型號芯片的支持都是最好的,并且是專門針對C8051F系列芯片而設(shè)計的軟件。在選擇編程語言時,由于我對C語言更熟悉一些,而且C語言簡潔緊湊,靈活方便,是結(jié)構(gòu)式的語言,在結(jié)構(gòu)上條理清晰,所以選用的是C語言進行編程。</p><p> 數(shù)控電流源硬件模塊設(shè)計</p><p><b> 3.1 電源模塊</b></p>
31、<p> 3.1.1 電源方案確定</p><p> 本設(shè)計采取線性恒流電路,采用線性恒流電路,該方案具有噪聲干擾小,電路簡單,工作穩(wěn)定的特點,但是由于功率器件工作于線性狀態(tài)功率損耗大,發(fā)熱較大,在滿足設(shè)計要求時在極限條件下功率管的消耗功率接近20W。相對于開關(guān)恒流方式進行電流控制,由于功率管只工作于打開或者關(guān)閉狀態(tài),功率管損耗較低。發(fā)熱量很小,但是由于開關(guān)管對強電流進行開關(guān)操作,干擾大大高于線
32、性恒流源。所以我采用線性,但會在其基礎(chǔ)上加入有源慮波,使得電源更為“干凈”。</p><p> 3.1.2 電源模塊具體電路</p><p> 圖3-1 電源電路</p><p> 3.1.3 電源模塊PCB設(shè)計</p><p> 電源模塊為整個電路提供電源,具有電流大,發(fā)熱高的特點,所以在PCB設(shè)計時采用的較粗的導(dǎo)線,并在大電流的
33、地方渡錫處理。</p><p><b> 3.2 顯示模塊</b></p><p> 方案一:使用LED數(shù)碼管顯示。數(shù)碼管采用BCD編碼顯示數(shù)字,對外界環(huán)境要求低,易于維護。但根據(jù)題目要求,如果需要同時顯示給定值和測量值,需顯示的內(nèi)容較多,要使用多個數(shù)碼管動態(tài)顯示,使電路變得復(fù)雜,加大了編程工作量。</p><p> 方案二:使用LCD顯
34、示。LCD具有輕薄短小,可視面積大,方便的顯示漢字數(shù)字,分辨率高,抗干擾能力強,功耗小,且設(shè)計簡單等特點。</p><p> 綜上所述,選擇方案二。LCD顯示原理是利用顯示驅(qū)動器ICM7211(A)M驅(qū)動一個8位的LCD顯示器,由于此顯示器為8位LCD顯示器,而一片ICM7211(A)M只能去驅(qū)動4位LCD,故共需兩片ICM7211(A)M采取級聯(lián)方式才能驅(qū)動顯示器。由圖3-3可知,P2.7作為第一片ICM72
35、11(A)M的片選信號,則地址為7FFFH;P2.6作為第二片ICM7211(A)M的片選信號,則地址為0BFFFH。</p><p> 圖3-2 用ICM72119(A)M級聯(lián)驅(qū)動8位LCD顯示器與MCS51的接口</p><p> 本設(shè)計采用RT19264D STN型漢字圖形點陣液晶顯示模塊,可顯示漢字及圖形,內(nèi)置8192個中文漢字(16X16點陣)、128個字符(12X16點陣
36、)及64X256點陣顯示RAM(GDRAM)。可顯示內(nèi)容為192列× 64行,還帶多種軟件功能:光標顯示、畫面移位、自定義字符、睡眠模式等。</p><p> RT19264D與單片機接口:8位或4位并行/3位串行.在本設(shè)計中,采用8位并行接法,RT19264D與單片機P2口相連,用于顯示設(shè)定值與當前測量值。其接口如下圖3-4所示。</p><p> 圖3-3 RT1926
37、4D接口</p><p> 3.3 電流輸出模塊</p><p> 3.3.1 電流輸出電路圖</p><p> 圖3-4 電流輸出電路圖</p><p><b> 3.4 主控模塊</b></p><p> 3.4.1 AT89C51介紹</p><p>
38、 本設(shè)計以單片機AT89C51為核心芯片,89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS8位微處理器,俗稱單片機。單片機的可擦除只讀存儲器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組
39、合在單個芯片中,ATMEL的89C51是一種高效微控制器,89C2051是它的一種精簡版本。89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。89C51具有128bytes的隨機存取數(shù)據(jù)存儲器,32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級,2層中斷嵌套中斷,6個中斷源,2個16位可編程定時器/計時器,2個全雙工串行通信口,以及片內(nèi)振蕩器和時鐘電路,并與MCS-51兼容。它的引腳圖如下。</p><
40、;p> 圖3-5 AT89C51引腳圖</p><p><b> 管腳說明:</b></p><p> VCC:供電電壓。GND:接地。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原
41、碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被
42、寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特</p><p> 3.4.2 主控模塊電路圖</p><p> AT89C51
43、單片機它內(nèi)部已經(jīng)具備了振蕩電路,只要在AT89C51的兩個引腳(即19、18腳)連接到簡單的石英振蕩晶體的2端即可,晶體的2個管腳也要用30pF的電容耦合到地。</p><p> 圖3-6 主控電路圖</p><p> 3.5 D/A模塊</p><p> 3.5.1 D/A芯片介紹</p><p> 本設(shè)計采用的D/A轉(zhuǎn)換芯片是
44、DAC0832,DAC0832是美國數(shù)據(jù)公司采用過CMOS工藝制造的8位單片梯形電阻式D/A轉(zhuǎn)換器,片內(nèi)帶數(shù)據(jù)鎖存器,電流輸出,輸出電流穩(wěn)定時間為1us,功耗為20mW。</p><p> DAC0832由8位數(shù)據(jù)鎖存器、8位DAC寄存器、8位D/A轉(zhuǎn)換電路以及轉(zhuǎn)換控制電路構(gòu)成,為20腳雙列直插式封裝結(jié)構(gòu),管腳圖3-11及各個管腳的功能如下。</p><p> D0~D7:8位數(shù)據(jù)輸入
45、線,TTL電平,有效時間應(yīng)大于90ns(否則鎖存器的數(shù)據(jù)會出錯);ILE:數(shù)據(jù)鎖存允許控制信號輸入線,高電平有效。</p><p> CS:片選信號輸入線(選通數(shù)據(jù)鎖存器),低電平有效。</p><p> WR1:數(shù)據(jù)鎖存器寫選通輸入線,負脈沖(脈寬應(yīng)大于500ns)有效。由ILE、CS、WR1的邏輯組合產(chǎn)生LE1,當LE1為高電平時,數(shù)據(jù)鎖存器狀態(tài)隨輸入數(shù)據(jù)線變換,LE1的負跳變時將
46、輸入數(shù)據(jù)鎖存。</p><p> XFER:數(shù)據(jù)傳輸控制信號輸入線,低電平有效,負脈沖(脈寬應(yīng)大于500ns)有效。</p><p> WR2:DAC寄存器選通輸入線,負脈沖(脈寬應(yīng)大于500ns)有效。由WR2、XFER的邏輯組合產(chǎn)生LE2,當LE2為高電平時,DAC寄存器的輸出隨寄存器的輸入而變化,LE2的負跳變時將數(shù)據(jù)鎖存器的內(nèi)容打入DAC寄存器并開始D/A轉(zhuǎn)換。</p&g
47、t;<p> WR2:DAC寄存器選通輸入線,負脈沖(脈寬應(yīng)大于500ns)有效。由WR2、XFER的邏輯組合產(chǎn)生LE2,當LE2為高電平時,DAC寄存器的輸出隨寄存器的輸入而變化,LE2的負跳變時將數(shù)據(jù)鎖存器的內(nèi)容打入DAC寄存器并開始D/A轉(zhuǎn)換。</p><p> IOUT2:電流輸出端2,其值與IOUT1值之和為一常數(shù)。</p><p> Rfb:反饋信號輸入線,
48、改變Rfb端外接電阻值可調(diào)整轉(zhuǎn)換滿量程精度。</p><p> Vcc:電源輸入端,Vcc的范圍為+5V~+15V;VREF:基準電壓輸入線,VREF的范圍為-10V~+10V。</p><p> AGND:模擬信號地。</p><p> DGND:數(shù)字信號地。</p><p> DAC0832利用WR1、WR2、ILE、XFER控制
49、信號可以構(gòu)成三種不同的工作方式。</p><p> 1)直通方式——WR1=WR2=0時,數(shù)據(jù)可以從輸入端經(jīng)兩個寄存器直接進入D/A轉(zhuǎn)換器。</p><p> 2)單緩沖方式——兩個寄存器之一始終處于直通,即WR1=0或WR2=0,另一個寄存器處于受控狀態(tài)。</p><p> 3)雙緩沖方式——兩個寄存器均處于受控狀態(tài)。這種工作方式適合于多模擬信號同時輸出的應(yīng)
50、用場合。</p><p> 圖3-7 DAC0832引腳圖</p><p> 圖3-8 DAC0832結(jié)構(gòu)框圖</p><p> 3.5.2 D/A模塊電路圖</p><p> 圖3-9 D/A模塊電路圖</p><p> 3.6 A/D模塊</p><p> 3.6.1
51、A/D芯片介紹</p><p> 本設(shè)計采用的A/D轉(zhuǎn)換芯片是ADC0809,ADC0809是M美國國家半導(dǎo)體公司生產(chǎn)的CMOS工藝8通道,8位逐次逼近式A/D轉(zhuǎn)換器。其內(nèi)部有一個8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行A/D轉(zhuǎn)換。是目前國內(nèi)應(yīng)用最廣泛的8位通用A/D芯片。它是8路輸入通道,8位A/D轉(zhuǎn)換器,即分辨率為8位。具有轉(zhuǎn)換汽艇控制端,轉(zhuǎn)換時間位100us(時
52、鐘位640kHz時),130us(時鐘為500kHz時)。它是單個+5V電源供電,模擬輸入電壓范圍0-+5V,不需要零點和刻度校準,工作溫度范圍為-40~+85攝氏度,低功耗,約15mW。ADC0809是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)如圖3-10左圖,8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型A/D轉(zhuǎn)換器、逐次逼近。ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖3-10所示,它的各個引腳功能如下。&l
53、t;/p><p> IN0~IN7:8路模擬量輸入端。</p><p> 2-1~2-8:8位數(shù)字量輸出端。</p><p> ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路。</p><p> ALE:地址鎖存允許信號,輸入,高電平有效。</p><p> START: A/D轉(zhuǎn)換啟
54、動脈沖輸入端,輸入一個正脈沖(至少100ns寬)使其啟動(脈沖上升沿使0809復(fù)位,下降沿啟動A/D轉(zhuǎn)換)。</p><p> EOC: A/D轉(zhuǎn)換結(jié)束信號,輸出,當A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。</p><p> OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。</p>&
55、lt;p> CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。</p><p> REF(+)、REF(-):基準電壓。</p><p> Vcc:電源,單一+5V。</p><p><b> GND:地。</b></p><p><b> 圖3-10如下。</b></p
56、><p> 圖3-10 ADC0809內(nèi)部結(jié)構(gòu)圖(左)和ADC0809引腳圖(右)</p><p> 3.6.2 A/D模塊電路圖</p><p> 圖3-11 A/D電路圖</p><p> 3.7 控制電壓產(chǎn)生電路</p><p> 3.7.1 控制電壓輸出電路</p><p&g
57、t; 該電路由兩個運算放大器組成,對Vx、Vy進行Vout=Vx+0.005*Vy運算,使得控制精度達到1/51200,達到高精度控制的目的,同時也使得軟件修正成為可能。</p><p> 圖3-12 控制電壓產(chǎn)生電路</p><p><b> 3.8 鍵盤模塊</b></p><p> 在設(shè)計中,使用標準的4x4鍵盤,可以實現(xiàn)0~
58、9數(shù)字輸入,“+”、“-”、“設(shè)置”。其電路圖如圖3-18所示。</p><p> 圖3-13 鍵盤模塊</p><p> 數(shù)控電流源的軟件系統(tǒng)設(shè)計</p><p> 基于單片機控制設(shè)計一個數(shù)控電流源分析</p><p> 4.1.1編程語言的選擇</p><p> 由于C8051F000系列器件使用的是C
59、IP-51微控制器內(nèi)核。CIP-51與MCS-51指令集完全兼容。由于我對C語言更熟悉一些,而且C語言簡潔緊湊,靈活方便,是結(jié)構(gòu)式的語言,在結(jié)構(gòu)上條理清晰,所以選用的是C語言進行編程。</p><p> 4.1.2設(shè)計環(huán)境的選擇</p><p> 開發(fā)環(huán)境我用的是Silicon Laboratories IDE,原因之一是Silicon IDE作為一款Silicon官方出的軟件,無論是
60、是兼容性、還是對新型號芯片的支持都是最好的,并且是專門針對C8051F系列芯片而設(shè)計的軟件。使用Silicon Laboratories IDE的另外一個原因是,Keil可以嵌入在Silicon IDE內(nèi)使用,組成一個即可C編譯又可以進行下載、仿真的平臺,功能與易用性都得到了極大的提升。這個軟件的功能是編寫代碼,然后把編寫好的代碼通過串口寫進C8051F000系統(tǒng)里,從而在系統(tǒng)上測試是否符合自己所設(shè)計的要求。</p>&l
61、t;p> 采用PROTEL 99 SE,用此軟件進行原理圖以及PCB圖的制作。PROTEL 99SE軟件設(shè)計系統(tǒng)是一套建立在IBM PC兼容機環(huán)境下的EDA電路集成設(shè)計軟件平臺。它具有電路原理圖設(shè)計、PCB(印制電路板)設(shè)計、電路的層次化設(shè)計、報表制作、電路仿真以及邏輯器件設(shè)計等功能。Microchip公司為PIC系列單片機配備了功能強大的軟件集成開發(fā)系統(tǒng)Mplab,該軟件是一個集成多種單片機應(yīng)用開發(fā)工具軟件于一體的、功能完備的
62、軟件包。現(xiàn)今社會,由于電子產(chǎn)品的飛速發(fā)展,protel軟件得到了非常廣泛的應(yīng)用,更是涌現(xiàn)很多PCB工程師。生產(chǎn)的電子產(chǎn)品在追求外形的美觀,攜帶更方便等等要求,讓PCB印制電路板不得不根據(jù)外形改動,并且大小越做越小,所以在PCB布線的時候,單層板已經(jīng)不能滿足用戶的要求,必須要用多層板來完成。而且在多達幾十,幾百,甚至幾千個元件,要安放在一塊小小的PCB板上,單層板是不可能做到的。</p><p> 在我的設(shè)計中,
63、也想讓它更貼近生活,更有工業(yè)生產(chǎn)的價值和趨勢,我對之前的PCB印制電路板做了更進一步的改善,手動繪制了雙層板。</p><p> 4.1.3 總體設(shè)計系統(tǒng)流程圖</p><p> 在程序設(shè)計之前,都要對所要設(shè)計的東西進行邏輯化的思考,明確設(shè)計思路。軟件系統(tǒng)流程圖,如圖所示:</p><p> 圖4-1 軟件系統(tǒng)流程圖</p><p>&
64、lt;b> 系統(tǒng)測試</b></p><p> 在數(shù)字電子技術(shù)方面,根據(jù)資料得來的原理圖,雖然對原理圖也有深入研究,包括各個引腳的功能,但是繪制成的PCB印制電路板,經(jīng)過對線路連接的反復(fù)檢查,檢查也沒有什么問題,但是數(shù)碼管無法顯示,用電壓表測量,0832沒有輸出,最終失敗了。</p><p> 在單片機設(shè)計方面,所使用的Silicon Laboratories ID
65、E軟件,各項設(shè)置正確,代碼編譯無誤,可是顯示代碼字節(jié)太大,無法將代碼燒入單片機中。詢問老師,也按照老說的建議,用導(dǎo)入Keil c文件的方法,估計是自己對軟件還是不熟悉,而導(dǎo)致了代碼還是無法載入。</p><p><b> 6 結(jié)論</b></p><p> 本次畢業(yè)設(shè)計,按照任務(wù)書的要求去實現(xiàn),以單片機為核心做出一個精確度高,穩(wěn)定性能好的數(shù)控電流源。在選材過程中
66、也很重要,在測試板子的時候,顯示器無法顯示,代碼導(dǎo)入出現(xiàn)一系列問題,在老師的幫助下也沒有很好的解決此問題,但從中我還是學到了很多。在整個過程中,我學習到一個新軟件的使用,對protel軟件有了更多多的了解。</p><p><b> 參考文獻</b></p><p> [1]李業(yè)德,趙光遠,張景元.基于單片機的數(shù)控直流源設(shè)計[J].微計算機信息,2006,22(1
67、0-2):249-252.</p><p> [2]陳德俊,王玉山.基于單片機的數(shù)控交流源設(shè)計[J].設(shè)計分析,2009,9,30(3):30-32.</p><p> [3]劉公致.新型數(shù)字直流電流源設(shè)計[J].杭州電子工業(yè)學院學院報,2004,6,24(3)19-22. </p><p> [4]梁龍學.一種新型高精度數(shù)控直流電流源[J].
68、蘭州交通大學學院報,2005,12,24(6):100-102.</p><p> [5]趙建玉,王新江,李聰,楊波.智能電流源的設(shè)計[J].山東建材學院學報,1999,9,13(3):280-281.</p><p> [6]萬中波.基于單片機控制的數(shù)控直流穩(wěn)壓電源[J].湖南科技學院報,2007,7,28(4):31-33.</p><p> [7]胡愛閩
69、.基于單片機的多功能數(shù)控直流穩(wěn)壓電源[J].江西煤炭科技,2004,4,14(2):48-49.</p><p> [8]徐柳娟,楊啟堯.基于單片機SPCE061A數(shù)控直流電流源的設(shè)計[J].浙江水利水電專科學校學報,2010,9,22(3):61-64.</p><p> [9]張廣,張鶯耀,唐俊銓.語音播報數(shù)控直流電流源的設(shè)計[J].機械工程與自動化,2006,6,3(136):1
70、24-127.</p><p> [10]高美娟,徐進,田景文.基于ATmega128L的高精度數(shù)控恒流源[J].機床與液壓,2007,7,35(7):189-192.</p><p> [11]王偉生,鄭小真.數(shù)控直流電流源的設(shè)計與實現(xiàn)[EB/OL],[2010.11.11].沈陽單片機開發(fā)網(wǎng).www.symcukf.com.</p><p> [12]王韜
71、,盧暢.數(shù)控直流電源的一種實現(xiàn)方法[J],臺州學院學報,2005,12,27(6):38-42.</p><p> [13]陳偉杰,張虹.基于混合最優(yōu)算法的高精度數(shù)控直流電源設(shè)計[EB/OL],[2010.11.11].電子技術(shù)論壇.http://bbs.elecfans.com.</p><p> [14]Luis Moran,Pedro Godoy,Rogel Wallace,Ju
72、an Dixon.A new current control strategy for active power filters using three PWM voltage source inverters[EB/OL],[2010.11.11].www.google.com.</p><p> [15]CHEN MINGJIE, WANG XIANGQIAO, CAI ZHONGJ IAN. Des ig
73、n and Realization of a High- Precis ion NumericalControl Current Source[J].中文核心期刊,2008,24(2-1):180-182.</p><p> 附錄1 原理圖電路總圖</p><p><b> 附錄2 PCB圖</b></p><p> 附錄3 主要源程序代
74、碼</p><p> #include <reg51.h></p><p> #include <stdio.h></p><p> #include <absacc.h></p><p> #include <intrins.h></p><p> #incl
75、ude "string.h"</p><p> #define data_OUT XBYTE[0x7fff]// 數(shù)據(jù)輸出口</p><p> #define IN0 XBYTE[0X0000]//通道0 </p><p> #define IN1 XBYTE[0X0001]</p><p> #def
76、ine IN2 XBYTE[0X0002]</p><p> #define IN3 XBYTE[0X0003]</p><p> #define IN4 XBYTE[0X0004]</p><p> #define IN5 XBYTE[0X0005]</p><p> #define IN6 XBYTE[0X0006]&l
77、t;/p><p> #define IN7 XBYTE[0X0007]</p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> void TransferData(char data1,bit DI) ;</p>
78、;<p> sbit RS = P0^5;</p><p> sbit WRD = P0^6;</p><p> sbit E = P0^7;</p><p> sbit PSB = P0^3;</p><p> sbit RES = P0^4;</p><p> sbit ad_b
79、usy=P3^5;</p><p> int dianliu;</p><p> int chanshu;</p><p> int checkdianliu;</p><p> uchar ad[8];</p><p> uchar code IC_DAT[]={</p><p>
80、 " 基于51單片機 " </p><p> " 數(shù)控電流源 "</p><p> " "</p><p> " "</p><p><b> };</b>&l
81、t;/p><p> void delay(unsigned int N) </p><p><b> {</b></p><p> unsigned int i; </p><p> for(i=0;i<N;i++);</p><p><b> }</b>&l
82、t;/p><p> /****************************數(shù)字信號輸出*******************/</p><p> void conversion_once_0832(unsigned char out_data)</p><p><b> {</b></p><p> data_O
83、UT = out_data;//輸出數(shù)據(jù)</p><p> delay(10);//延時等待轉(zhuǎn)換</p><p><b> }</b></p><p> void AD0809(uchar idata *x)</p><p><b> {</b></p><
84、p><b> uchar i;</b></p><p> data uchar xdata *ad_adr;</p><p> ad_adr=&IN0;</p><p> for(i=0;i<8;i++)</p><p><b> {</b></p>&l
85、t;p> *ad_adr=0;</p><p> ad_busy=0; </p><p> while(ad_busy==0);</p><p> x[i]=*ad_adr;</p><p><b> ad_adr++;</b></p><p&g
86、t;<b> }</b></p><p><b> }</b></p><p> void initinal(void) //LCD字庫初始化程序</p><p><b> {</b></p><p> delay(40);
87、 //大于40MS的延時程序</p><p> PSB=1; //設(shè)置為8BIT并口工作模式</p><p> delay(1); //延時</p><p> RES=0; //復(fù)位</p><p> delay(1);
88、 //延時</p><p> RES=1; //復(fù)位置高</p><p> delay(10);</p><p> TransferData(0x30,0); //Extended Function Set :8BIT設(shè)置,RE=0: basic instruction set, G=0 :graphic display OF
89、F</p><p> delay(100); //大于100uS的延時程序</p><p> TransferData(0x30,0); //Function Set</p><p> delay(37); ////大于37uS的延時程序</p><p> TransferData(0x
90、08,0); //Display on Control</p><p> delay(100); //大于100uS的延時程序</p><p> TransferData(0x10,0); //Cursor Display Control光標設(shè)置</p><p> delay(100); //大于100uS的延時
91、程序</p><p> TransferData(0x0C,0); //Display Control,D=1,顯示開</p><p> delay(100); //大于100uS的延時程序</p><p> TransferData(0x01,0); //Display Clear</p><p> del
92、ay(10); //大于10mS的延時程序</p><p> TransferData(0x06,0); //Enry Mode Set,光標從右向左加1位移動</p><p> delay(100); //大于100uS的延時程序</p><p><b> }</b></p>
93、<p> void lcd_mesg(unsigned char code *adder1)</p><p><b> {</b></p><p> unsigned char i;</p><p> TransferData(0x80,0); //Set Graphic Display RAM Address<
94、/p><p> delay(100);</p><p> for(i=0;i<32;i++)</p><p><b> {</b></p><p> TransferData(*adder1,1);</p><p><b> adder1++;</b></p
95、><p><b> }</b></p><p> TransferData(0x90,0); //Set Graphic Display RAM Address</p><p> delay(100);</p><p> for(i=32;i<64;i++)</p><p><b
96、> {</b></p><p> TransferData(*adder1,1);</p><p><b> adder1++;</b></p><p><b> }</b></p><p><b> }</b></p><p&g
97、t; void TransferData(char data1,bit DI) //傳送數(shù)據(jù)或者命令,當DI=0是,傳送命令,當DI=1,傳送數(shù)據(jù).</p><p><b> {</b></p><p><b> WRD=0;</b></p><p><b> RS=DI;</b>&l
98、t;/p><p><b> delay(1);</b></p><p><b> P3=data1;</b></p><p><b> E=1;</b></p><p><b> delay(1);</b></p><p>&l
99、t;b> E=0;</b></p><p><b> }</b></p><p> /********************************************************************</p><p> * 名稱 : Keyscan()</p><p>
100、 * 功能 : 實現(xiàn)按鍵的讀取。下面這個子程序是按處理 矩陣鍵盤 的基本方法處理的。</p><p><b> * 輸入 : 無</b></p><p> * 輸出 : 按鍵值</p><p> ***********************************************************************/
101、</p><p> uchar Keyscan(void)</p><p><b> {</b></p><p> uchar i,j, temp, Buffer[4] = {0xef, 0xdf, 0xbf, 0x7f};</p><p> for(j=0; j<4; j++)</p>&l
102、t;p><b> {</b></p><p> P1 = Buffer[j];</p><p> /*以下三個_nop_();作用為讓 P1 口的狀態(tài)穩(wěn)定*/</p><p><b> _nop_();</b></p><p><b> _nop_();</b>
103、</p><p><b> _nop_();</b></p><p> temp = 0x01;
104、 </p><p> for(i=0; i<4; i++)</p><p><b> {</b></p><p> if(!(P1 & temp)) </p><p><b> {</b></p><p
105、> return (i+j*4); //返回取得的按鍵值</p><p><b> }</b></p><p> temp <<= 1;</p><p><b> }</b></p><p><b> }</b></p><
106、;p><b> }</b></p><p> void main()</p><p> { uchar ad[8]={0,0,0,0,0,0,0,0};</p><p> initinal();</p><p> lcd_mesg(IC_DAT);</p><p> di
107、anliu=Keyscan();</p><p> while(1){ </p><p> conversion_once_0832(dianliu);</p><p> AD0809(ad);</p><p> checkdianliu=ad[0];</p><p> if(checkdianliu==d
108、ianliu) {chanshu=Keyscan() ;if((chanshu&&0x80)==0x80) dianliu=Keyscan(); } //掃描鍵盤最高位,查詢是否重新設(shè)置電流</p><p> if(checkdianliu!=dianliu){ dianliu++;conversion_once_0832(dianliu);}}} //DAC補償&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機的數(shù)控電流源設(shè)計【畢業(yè)論文】
- 基于單片機的數(shù)控電流源畢業(yè)論文設(shè)計
- 基于單片機的數(shù)控直流電流源的設(shè)計畢業(yè)論文
- 基于單片機的數(shù)字直流電流源設(shè)計畢業(yè)論文
- 基于單片機的數(shù)控直流電流源設(shè)計
- 基于單片機的數(shù)控電流源設(shè)計【任務(wù)書】
- 畢業(yè)論文--基于單片機簡易數(shù)控直流電壓源的設(shè)計
- 畢業(yè)論文--基于單片機簡易數(shù)控直流電壓源的設(shè)計
- 基于單片機的數(shù)字直流電流源設(shè)計畢業(yè)論文終稿
- 基于單片機的電流智能檢測系統(tǒng)畢業(yè)論文
- 單片機控制電流源設(shè)計
- 基于atmega16單片機閉環(huán)控制的數(shù)控電流源設(shè)計
- 畢業(yè)論文基于單片機的時鐘設(shè)計
- 單片機畢業(yè)論文--基于單片機的led顯示屏設(shè)計
- 51單片機畢業(yè)論文---基于單片機的進制換算
- 基于單片機的畢業(yè)論文-- 基于51單片機的搶答器設(shè)計
- 基于單片機控制設(shè)計一個數(shù)控電流源【開題報告】
- 基于單片機的畢業(yè)論文-- 基于51單片機的搶答器設(shè)計
- 基于單片機數(shù)控直流電源設(shè)計畢業(yè)論文
- 基于單片機數(shù)字電源設(shè)計畢業(yè)論文
評論
0/150
提交評論