版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 學 院</b></p><p> 本科畢業(yè)論文(設計)</p><p> 基于單片機的智能聲光控開關</p><p><b> XXXXX</b></p><p> 專 業(yè) 名 稱 電氣工程及其自動化
2、 </p><p> 申請學士學位所屬學科 工科 </p><p> 指導教師姓名、職稱 XXXXXXXX </p><p> 2011 年 6 月 8 日</p><p><b> 摘 要</b>&l
3、t;/p><p> 聲光控開關的原理是只有在天黑以后,當有人走過樓梯通道,發(fā)出腳步聲或其它聲音時,樓道燈會自動點亮,提供照明,當人們進入家門或走出公寓,樓道燈延時幾分鐘后會自動熄滅。在白天,即使有聲音,樓道燈也不會亮,可以達到節(jié)能的目的。 </p><p> 本文以LGS公司生產(chǎn)的GMS97C2051單片機為核心,研究聲光控開關的設計,采用串行A/D對聲音信號的采集,可以通過軟件來
4、調(diào)節(jié)對聲音的靈敏度。單片機軟件實施對光度的判斷,使開關在白天時即使有聲音也不工作。文章應用了過零啟動技術,開關工作在頻繁的開關狀態(tài)時不易損壞可控硅,延長了聲控開關的使用壽命。文章中還加入了看門狗電路,在工作中可以起到抗干擾的作用,大大加強了開關的可靠性。</p><p> 關鍵詞:聲光控,智能,節(jié)能,可靠性。</p><p><b> ABSTRACT</b>&l
5、t;/p><p> The principle of acoustic optical switch is only after dark, when someone pass stair channel, issued, or other sounds of footsteps will provide automatic lit corridor, lighting, when people enter the
6、 house or apartment corridor lights out several minutes automatically delay extinguished. During the day, even a voice, corridor lights also will not light, can achieve the purpose of saving energy.</p><p>
7、 In this paper GMS97C2051 LGS company production, the single-chip microcomputer is thedesign of acoustic light-activated switch, the serial A/D for sound signal collection, by software to adjust the sensitivity to sound.
8、 Single-chip microcomputer software implementation on photometric judgment to make the switch in the daytime, even though there is voice doesn't work. Article applied zero start up technology, switch work in frequent
9、 switch to thyyistoy andextendedofsound-controlled. Article also </p><p> Keywords: sound, the intelligent controller,energy-saving, reliability. </p><p><b> 目 錄</b></p><
10、;p><b> 1. 緒論1</b></p><p> 1.1 課題背景1</p><p> 1.2 課題現(xiàn)狀1</p><p> 1.3 課題意義1</p><p> 2.系統(tǒng)設計方案2</p><p> 2.1 課題的研究內(nèi)容2</p>&l
11、t;p> 2.2技術方案的選擇2</p><p> 3.系統(tǒng)結構與工作原理3</p><p> 3.1 系統(tǒng)結構3</p><p> 3.2 系統(tǒng)的工作原理5</p><p> 4.硬件系統(tǒng)的設計5</p><p> 4.1 聲音信號采集電路的設計5</p><
12、;p> 4.2 光信號判斷電路的設計7</p><p> 4.3 過零啟動保護電路的設計7</p><p> 4.4定時電路的設計9</p><p> 4.5驅動輸出電路的設計10</p><p> 4.6電源設計10</p><p> 4.7 看門狗電路的設計11</
13、p><p> 4.7.1 簡介看門狗電路及其作用11</p><p> 4.7.2 X5045特性介紹12</p><p> 4.8. PCB板的制作的設計13</p><p> 4.8.1 PROTEL DXP 2004的概述13</p><p> 4.8.2 Protel原理圖界面1
14、4</p><p> 4.8.3 電路原理圖的設計流程14</p><p> 4.8.4 PCB板的繪制原則15</p><p> 4.8.5 Protel PCB設計流程16</p><p> 4.8.6 印制電路板(PCB)的繪制過程如下所示:17</p><p> 4.8.7 焊制電
15、路板如下所示19</p><p> 5. 軟件設計20</p><p> 5.1 軟件設計語言的選擇20</p><p> 5.2 程序流程圖21</p><p> 5.3 主程序設計22</p><p> 5.4 延時程序設計22</p><p> 5.5
16、 TLC2543讀寫程序設計22</p><p> 5.6 DS1302驅動程序設計22</p><p> 5.7 X5045驅動程序設計22</p><p><b> 6系統(tǒng)的調(diào)試23</b></p><p> 6.1 調(diào)試過程23</p><p> 6.2 調(diào)試結果
17、及經(jīng)驗總結25</p><p><b> 7總結25</b></p><p><b> 8附錄26</b></p><p><b> 參考文獻33</b></p><p><b> 致 謝34</b></p><p&
18、gt;<b> 1. 緒論</b></p><p><b> 1.1 課題背景</b></p><p> 當今社會的主潮流是:降低能耗,節(jié)約能源,注重環(huán)保。聲光控開關體積小,外形美觀,反應靈敏,制作容易,是公共場合照明開關的理想選擇,被譽為:“長明燈的克星”。公共場所和居民居住區(qū)的公共樓道普遍使用機械手動開關,由于各種原因往往出現(xiàn)許多燈泡
19、點亮長明的現(xiàn)象,故使燈泡壽命短,浪費電量,為國家、單位、個人造成經(jīng)濟損失。另外,由于頻繁開關或其他人為因素,墻壁開關的損壞率很高,既增大了維修量、浪費了資金,又容易造成事故隱患。因此,設計研制一種電路新穎、安全節(jié)電、結構簡單、安裝方便的聲光雙控白熾燈節(jié)能自動開關顯得相當有必要。</p><p><b> 1.2 課題現(xiàn)狀</b></p><p> 公共場所和居民
20、居住區(qū)的公共樓道普遍使用機械手動開關,由于各種原因往往出現(xiàn)許多燈泡點亮長明的現(xiàn)象,故使燈泡壽命短,浪費電量,為國家、單位、個人造成經(jīng)濟損失。因此,設計一個基于單片機的聲光控開關系統(tǒng),使公共場所和居民居住區(qū)的公共樓道燈在白天時不亮,晚上聞聲自亮,待人走后,幾十秒后自動關閉,既方便,又省電。</p><p><b> 1.3 課題意義</b></p><p> ?。?
21、)利用單片機作為中央處理器;</p><p> ?。?)具有光控功能,白天不亮燈,晚上有聲音時亮燈;</p><p> ?。?)延時時間可調(diào)節(jié);</p><p> (4)具有過零檢測功能;</p><p> ?。?)所設計的開關系統(tǒng)應做到節(jié)能、智能、耐用、可靠性高以及維護方便。</p><p><b>
22、 2.系統(tǒng)設計方案</b></p><p> 2.1 課題的研究內(nèi)容</p><p> 運用單片機可以設計出智能型的聲控開關,電路設計好后,運用軟件編程來實現(xiàn)其功能,靈活方便,修改簡單,在使用過程中更加的安全節(jié)電,智能環(huán)保。</p><p><b> 技術方案的選擇</b></p><p> 目前的
23、聲控開關大多都是應用模擬電子技術進行設計,分立元件多,不可靠,而且許多聲控開關的平均使用壽命不長,主要是因為電路作頻繁的開關,啟動電流非常大,導致功率元件可控硅由于過載而損壞。如果在設計中采用開關電壓過零保護技術,可消除白熾燈開啟瞬間的大電流沖擊,有效地防止可控硅元件啟動時的電流過載,大大地延長了開關的使用壽命,并且可以起到保護燈泡的作用。</p><p> 如今單片機技術已經(jīng)相當成熟,未來的發(fā)展方向趨向于運用
24、單片機可以設計出智能型的聲控開關,電路設計好后,運用軟件編程來實現(xiàn)其功能,靈活方便,修改簡單。在使用過程中更加的安全節(jié)電,智能環(huán)保。</p><p> 首先單片機是一種集成在電路芯片,是采用超大規(guī)模集成電路技術把具有數(shù)據(jù)處理能力的中央處理器CPU隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)、定時器/計時器等功能(可能還包括顯示驅動電路、脈寬調(diào)制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊硅
25、片上構成的一個小而完善的計算機系統(tǒng)。</p><p><b> 單片機的特點:</b></p><p> (1) 種類多,型號全;</p><p> ?。?) 提高性能,擴大容量,性能價格比高;</p><p> ?。?) 增加控制功能,向真正意義上的“單片”機發(fā)展;</p><p><
26、b> ?。?) 低消耗;</b></p><p> ?。?) C語言開發(fā)環(huán)境,友好的人機互交環(huán)境。</p><p><b> 單片機的優(yōu)點:</b></p><p> ?。?) 使用壽命長;</p><p> ?。?) 運行速度越來越快;</p><p> ?。?) 低噪聲和高
27、可靠性技術;</p><p> ?。?) OTP與掩膜。</p><p> 綜上所述,單片機的特點和優(yōu)點符合制作智能聲光控開關的條件,并且具有準確性和節(jié)能性。</p><p> 3.系統(tǒng)結構與工作原理</p><p><b> 3.1 系統(tǒng)結構</b></p><p> 設計聲光控開關,
28、最起碼要考慮三個問題,其一是燈泡的開關控制,這是由220V市供電。其二是光控制,使其在有光時,即使有聲音也不能亮。其三就是聲音控制,在晚上或光線不足時,只要有人經(jīng)過,發(fā)出聲音,燈泡就會點亮。</p><p> 設計的整體方案圖如圖1所示。CPU以GMS97C2051單片機為核心,GMS97C2051是LG公司生產(chǎn),引腳功能和指令系統(tǒng)與MCS-51兼容的20引腳封裝單片機,片內(nèi)含2K字節(jié)的EPROM,與MCS-5
29、1的主要不同之處是少了P0和P1口,能方便地用于不需外擴程序存儲器的應用場合,達到簡化電路、縮小體積、減小損耗和降低成本的目的。</p><p> 整個設計包括以下幾個模塊:</p><p> 聲信號采集模塊,該模塊主要是負責聲音信號的采集并放大,再經(jīng)過A/D轉換器輸入到單片機。</p><p> 聲信號采集模塊,該模塊主要是負責聲音信號的采集并放大,再經(jīng)過A
30、/D轉換器輸入到單片機。</p><p> 過零保護模塊,該模塊主要是負責聲音信號的采集并放大,再經(jīng)過A/D轉換輸入到單片機。</p><p> 光信號采集模塊,對光信號進行處理,電路當中有光信號時,輸出一電平信號給單片機,當晚上或光線較暗時輸出一反向信號給單片機,由單片機作出判斷。</p><p> 時鐘定時模塊,運用一時鐘芯片,起到定時功能,當燈亮后,一定
31、定時時間到,即自動熄滅。</p><p> 看門狗模塊,對現(xiàn)場干擾起保護作用,防止單片機的程序跑飛,使使使之輸出一電壓值,到可控使可控硅打開。</p><p> 輸出驅動模塊,由單片機控制,使之輸出一電壓值,到可控硅,使可控硅打開。</p><p><b> 圖1整體方案圖</b></p><p> 3.2 系
32、統(tǒng)的工作原理</p><p> 采用串行A/D對聲音信號的采集,可以通過軟件來調(diào)節(jié)對聲音的靈敏度。單片機軟件實施對光度的判斷,使開關在白天時即使有聲音也不工作,在晚上聞聲自亮。</p><p><b> 4.硬件系統(tǒng)的設計</b></p><p> 4.1 聲音信號采集電路的設計 </p><p><b&
33、gt; 圖2聲信號采集電路</b></p><p> 如圖2所示為聲音信號采集電路。R6為聲傳感器,當沒有聲音時,其輸出為低電壓信號,若有聲音時,輸出一電壓值,該電壓值經(jīng)過運算放大器OP07放大,放大倍數(shù)為R2/R4,R2為可變電阻,可以調(diào)節(jié)其阻值,使其放大倍數(shù)改變,起到調(diào)節(jié)聲音靈敏度的作用。</p><p> 下圖TLC2543為A/D轉換器,TLC2543采用串行接口
34、,與外圍電路的連線簡單,三個控制輸入端為CS(片選)、輸入/輸出時鐘(I/O CLOCK)以及串行數(shù)據(jù)輸出端(DATA INPUT)。片內(nèi)的14通道多路器可以選擇11個輸入中的任何一個或3個內(nèi)部自測試電壓中的一個,采用一保持是自動的,轉換結束,EOC輸出變高。</p><p> 圖3 TCL2543A/D轉換器</p><p> TLC2543的引腳排列如圖1所示。引腳功能說明如下:
35、 AIN0~AIN10:模擬輸入端,由內(nèi)部多路器選擇。對4.1MHz的I/O CLOCK,驅動源阻抗必須小于或等于50Ω; CS:片選端,CS由高到低變化將復位內(nèi)部計數(shù)器,并控制和使能DATA OUT、DATA INPUT和I/O CLOCK。CS由低到高的變化將在一個設置時間內(nèi)禁止DATA INPUT和I/O CLOCK; DATA INPUT:串行數(shù)據(jù)輸入端,串行數(shù)據(jù)以MSB為前導并在I/O CLOCK的前4個上升沿移入4位地
36、址,用來選擇下一個要轉換的模擬輸入信號或測試電壓,之后I/O CLOCK將余下的幾位依次輸入; DATA OUT:A/D轉換結果三態(tài)輸出端,在CS為高時,該引腳處于高阻狀態(tài);當CS為低時,該引腳由前一次轉換結果的MSB值置成相應的邏輯電平;EOC:轉換結束端。在最后的I/O CLOCK下降沿之后,EOC由高電平變?yōu)榈碗娖讲⒈3值睫D換完成及數(shù)據(jù)準備傳輸; VCC、GND:電源正端、地; REF+、REF-:正、負基
37、準電壓端。通常REF+接VCC,REF-接GND。最大輸入電壓范圍取決于兩</p><p> TLC2543的主要特性如下:</p><p> ?。?)11個模擬輸入通道;</p><p> (2)66ksps的采樣速率;</p><p> ?。?)最大轉換時間為10μs;</p><p> ?。?)SPI串行接口
38、;</p><p> ?。?)線性度誤差最大為±1LSB;</p><p> ?。?)低供電電流(1mA典型值);</p><p> (7)掉點模式電流為4μA。</p><p> 由于TLC2543具有以上特點,其轉換速度快,與單片機接口簡單,占用的I/O口少,因此在本設計中選擇進行A/D轉換,用于采集聲音信號。</p&
39、gt;<p> 4.2 光信號判斷電路的設計</p><p> 樓道上的聲控開關出了聲音控制外,還必須有光控功能,即在白天時無論有無聲音,都不會點亮燈泡,只有在夜晚或是光線較暗時,發(fā)出聲音后,才會開燈。</p><p> 這就必須設計一個光控電路,原理圖如圖4所示。</p><p> 圖4 光信號判斷電 </p><p
40、> 圖中D1為光敏電阻器,光敏電阻器的主要功能是,當沒有光照或光線不足時,其阻值較大,達到兆歐級以上,相當于處于短路狀態(tài),此時R1電位器中間抽頭輸出為低電平。而當有光照時,光敏電阻阻值下降,阻值相當小,此時電位器R1的中間抽頭輸出為高電位。LM393和電位器R8組成一電壓比較器,當同相輸入端電位高于反相輸入端時,LM393輸出一高電平,反之,當反相輸入端電位高于同相輸入端時,LM393輸出一低電平,輸出信號經(jīng)過具有施密特功能的反
41、相器74LS14,送到單片機,由單片機進行檢測,判斷是否有光照。</p><p> 4.3 過零啟動保護電路的設計</p><p> 普通的白熾燈正常發(fā)光時的燈絲與不發(fā)光時燈絲電阻值相差甚遠,從而使得其在啟動瞬間的沖擊電流非常大,例如一只60W的燈泡,在正常發(fā)光時,電阻約為800歐,工作在標準市電220V時,工作電流不到0.3A。然而在不放光時,燈絲的電阻阻值約為6歐,當啟動時,電流
42、會很大,約有3.5A左右。這種大電流的沖擊,很容易損壞可控硅。如圖5為白熾燈啟動時的電流波形圖。</p><p> 圖5 白熾燈啟動電流波形圖</p><p> 市電電壓是交流220V,交流電始終是從零值到峰值的變化,只要使白熾燈在零值或零值附近啟動,就可以避免大電流的沖擊。如圖6為過零啟動保護電路。D2為整流橋,SCR為可控硅,過零啟動主要是由電阻Rx1~Rx5,二極管D3和二極管O
43、6組成。Rx2~Rx3是采樣電阻,當整流橋2號端子的電壓處于低電壓時,Rx2和Rx3之間的電壓也很低,Q6處于截止工作狀態(tài),protect端輸出高電平。當整流橋的2號端口為高電壓時,Rx2和Rx3之間的電壓亦很高,使Q6工作在導通狀態(tài),protect端輸出低電平。把protect的低電平信號送到單片機的I/O上進行檢測,由單片機作出判斷,再決定SCR端得電壓值,當protect為高,此時的電壓為低,可以驅動SCR導通,點亮白熾燈,當pr
44、otect為低,此時的電壓為高,使SCR關閉,暫時不點亮白熾燈,等到過零點電位時才運作。因此,無論什么時候有聲音信號來,只有在低電位時,才驅動SCR可控硅打開,聲控信號才起作用,實現(xiàn)零壓啟動。</p><p> 圖6 過零啟動保護電路</p><p> 白熾燈點亮以后,可控硅SCR導通,二極管D3的陽極電位就會下降,此時二極管D3就起到了過零電壓啟動取消的作用。當有高電壓來時,Rx1與
45、Rx2之間的電位就會高于D3的陽極電位,二極管導通,從而使Q6的基極輸入電位下降,有效地避免了燈泡的閃爍現(xiàn)象。</p><p><b> 定時電路的設計</b></p><p> 聲控開關在打開后,需要定時一定的時間,一般為幾十秒,設計時可以借助時鐘芯片,這里選用一款美國DALLAS公司生產(chǎn)的高性能、低功耗、帶RAM的實時時鐘芯片DS1302.</p>
46、<p> DS1302與CPU通過三線接口同步通信,其接口電路如圖7所求。</p><p><b> 圖7 定時電路</b></p><p><b> 驅動輸出電路的設計</b></p><p> 前面提到,當單片機檢測到聲光信號后,要控制圖6中的SCR可控硅導通,才能點亮燈泡,因此要設計一個驅動輸出
47、電路。</p><p><b> 圖8 驅動輸出電路</b></p><p> 如圖8所示,用一個反向器與一個NPN型的三極管,一般的8050或9013都可以,再加一個上位電阻,此處用一個10K的電位器,方便可調(diào)。單片機的一個I/O端口控制74LS14,使三極管關斷截止或導通閉合。</p><p> 當單片機檢測到有聲光信號時需要驅動可控
48、硅導通,則單片機給一個高電平信號,經(jīng)反向器反為低電平,三極管截止,SCR輸出端為高,打開可控硅,點亮燈泡。反之,單片機給一個低電平,使三極管導通,SCR端輸出為低,可控硅截止,燈泡不亮。</p><p><b> 電源設計</b></p><p> 燈泡的工作電壓為220V,但控制器的工作電壓為5V,所以必須設計一個電源電路,取得5V的低電壓。</p>
49、<p> 如圖9所示,ZI為9V穩(wěn)壓管,C7~C10為濾波電容,D4、.D5為保護二極管,7805為三端穩(wěn)壓管。220V經(jīng)過整流后,經(jīng)過Z1穩(wěn)壓輸出9V,再經(jīng)C9和C7濾波輸出直流電壓,從7805的1腳輸出+5V.。</p><p><b> 圖9 電源設計</b></p><p> 4.7 看門狗電路的設計</p><p&
50、gt; 4.7.1 簡介看門狗電路及其作用</p><p> 在由單片機構成的微型計算機系統(tǒng)中,由于單片機的工作常常會受到來自外界電磁場的干擾,造成程序的跑飛,而陷入死循環(huán),程序的正常運行被打斷,由單片機控制的系統(tǒng)無法繼續(xù)工作,會造成整個系統(tǒng)的陷入停滯狀態(tài),發(fā)生不可預料的后果,所以出于對單片機運行狀態(tài)進行實時監(jiān)測的考慮,便產(chǎn)生了一種專門用于監(jiān)測單片機程序運行狀態(tài)的芯片俗稱“看門狗”(Watchdog)。&
51、lt;/p><p> 聲控開關控制器長時間工作,電路中即有220V的強電,又有+5V的低工作電壓,現(xiàn)場的抗干擾在所難免,為避免單片機的程序跑飛,這里加入了看門狗電路,起到抗干擾的作用。</p><p> X5045將EEPROM、看門狗定時器、電壓監(jiān)控三種功能組合在單個芯片之內(nèi),大大簡化了硬件設計,提高了系統(tǒng)的可靠性,減少了對印制電路板的空間要求,降低了成本和系統(tǒng)功耗,是一種理想的單片機外
52、圍芯片。X5045引腳如圖10所示。</p><p> 圖10 X5045引腳圖</p><p><b> 其引腳功能如下:</b></p><p> CS: 芯片選擇輸入:當CS是高電平時,芯片未選中,并將SO置為高阻態(tài)。器件處于標準的功耗模式,除非一個向非易失單元寫的周期開始。在CS是高電平時,將CS拉低將使器件處于選擇狀態(tài),器件將
53、工作于工作功耗狀態(tài)。在上電后任何操作之前,CS必須要有一個高變低的過程;</p><p> SO: 串行輸出:SO是一個推/拉串行數(shù)據(jù)輸出引腳,在讀數(shù)據(jù)時,數(shù)據(jù)在SCK脈沖的下降沿由這個引腳送出;</p><p> SI: 串行輸入:SI是串行數(shù)據(jù)輸入器,指令碼、地址、數(shù)據(jù)都通過這個引腳進行輸入。在SCK的上升沿進行數(shù)據(jù)的輸入,并且高位(MSB)在前;</p>&l
54、t;p> SCK : 串行時鐘輸入,其上升沿將數(shù)據(jù)或命令寫入,下降沿將數(shù)據(jù)輸出;</p><p> WP: 寫保護輸入:當WP引腳是低電平時,向X5045中寫的操作被禁止,但是其他的功能正常。當引腳是高電平時,所有操作正常,包括寫操作。如果在CS是低的時候,WP變?yōu)榈碗娖?,則會中斷向X5045中寫的操作,但是,如果此時內(nèi)部的非易失性寫周期已經(jīng)初始化了,WP變?yōu)榈碗娖讲黄鹱饔茫?lt;/p>&
55、lt;p><b> Vss: 地;</b></p><p> Vcc: 電源電壓;</p><p> RESET: 復位輸出:PESET是一個開漏型輸出引腳。只要Vcc下降到最小允許Vcc值,這個引腳就會輸出高電平,一直到Vcc上升超過最小允許值之后200ms。同時它也受看門狗定時器控制,只要看門狗處于激活狀態(tài),并且WDI引腳上電平保持為高或者為低超
56、過了定時的時間,就會產(chǎn)生復位信號。CS引腳上的一個下降沿將會復位看門狗定時器。由于這是一個開漏型的輸出引腳。所以在使用時必須接上拉電阻。</p><p> X5045硬件連接圖如圖11所示。X5045芯片內(nèi)包含有一個看門狗定時器,通過軟件預置系統(tǒng)的監(jiān)控時間后,若在預置的時間內(nèi)看門狗芯片的CS端電平?jīng)]有發(fā)生變化,則X5045將從RESET輸出一個高電平信號,使CPU復位</p><p>&
57、lt;b> 圖11 看門狗電路</b></p><p> 4.7.2 X5045特性介紹</p><p> (1)可選時間的看門狗定時器。</p><p> (2)Vcc的降壓檢測和復位控制。</p><p> ?。?)5種標準的開始復位電壓,使用特定的編程順序即可對電壓檢測和復位開始電壓進行編程,復位電壓可低至V
58、cc=1V。</p><p> (4)省電特性:在看門狗打開時,電流小于50uA,在看門狗關閉時,電流小于10uA,在讀操作時,電流小于2mA。不同的型號的器件,其供電電壓可以是1.8-3.6V、2.7-5.5V、4.5-5.5V。4K位EEPROM,1,000,000次的擦寫周期。</p><p> (5)具有數(shù)據(jù)的塊保護功能—可以保護1/4、1/2、全部的EEPROM,當然也可以置
59、于不保護狀態(tài)。</p><p> (6)內(nèi)建的防誤寫措施:用指令允許寫操作,寫保護引腳。</p><p> ?。?)時鐘可達3.3M。</p><p> ?。?)短的編程時間:16字節(jié)的頁寫模式;寫時由器件內(nèi)部自動完成;典型的器件寫周期為5ms。</p><p> 4.8. PCB板的制作的設計</p><p>
60、 4.8.1 PROTEL DXP 2004的概述</p><p> Altium公司2004年最新產(chǎn)品,Protel DXP 2004是一款能極大地提高PCB設計的完整的板卡級設計軟件。它可運行于Windows2000和Windows XP操作系統(tǒng)之上,可實現(xiàn)從概念設計到輸出外協(xié)加工文件等一系列操作,并對設計過程、設計結果進行分析、驗證。Protel DXP 2004不僅能方便經(jīng)驗豐富的PCB工程師,也
61、降低了制作PCB的門檻,人們只需通過段時間培訓,便可以很快制作出一塊合格的PCB.Protel DXP 2004已經(jīng)不再是單純的SCH、PCB設計工具,而是主要由以下幾個功能模塊組成的系統(tǒng)工具:</p><p><b> 分級線路圖輸入。</b></p><p><b> 自動布局布線。</b></p><p> 設
62、計前、后的信號傳輸效應分析。</p><p> 規(guī)則驅動下的板卡色設計和編輯。</p><p> Spice 3f5混合電路仿真模擬。</p><p> 完全支持線路圖基礎上的FPGA設計。</p><p><b> 完整的CAM輸出。</b></p><p> 4.8.2 Prot
63、el原理圖界面</p><p> 在Protel主界面中單擊File>Open命令,在文件路徑中選擇原理圖文件。Protel DXP 2004原理圖界面主要包括以下幾部分:菜單欄、工具欄、工作窗口等。</p><p> 原理圖如下圖所示菜單欄DXP(系統(tǒng))、File(文件)、View(視圖)、Project(工程)、Place(放置)、Design(設計)、Tools(工具)、
64、Peports(報告)等。</p><p> 4.8.3 電路原理圖的設計流程</p><p> 在原理圖設計時可能會涉及到眾多元件的放置,繁多的電氣連接。為了保證不出錯,需要遵循一定的設計流程。在繪制簡單的原理圖時按照以下流程繪制即可。</p><p> 新建項目文件。在項目文件中新建原理圖文件。</p><p> 設置原理圖圖紙
65、及相關信息,圖紙是原理圖繪制的工作平臺。幾乎所有的工作都建立在其上,為原理圖設置合適的圖紙參數(shù)將有利于原理圖設計。</p><p> 添加/刪除元件庫。在原理圖設計中使用的元件符號,需要在繪制之前導入。</p><p> 放置元件符號,元件符號的放置要遵循電路設計要求,同時要修改元件的屬性(當然也可以在后續(xù)操作中再進行屬性修改)。</p><p> 電氣連接。
66、在原理圖中進行電氣連接時可以使用導線連接,也可以采用總線連接,還可以使用網(wǎng)絡標記進行連接,電氣鏈接可為PCB設計生成網(wǎng)絡報表。</p><p> 調(diào)整原理圖并檢查錯誤、修改。在電氣連接完成后要根據(jù)電路設計進行仔細的檢查,確保電路連接的正確性。Protel DXP 2004引入了自動ERC檢測功能,能簡化設計人員的檢查工作。</p><p> 原理圖注釋。這是原理圖設計不可缺少的部分。注
67、釋時要注明原理圖的名稱、關鍵點的說明和波形描述等。</p><p> 原理圖保存打印。單擊工具欄的保存按鈕即可進行保存。值得一提的是,在設計過程中要經(jīng)常保存以防意外丟失。單擊工具欄上的打印預覽按鈕可以進行打印預覽,查看打印效果。若確定無誤后即可單擊打印按鈕進行打印輸出。</p><p> 輸出文件。可根據(jù)需要選擇原理圖元件清單輸出或網(wǎng)絡報表輸出等。</p><p&g
68、t; 4.8.4 PCB板的繪制原則</p><p> ?。?)電路要有合理的走向</p><p> 對于輸出/輸入、交流/直流、強/弱信號、高頻/低頻、高壓/低壓等,它們的走向應該是分離布線的,不得相互交融,其目的在于防止相互干擾。</p><p> (2)選擇好電路信號的接地點</p><p> 接地點的設置是較復雜而又靈活的
69、,一般情況下要求公共地,,現(xiàn)實中,因受各種限制很難完全辦到,但應盡力遵循,這個問題在實際中是相當靈活的,每個人都有自己的一套解決方案。</p><p> (3)合理安排電源濾波/各種退耦濾波電容</p><p> 電源線上的小電容是為開關器件或其他需要濾波/退耦的器件而設置的,布置這些電容就應該盡量靠近這些元器件,離得太遠就沒有作用了。</p><p> ?。?
70、)PCB布線有一定的規(guī)則</p><p> 在PCB板上,有條件加寬的線盡量不做細。高壓及高頻線應圓滑,不得有尖銳的倒角,拐彎也不得采用直角。地線應盡量寬,最好使用大面積敷銅。</p><p> ?。?)謹慎處理來自PCB設計中的問題</p><p> 設計中盡量減少過線孔,由于過線孔太多,在生產(chǎn)中工藝稍有不慎就會埋下隱患。同向并行的線條如果密度過大,則焊接時很
71、容易連成一片,線密度應視焊接工藝水平來確定。焊點的距離太小,將不利于人工焊接,只能以降低工效來解決焊接質(zhì)量,因此焊點最小距離的確定應綜合考慮焊接人員的素質(zhì)和工效。</p><p> 4.8.5 Protel PCB設計流程</p><p> 通常,PCB的設計是要遵循一定的流程,保證PCB和原理圖設計同步,不要有遺漏,這樣會使檢查更加容易。當然,對于不同的設計人員會有一些差別,概括有
72、以下幾個步驟。</p><p> PCB板的設計準備:由原理圖生成網(wǎng)絡表,裝載PCB元件所在的封裝庫,如果沒有封裝的元件,則要繪制出該器件的封裝。</p><p> 根據(jù)應用電路的要求,確定PCB板的幾何尺寸、形狀和層數(shù)等參數(shù)。</p><p> 導入網(wǎng)絡文件,引入原理圖中的信息,采用元件自動布線操作,完成pcb的初步設計。</p><p&
73、gt; 根據(jù)電路的功能分布、布線的要求對Protel DXPde 自動元件布局進行調(diào)整,這是PCB設計的重要部分。</p><p> 對PCB進行自動布線,通常是自動布線和手工布線交替進行,手工布線主要是彌補自動布線的缺陷。</p><p> PCB的電路檢查,填充非元件區(qū)、添加安裝尺寸和絲印信息</p><p> 根據(jù)PCB文件生成BOM報表、導出文件和打
74、印外協(xié)加工圖紙等。</p><p> 4.8.6 印制電路板(PCB)的繪制過程如下所示:</p><p> 4.8.7 焊制電路板如下所示</p><p><b> 5. 軟件設計</b></p><p> 5.1 軟件設計語言的選擇</p><p> 單片機語言的編程一般使
75、用兩種語言:C語言和匯編語言。匯編語言是一種用文字助記符來表示機器指令的符號語言,是最接近機器語言的一種語言。其主要的優(yōu)點是占用資源少,程序執(zhí)行效率高。但是不同的CPU,其匯編語言可能有所差異,所以不易移植。C語言是一種結構化的高級語言。其優(yōu)點是可讀性好,移植容易,是普遍使用的一種計算機語言。缺點是占資源較多,執(zhí)行效率沒有匯編高。</p><p> C語言是一種編譯型程序設計語言,它兼顧了許多種高級語言的特點,
76、其具備匯編語言的功能。C語言有功能豐富的庫函數(shù)、運算速度快、編譯效率高、有良好的可移植性,而且可以直接實現(xiàn)對系統(tǒng)硬件的控制。C語言是一種結構化程序設計語言,它支持當前程序設計中廣泛用的有頂向下結構化程序設計技術。此外,C語言程序具有完善的模塊程序結構,從而為軟件開發(fā)中采用模塊化程序設計方法提供了有力的保障。因此使用C語言進行程序的設計已經(jīng)為軟件開發(fā)的一個主流。綜上所述,用C語言進行單片機程序設計是單片機開發(fā)和應用的必然趨勢。本設計就采用
77、C語言進行編程,明顯的增加了軟件的可讀性。</p><p> 5.2 程序流程圖</p><p> 5.3 主程序設計</p><p> 根據(jù)程序流程圖,編寫主控程序如附錄(附錄)</p><p> 5.4 延時程序設計</p><p> 編寫程序當中要用到適當?shù)难訒r,所以先編寫一個大概1ms的延時子程
78、序,方便在后面的程序中調(diào)用,程序代碼見(附錄):</p><p> 5.5 TLC2543讀寫程序設計</p><p> TLC2543為A/D轉換器,編寫其讀寫子程序,到后面主程序中調(diào)用。程序代碼如下:</p><p> //TLC2543與單片機的接口定義如下:</p><p> sib tlc2543-clk = P3^2;
79、</p><p> sib tlc2543-din = P 3^3;</p><p> sib tl-2543-dout = P3^4;</p><p> sib tlc2543-cs = P3^5;</p><p> /////////////////////////////////////////////////////
80、////////////////////////////////////////////////</p><p> //寫命令子程序,返回轉換后的電壓數(shù)字值見(附錄)</p><p> 5.6 DS1302驅動程序設計</p><p> 實時時鐘芯片DS1302與單片機的接口定義為:</p><p> Sbit DS130
81、2_sclk =PI^7; /*實時時鐘時鐘線引腳*/ Sbit DS1302_IO =PI^6; /*實時時鐘數(shù)據(jù)線引腳*/</p><p> Sbit DS1302_RST =PI^5; /*實時時鐘復位線引腳*/</p><p> 其讀寫驅動程序代碼見(附錄)<
82、;/p><p> 5.7 X5045驅動程序設計</p><p> 看門狗X5045與單片機的接口定義為:</p><p> sbit x5045_cs = P1^1;</p><p> sbit x5045_so = P1^2;</p><p> sbit x5045_si = P1^3;<
83、/p><p> sbit x5045_sck= P1*4;</p><p> 讀寫驅動程序見(附錄):</p><p><b> 6系統(tǒng)的調(diào)試</b></p><p><b> 6.1 調(diào)試過程</b></p><p> 利用KEIL與PROTEUS進行調(diào)試,使用
84、步驟如下:</p><p> (1) 打開KEIL,建立工程,輸入程序,編譯和生成hex文件,如圖所示</p><p> ?。?)打開PROTEUES,設計硬件電路圖,如圖所示</p><p> (3)導入hex文件,見上圖將鼠標置于電路圖中GMS97C2051器件上,右擊后再左擊,彈出對話框,在紅框中導入dzp.hex文件。</p><p&
85、gt; (4) 點擊面板左下角的,開始調(diào)試。</p><p> 6.2 調(diào)試結果及經(jīng)驗總結</p><p> 將程序導入GMS97C2051芯片,調(diào)試成功后可以達到設計的要求。通過設計智能聲光控開關,加深了對單片機系列的認識。讓我更好的運用了本科兩年所學的知識,運用于實踐,加深了對知識的理解。在設計過程中學習了很多軟件的使用,包括硬件部分運用protues進行設計,用keil進行程
86、序編譯,用protel進行制板。</p><p><b> 7總結</b></p><p> 聲光控開關,省事省電,應用廣泛,本文應用單片機微控制器,通過軟件來實現(xiàn),采用了過零啟動技術,并且加入了看門狗監(jiān)視器,安全可靠。相信以后在這方面會不斷完善,使日常生活更加方便,更加智能化。</p><p> 在設計中初步了解了聲光控制電路的工作原理
87、,學會了分析電路、設計電路的方法和步驟。通過本次設計提高了自己對資料的查閱、信息處理的能力,訓練了自己的科學研究基本功,培養(yǎng)了知識綜合運用能力,增加了對社會普通科學知識的了解,為以后寫作專業(yè)學術論文打下基礎。</p><p><b> 8附錄</b></p><p> 附錄1 延時程序設計設計</p><p><b> //延
88、時程序</b></p><p> Void delay(unsigned int j)</p><p><b> {</b></p><p> unsigned char i ;</p><p> while(j--)</p><p><b> {&l
89、t;/b></p><p> for (i=125; i>; i--)</p><p><b> {;}</b></p><p><b> }</b></p><p><b> }</b></p><p> 附錄2 TLC
90、2543讀寫程序設計</p><p> sib tlc2543-clk = P3^2;</p><p> sib tlc2543-din = P 3^3;</p><p> sib tl-2543-dout = P3^4;</p><p> sib tlc2543-cs = P3^5;</p><p&g
91、t; /////////////////////////////////////////////////////////////////////////////////////////////////////</p><p> //寫命令子程序,返回轉換后的電壓數(shù)字值</p><p> unsigned int tlc2543-write(unsigned char CHN
92、 )</p><p><b> {</b></p><p> unsigned char i ;</p><p> unsigned int backcode=0;</p><p> CHN<<=4; 左移4位</p><p> tlc2543-
93、cs = 1;</p><p> tlc2543-clk=0;</p><p> tlc2543-cs = 0;</p><p> for(i=0; i<12; i++) //寫入一12位的數(shù)據(jù)</p><p><b> {</b></p><p><b>
94、if (i<8)</b></p><p><b> {</b></p><p> if(CHN & 0x80)) tlc2543-din = 1;</p><p> else tlc2543-din = 0;</p><p><b> CHN <<=1;&l
95、t;/b></p><p><b> }</b></p><p> backcode <<=1;</p><p> backcode∣=tlc2543_dout;</p><p> tlc2543_clk=1;</p><p><b> _nop_();<
96、;/b></p><p><b> _nop_();</b></p><p> Tlc2543_clk=0;</p><p><b> }</b></p><p> Tlc2543_cs = 1;</p><p> Return(backcode);</
97、p><p><b> }</b></p><p> 附錄3 DS1302驅動程序設計</p><p> 實時時鐘芯片DS1302與單片機的接口定義為:</p><p> Sbit DS1302_sclk =PI^7; /*實時時鐘時鐘線引腳*/</p><p> Sbi
98、t DS1302_IO =PI^6; /*實時時鐘數(shù)據(jù)線引腳*/</p><p> Sbit DS1302_RST =PI^5; /*實時時鐘復位線引腳*/</p><p> 其讀寫驅動程序代碼如下:</p><p> //功能:實時時鐘寫入一字節(jié)</p><p> Void DS1302
99、WriteByte(unsigned char d)</p><p><b> {</b></p><p> unsigned char i;</p><p> unsigned char temp;</p><p><b> temp = d;</b></p><p&g
100、t; for(i=8; i>0; i--)</p><p><b> {</b></p><p> If(temp& 0x01) DS1302_IO = 1;</p><p> else DS1302_IO = 0;</p><p> DS1302_SCLK = 1;</
101、p><p> Temp = temp >> 1;</p><p><b> _nop_();</b></p><p> DS1302_SCLK = 0;</p><p><b> } </b></p><p><b> }</b><
102、;/p><p> //功能:實時時鐘讀取一字節(jié)</p><p> Unsigned char DS1302ReadByte(void)</p><p><b> {</b></p><p> Unsigned char DS1302ReadByte(void0</p><p><b&g
103、t; {</b></p><p> Unsigned char i;</p><p> Unsigned char dat;</p><p> For(I = 8; i>0; i--)</p><p><b> {</b></p><p> dat = dat >
104、;> </p><p> if(DS1302_IO dat〡 =0x80;</p><p> DS1302_SCLK = 1;</p><p><b> _nop_();</b></p><p><b> _nop_();</b></p><p> DS13
105、02_SCLK = 0;</p><p><b> }</b></p><p> Return(dat);</p><p><b> }</b></p><p> //功能:忘DS1302寫入數(shù)據(jù)</p><p> void DS1302WriteData(uns
106、igned char ucAddr, unsigned char ucDa)</p><p><b> {</b></p><p> DS1302_RST = 0;</p><p> DS1302_SCLK = 0;</p><p> DS1302_RST = 1;</p><p> D
107、S1302WriteByte(ucAddr); /*地址,命令*/</p><p> DS1302WriteByte(ucDa); /*寫1Byte數(shù)據(jù)*/</p><p> DS1302_SCLK = 1;</p><p> DS1302_RST = 0;</p><p><b> }</b>
108、;</p><p> //功能:讀取DS1302某地址的數(shù)據(jù)</p><p> unsigned char DS1302ReadData(unsigned char ucAddr0</p><p><b> {</b></p><p> unsigned char ucData;</p><p
109、> DS1302_RST = 0;</p><p> DS1302_SCLK = 0;</p><p> DS1302_RST = 1;</p><p> DS1302WriteByte(ucAddr); /*地址,命令*/</p><p> ucData = DS1302ReadByte();
110、 /*讀1Byte數(shù)據(jù)*/</p><p> DS1302_SCLK = 1;</p><p> DS1302_RST = 0;</p><p> return(ucData);</p><p><b> }</b></p><p> //功能:設置初始時間</p>&l
111、t;p> void DS1302SetTime(unsigned char pClock[])</p><p><b> {</b></p><p> unsigned char i;</p><p> unsigned char ucAddr = 0x80;</p><p> DS1302WriteDa
112、ta(0x8e,0x00); /*控制命令,WP=0,寫操作?*/</p><p> for(i=0; i<3; i++)</p><p><b> {</b></p><p> DS1302WriteData(ucAdd,pClock[i]);</p><p> ucAddr +=2;<
113、;/p><p><b> }</b></p><p> DS1302WriteData(0x8e,0x80); /.*控制命令,WP=1,寫保護*/</p><p><b> }</b></p><p> //功能:讀取DS1302當前時間</p><p>
114、void DS1302GetTime(unsigned char ucCurtime[])</p><p><b> {</b></p><p> unsigned char I;</p><p> unsigned char ucAdd = 0x81;</p><p> for (i=0; i<3; i+
115、+)</p><p><b> {</b></p><p> ucCurtime[i] = DS1302ReadData(ucAddr);</p><p> ucAddr += 2;</p><p><b> }</b></p><p><b> }<
116、;/b></p><p> 附錄4 X5045驅動程序設計</p><p> 看門狗X5045與單片機的接口定義為:</p><p> sbit x5045_cs = P1^1;</p><p> sbit x5045_so = P1^2;</p><p> sbit x5045_si
117、 = P1^3;</p><p> sbit x5045_sck= P1*4;</p><p><b> 讀寫驅動程序:</b></p><p> //////////////////////////////////////////////////////////////////////////////////////////////
118、////////</p><p> //對X5045進行寫操作</p><p> void x5045_write(unsigned char command)</p><p><b> {</b></p><p> unsigned char I;</p><p> //x5045_c
119、s = 0;</p><p> x5045_cs = 0;</p><p><b> nop();</b></p><p> for(i = 0;I < 8;i++)</p><p><b> {</b></p><p> if(command & 0
120、x80) x5045_si = 1;</p><p> else x5045_si = 0;</p><p> command <<= 1;</p><p> x5045_sck = 1;</p><p><b> nop();</b></p><
121、p><b> nop();</b></p><p> x5045_sck = 0;</p><p><b> }</b></p><p> x5045_si = 0;</p><p> //x5045_cs = 1;</p><p><b> //
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機的智能聲光控開關的設計-電子信息工程畢業(yè)論文
- 基于單片機的智能聲光控開關的設計-電子信息工程畢業(yè)論文
- 基于單片機的智能開關設計
- 聲光控延時開關畢業(yè)設計
- 畢業(yè)設計-----基于單片機紅外遙控開關的設計
- 基于51單片機的聲光控延時燈
- 基于單片機的智能時鐘畢業(yè)設計
- 基于單片機的智能小車畢業(yè)設計
- 畢業(yè)設計---基于單片機的智能窗簾設計
- 基于單片機的智能小車設計畢業(yè)設計
- 畢業(yè)設計---基于單片機的智能臺燈系統(tǒng)
- 基于單片機的智能尋跡小車畢業(yè)設計
- 畢業(yè)設計--基于單片機的智能小車的設計
- 基于單片機的智能加濕器畢業(yè)設計論文
- 基于單片機的智能家居畢業(yè)設計
- 基于單片機的智能遙控窗簾設計【畢業(yè)設計】
- 基于單片機的wifi智能小車設計 畢業(yè)設計
- 基于單片機的智能尋跡小車設計畢業(yè)設計
- 畢業(yè)設計----基于單片機的智能臺燈系統(tǒng)設計
- 基于單片機的wifi智能小車設計 畢業(yè)設計
評論
0/150
提交評論