基于單片機實現電話遠程控制家用電器-畢業(yè)設計_第1頁
基于單片機實現電話遠程控制家用電器-畢業(yè)設計_第2頁
基于單片機實現電話遠程控制家用電器-畢業(yè)設計_第3頁
基于單片機實現電話遠程控制家用電器-畢業(yè)設計_第4頁
基于單片機實現電話遠程控制家用電器-畢業(yè)設計_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于單片機實現電話遠程控制家用電器 學生:XX 指導老師:XX內容摘要:目前,越來越多的住宅向著智能化、人性化的方向發(fā)展。其中家用電器的遠程控制正被逐漸推廣。本著低能耗、無污染、使用簡單方便的原則,本文設計的是一種基于AT89S51單片機的遠程電話控制系統(tǒng)。該系統(tǒng)是以AT89S51為核心、通過現在的個人通信手段,實現基于PLMN(陸基移動通信網)和PSTN(公用電話交換網)的電話遠程控制系統(tǒng)。根據CCITT及我國標準共同規(guī)定的電話遠程控制系統(tǒng),以公共交換電話網絡PSTN( Public Switched Telephone Network )與公共陸地移動網絡PLMN(Public Land

2、Mobile Network)通信網作為傳輸介質,以部分標準程控交換信令(DTMF(Dual Tone Multi Frequency)雙音多頻信號、振鈴信號、回鈴音信號等)作為系統(tǒng)控制命令,使用戶實現在遠端通過移動電話或者固定電話發(fā)送DTMF雙音多頻信號對近端電器設備進行遠程控制。本次設計的電話遠程控制系統(tǒng)不需要再進行專門的布線,不占用無線電頻率資源,從而可避免電磁污染。用戶只有輸入正確的密碼才能控制家電,從而提高了安全性。該系統(tǒng)設計實用,功能靈活多樣,可靠性高,操作方便,可以廣泛地應用于家庭或者其它場所的智能控制。關鍵詞:AT89S51 遠程電話控制 DTMF 智能家電 IThe Tele

3、phone Remote Control System for Household Electronic Appliance Base on The MicrocontrollerAbstract:Currently, more and more residential develop to the intelligence and humanity. Among them, the remote control of home appliances is being promoted. Research follows the principles of Low energy consump

4、tion, pollution-free, easy to use. The article designed the remote telephone control system which based on microcontroller AT89S51. Basing on the PLMN and PSTN, the system which uses the core controller Single-chip microcomputer AT89S51 realizes long-distance control household appliances. The teleph

5、one control system (ITRCS) which uses the telephone net convert and voice information receives DTMF code from the telephone net, and interpret the code, the core controller controls the state of household appliances responded to the interpretation. Long distance control of telephone does not require

6、 special wires distribution and does not take up wireless frequency resources. Electro magnetic pollution can thus be avoided. The designing of a system of longdistance control based on sound processing technology and DTMF decoding technology is presented in this paper. Only through inputting the co

7、rrect password to control them, the users can control the condition of household electrical equipment, so the system security can be improved. The system is practical, and the function is flexible, and the operation is convenient with high reliability, which can be used extensive in various kinds of

8、 control equipment to home and others field.Keywords:AT89S51 Telephone remote control DTMF Household appliancIII目 錄前言11 系統(tǒng)設計可行性分析31.1 總體設計分析31.1.1 系統(tǒng)總體設計分析31.2 總體方案42 硬件單元電路設計82.1 硬件模塊82.1.1 振鈴檢測電路82.1.2 模擬摘掛機電路102.1.3 雙音解碼電路112.1.4單片機外圍電路153 軟件設計163.1 軟件模塊163.1.1 信號音檢測163.1.2 密碼檢測163.2 軟件設計163.2.1

9、系統(tǒng)完整程序174 系統(tǒng)應用215 技術經濟分析236 結束語23參考文獻2526基于單片機實現電話遠程控制家用電器前言二十一世紀是信息時代,各種電信新技術促進了人類文明的進步。自從1876年,Alexander Graham Bell(貝爾)發(fā)明了電話以來,世界各國的電話網絡取得了長足的發(fā)展。過去十年,中國的固定電話業(yè)務也取得了舉世矚目的發(fā)展。1997年8月中國的電話交換機總容量超過1億門,網絡規(guī)模也已經位居世界第二。2004年7月,固定電話用戶總數超過2.00億戶。隨著通信業(yè)的發(fā)展,電話機已經走進千家萬戶,隨著現代科學技術的發(fā)展,電話遠程控制的技術也越來越多的在生活中使用。電話傳輸線與交換

10、機共同構成了現代電話網絡,它的性能也取得了極大的進步,并且可靠性很高。遙控技術是指:在一定的距離通過一定的手段對物體實施控制,通常包含紅外線遙控、超聲波遙控、有線遙控和無線電遙控等。無線電遙控是指通過無線電信號對被控物體實施遠距離控制。因此,無線電遙控必定會占用一部分的無線電頻率資源,從而造成電磁污染;常規(guī)的有線遙控則需要專門的布線,這不可避免的會加大投資;而超聲波遙控和紅外線遙控則會受到距離的限制?,F有的遙控方式,還有通過載波通信控制和無線尋呼實現遙控。載波方式也即是利用電力網絡線傳遞信息,但是這種方式只能應用于同一變壓器、同一變電所所能覆蓋的范圍內。因此,也有距離問題,應用范圍也是有限的。

11、利用無線尋呼這種方式則使用已有的尋呼頻率資源,所以不會占用其他的頻譜。并且,限制尋呼網已經實現了全國聯網,其遙控的距離基本不受限制。但該方式的被控方動作會滯后于控制方的操作,不具備實時性,而且可靠性并不是很高。本文將會介紹一種基于單片機的電話遠程控制技術。本系統(tǒng)用于具有單片機控制的家用電器的電話遙控,用戶可以通過固定電話或者手機對自己家中安裝的報警器、熱水器、空調等電器進行開機、停機等操作??刂剖疽鈭D如圖1所示:交換網家用電器電話圖1 系統(tǒng)控制示意圖 2008年4月17日舉行的中國國際家電展上,海爾集團展出了自主研發(fā)的智能家電系統(tǒng)。有了該系統(tǒng)以后,你可以在下班回家的路上,用手機給家中的空調發(fā)個

12、短信,設定溫度,到家就能享受舒適的室溫;給家中的電熱水器發(fā)個短信,到家后就能洗上熱水澡;給洗衣機發(fā)個指令,它就自動將衣物洗滌干凈,到家后就能直接晾曬人們過去幻想的場景,現在已經變成了現實。但是,現在絕大多數的家庭使用的仍然是傳統(tǒng)的家用電器,本文主要的設計就是一種可以通過電話實現遠程控制傳統(tǒng)家用電器的系統(tǒng)。智能家電控制系統(tǒng)的功能主要在于家庭的安全報警、紅外集中遙控、自動抄表控制等等方面。現有的組網方式有以下兩大類:無線組網和有線組網。無線組網的主要技術是家庭射頻技術(HomeRF)、藍牙技術(Bluetooth)和家庭電話線網絡聯盟技術(HomePAN)等。而有線組網則主要利用家中的電話線、單獨

13、布置通信控制線路或者電力線載波通信進行組網。電話遙控與常規(guī)的遙控方式相比,具有一定的優(yōu)越性,它不需要進行專門的布線,也不占用無線電頻率資源,而且還避免了電磁污染。除此以外,因為電話線路各地都聯網,可以充分的利用現有的電話網,因而遙控距離不受限制,可跨省市,甚至跨國家實現控制。電話是一種半雙工通信方式。因此,它可以大大的反映出電話遠程控制的優(yōu)越性。操作人員可通過提示音隨時隨地的了解受控對象的工作狀態(tài),從而實現自己需要實現的控制。電話遙控這一課題已經有了很多的研究者,但是到目前為止,都還只是局限于實驗階段,距離實際應用于日常生活中還有一定的距離,尚不能完全體現出電話遙控方式的半雙工通信的特點。針對

14、這一特點,本文進行了較大的改進,采用單片機實現智能控制,通過不同的提示音使操作者對于受控對象的工作狀態(tài)的信息了如指掌,以指示操作者對受控對象進行所需操作,從而使得產品達到交互式與智能化。本作品的各項標準以及各種電器的借口都嚴格遵循國家有關標準,為將來的產品化提供良好的基礎。電話遠程控制系統(tǒng)接收操作方發(fā)送的DTMF信號,通過解碼芯片對其進行解碼,中央處理單元采集解碼后的信號進行處理,因為電話遠程控制系統(tǒng)通常工作在無人的環(huán)境中,所以應該具有自動摘機、自動掛機以及復位等功能;為了滿足智能化需求,該系統(tǒng)采用AT89S51作為中央處理器。另外,該系統(tǒng)的正常工作離不開電源供電電路、驅動電路等輔助電路。通過

15、分析可知,系統(tǒng)主要由振鈴檢測電路、自動摘掛機電路、DTMF雙音頻解碼電路、中央處理單元AT89S51、電器控制驅動電路等組成。1 系統(tǒng)設計可行性分析1.1 總體設計分析電話遠程控制系統(tǒng)使用單片機構成主要控制部分,主要的信息處理,接收各種形式的操作指令,并對各種信息進行記錄均由其完成;接口電路則提供單片機與電話之間的外部接口。包括鈴音檢測、摘掛機控制、忙音檢測、雙音頻DTMF識別等。 本系統(tǒng)的振鈴檢測、模擬摘掛機、雙音頻解碼等接口電路都具有很強的實用性。通過最簡單的、最可靠的電路芯片實現完善的功能。此外,系統(tǒng)還可以擴展增加很多功能,因此具有很好的市場前景。系統(tǒng)并聯在電話機的兩端,所以不會影響到電

16、話的正常使用。用戶使用異地電話撥通與系統(tǒng)并聯的電話機,通過市局交換機向電話發(fā)出振鈴信號,此時,振鈴檢測電路將會檢測到振鈴信號,并將該信號送給系統(tǒng)的中央控制單元,當裝置檢測到四次振鈴,也就是在四次響鈴后無人接電話,模擬自動摘機,進入密碼檢測,如果密碼錯誤,模擬自動掛機,只有在輸入正確的密碼后才能選擇被控制的電器,然后對電器進行開或者關的控制。用戶按鍵產生的信號經雙音多頻DTMF(Dual Tone Multi-Frequency)解碼電路解碼后,送入中央控制單元,中央控制單元根據解碼的結果通過驅動電路進行相應的動作,完成操作后返回,這是自動方式。1.1.1 系統(tǒng)總體設計分析通過電話網對異地的電器

17、實現控制(開/關);控制器可以實現自動模擬摘掛機;控制器設置密碼校驗;自動摘掛機;振鈴音檢測、計數;雙音頻信號解碼;密碼校驗;控制電器開關輸入信息分析;根據電話機和交換機發(fā)出的不同信號指令以及電話線各種狀態(tài)的不同要求,結合實際情況對具體的單元功能模塊作出軟件或硬件上的不同分工,具體如下:后可輸出一個方波,單片機可檢測信號音在一秒內的脈沖次數,這樣脈沖頻率就可以計算出來,如此便可識別出信號音,從程序的結構設計上和系統(tǒng)的可靠性分析,最后決定選用硬件來解決雙音頻信號解碼和振鈴音檢測這兩個功能模塊。必須使用具體的硬件電路來實現自動摘掛機和電器的控制。使用軟件編程方式完成密碼比對、振鈴音計數、輸入信息分

18、析等功能模塊要比硬件電路完成來得簡單,實現也很容易,所以通過編程實現。綜上所述,本設計的振鈴信號檢測、控制電器、雙音頻解碼、自動摘掛機等功能模塊采用硬件電路實現。而振鈴音計數、信息分析、密碼校驗等功能模塊則采用軟件編程完成。1.2 總體方案為完成設計要求,實現控制系統(tǒng)的功能,本文采用模塊化設計。以AT89S51單片機為核心,由電話通過網絡經由DTMF解碼后把控制信息送到單片機,控制相應動作,從而實現它的電話遠程控制功能。它由話路系統(tǒng)和控制系統(tǒng)兩大部分構成。其中,話路系統(tǒng)包括所有的提供電話接續(xù)任務的終端和交換設備,盡量選擇市場上已經有的成熟的集成電路芯片。而控制系統(tǒng)的作用是在需要的時候接通話路,

19、提供語音信號傳送的通路。系統(tǒng)框圖如圖1.2-1所示。單片機:主要工作是進行密碼校對、控制摘掛機、接收控制數據和輸出控制。DTMF解碼電路:專門將控制機發(fā)送的DTMF信號進行譯碼工作,將控制機發(fā)出的控制信號譯為對應的9、*、#、A、B、C、D等二進制數。電話接口電路:作為與電話網絡連接的端口,包含振鈴電路等,將控制機傳來的音頻信號傳給解碼電路,并可以將控制器提示音反饋至控制機。輸出電路:作為控制輸出及電話摘機。密碼存儲器:失電保護用戶密碼??刂齐娫挋C:作為控制操作的平臺,通過電話的數字按鍵輸入數據經程控交換機傳送至控制器??刂齐娐稬ED顯示單 片 機密碼存儲器控制電話機鍵盤電話接口電路受控電路D

20、TMF解碼電路輸出電路圖1.2-1 系統(tǒng)框圖本系統(tǒng)選擇了由Atmel公司生產的AT89S51單片機作為核心控制芯片,它的引腳如圖1.2-2所示:AT89S51單片機引腳功能介紹:單片機共有40個引腳,它們可以大致分為4類:電源、時鐘、控制以及I/O引腳。電源:VCC-芯片電源,接+5V;GND-接地端;時鐘:XTAL1、XTAL2晶體振蕩電路反相輸入端和輸出端??刂凭€:共有4根控制線:ALE/PROG:地址鎖存允許/片內EPROM編程脈沖;ALE功能:用來鎖存P0口送出的低8位地;PROG功能:片內有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。PSEN:外ROM讀選通信號;RS

21、T/VPD:復位/備用電源;RST(Reset)功能:復位信號輸入端;VPD功能:在Vcc掉電情況下,接備用電源。EA/Vpp:內外ROM選擇/片內EPROM編程電源;EA功能:內外ROM選擇端;Vpp功能:片內有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。I/O線:AT89S51單片機中,共有4個8位并行I/O端口:P0、P1、P2、P3口,共32個引腳。P0口:P0口為一個8位漏級開路雙向I/O口,每個引腳都可以吸收8TTL產生的門電流。當P1口的引腳第一次寫1時,被定義為高阻輸入。P0能夠作為外部程序數據存儲器使用,它還可以被定義為地址/數據的第八位。在FLASH編程時,

22、P0 口作為原碼輸入口,當FLASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。 P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 P2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序

23、存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。 P3口:P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的原因。 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P

24、3.4 T0(記時器0外部輸入) P3.5 T1(記時器1外部輸入) P3.6 /WR(外部數據存儲器寫選通) P3.7 /RD(外部數據存儲器讀選通) P3口同時為編程校驗和閃爍編程接收部分控制信號。 作為輸入口時I/O口有兩種工作方式,也就是我們所說的讀引腳與讀端口。實際上在讀端口時并不從外部讀入數據,而是讀入端口鎖存器的內容,然后輸入到內部總線,經過一系列的變換或者運算后,再被寫回到端口鎖存器。只有宰讀端口的時候才真正地把外部的數據讀入到內部總線。上面圖中的兩個三角形表示的就是輸入緩沖器CPU將根據不同的指令分別發(fā)出讀端口或讀引腳信號以完成不同的操作。這是由硬件自動完成的,不需要我們操心

25、,1然后再實行讀引腳操作,否則就可能讀入出錯,為什么看上面的圖,如果不對端口置1端口鎖存器原來的狀態(tài)有可能為0Q端為0Q為1加到場效應管柵極的信號為1,該場效應管就導通對地呈現低阻抗,此時即使引腳上輸入的信號為1,也會因端口的低阻抗而使信號變低使得外加的1信號讀入后不一定是1。若先執(zhí)行置1操作,則可以將場效應管截止引腳信號直接加到三態(tài)緩沖器中,以實現正確的讀入,由于在輸入操作時還必須附加一個準備動作,所以這類I/O口被稱為準雙向口。89C51的P0/P1/P2/P3口作為輸入時都是準雙向口。接下來讓我們再看另一個問題,從圖中可以看出這四個端口還有一個差別,除了P1口外P0P2P3口都還有其他的

26、功能。 RST:復位輸入。當振蕩器器件復位的時候,RST腳兩個機器周期的高電平時間要得以保持。 ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程的時候,這個管腳用于輸入編程脈沖。在平時,ALE端以恒定的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數據存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。

27、PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現。 EA/VPP:在EA管腳保持低電平時,在此期間外部程序存儲器(0000H-FFFFH),不管內部是否有程序存儲器。注意加密方式1時,EA將內部鎖定為RESET;當EA端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:內部時鐘工作電路的輸入及反向振蕩放大器的輸入。 XTAL2:來自反向振蕩器的輸出。圖1.2-2 AT89S51引腳圖2 硬件單元電路設計2.1 硬件模塊本作品中

28、,為了完成部分功能模塊,使用了大量的硬件電路,目的就是充分利用硬件電路的可靠性、穩(wěn)定性,從而保證整體電路的穩(wěn)定性,而且還使用了大量的抗干擾元器件,例如:光耦合器,去耦電容等,以此提高系統(tǒng)的抗干擾能力。2.1.1 振鈴檢測電路當電話機處在靜默狀態(tài)時,交換機為電話線路提供約48V的直流電壓。但是當用戶被呼叫時,電話交換機會發(fā)來一個鈴流信號。這個鈴流信號為253伏的正弦波,它的諧鈴失真不超過10%,電壓有效值9015V。振鈴的周期為5秒,即1秒送,4秒斷。在振鈴電路檢測到振鈴信號時,以四次鈴響為準,即四次振鈴后無人摘機,便由單片機控制自動模擬摘機,振鈴檢測電路設計如2.1.1-1所示。原理說明:C4

29、、D1和R4共同組成振鈴信號變換電路,它們使輸入電壓和電流不會太大,對后面的光電耦合器起保護作用。來電時,電話振鈴信號通過電容C4隔直、D1穩(wěn)壓二極管、R4限流電阻輸入至光電耦合器4N25的輸入端,光電耦合器4N25的主要作用是隔離作用,光電耦合器是一種電信號的耦合器件,它一般是將發(fā)光二極管和光敏三極管的光路耦合在一起,輸入和輸出之間不可共地,輸入電信號加于發(fā)光二極管上,輸出信號由光敏三極管取出。在實際中,電話靜默時,LED6持續(xù)發(fā)光,但是電話來電時,LED6會持續(xù)閃爍,但是LED6接地使得電壓的變動范圍縮小,P3.4的電平在0-2.1V之間變動,導致T0口不能準確的計數,所以在調試中不得不去

30、掉該指示燈。本單元元器件列表:C4為隔直電容,因為是過濾直流,濾出低頻信號,而且振鈴信號的電壓還比較高,因此選取10F耐壓100V的瓷片電容;R4是4N25的限流電阻,取33 k;D1為穩(wěn)壓二極管,選取1N4001;U3選取光電耦合器4N25;R3取10 K;LED6為振鈴指示燈,選取黃色5mm發(fā)光二極管;反向器由74LS04中的二組反向器組成,起整流作用;圖2.1.1-1 振鈴檢測電路2.1.2 模擬摘掛機電路設計主要思路:國家對電話機的摘機有著明確的標準:不管是什么電話機,摘機狀態(tài)的直流電阻都應該300,有“R”鍵的電子電話機的摘機狀態(tài)直流電阻應350。在掛機狀態(tài)下,其漏電流5A。當用戶摘

31、機時,通過叉簧為電話機接上約200的負載,以使得電話線回路流過大約30mA的電流。當交換機檢測到該30mA電流后就會停止發(fā)送鈴流,并將線路電壓變?yōu)?-12V的直流電壓,完成接續(xù)。根據有關技術指標,模擬摘掛機電路設計如圖2.1.2-1所示,模擬摘掛機電路主要由一個光電耦合器開關電路控制繼電器的開關,繼電器串聯一個200電阻,并接入電話線兩端。當對振鈴技術滿4次時,單片機把P3.1口變?yōu)榈碗娖?,使得三極管基極電壓改變,從而導通三極管,此時,繼電器兩端加上5V電壓,繼電器導通,200電阻并聯在電話機兩端,使得回路電流變大,完成電話線路的接通,整個電路實現了模擬摘機,其中D2二極管起反向保護的作用,在

32、繼電器斷開的時候不會被反向電流燒壞。LED7為摘機指示燈。本單元元器件列表:R5是摘機指示燈限流保護電阻,取200,LED7是摘機指示燈,取5mm綠色發(fā)光二極管;R7是三極管限流電阻,取1k;D2二極管是起繼電器反向保護的作用,取4001;J1是繼電器控制開關,取JRC 4001F(DC5V);R6是摘機電阻,取200;PNP三極管取2N3906;圖2.1.2-1 模擬摘掛機電路2.1.3 雙音解碼電路利用聲音頻率的不同音調來傳送按鍵信號以取代直接撥號脈沖的方法叫做DTMF技術。DTMF由兩組頻率信號疊加構成:低頻組(697Hz941Hz)和高頻組(1209Hz1633Hz)。設v(t)為DT

33、MF信號,vi(t)和vh(t)分別代表選自低頻組和高頻組的兩個信號,它們之間的關系滿足: (2.1.3-1)低頻組和高頻組中都有并且只有4個獨立的音調,這4個音調是依據它們之間的諧波不相關來選擇的,它們的互調制信號對主信令的影響最小。DTMF信號共有16(24)種組合,其中6種組合(#、*、A、B、C、D)用做特別的信令,剩余10種組合則分別代表數字0到9。電話鍵盤按鍵與DTMF信號的對應關系在CCITT和我國國家標準中都有明確規(guī)定,如表2.1.3-1所示。表2.1.3-1 電話鍵盤按鍵與DTMF信號的對應關系電話鍵盤按鍵高頻組(Hz)1209133614771633低頻組(Hz)69712

34、3A770456B852789C941*0#D解碼電路是整個設計的關鍵,它的工作情況直接決定了系統(tǒng)的可靠性只有在解碼電路可靠的情況下,用戶輸入的控制指令才能被單片機識別并完成相關控制。在翻閱了大量的文獻資料后,發(fā)現比較經常使用的一種解碼方法是采用電話專用的雙音頻解碼芯片完成輸入雙音頻信號的解碼。通過專門使用的集成電路的解碼以后(使用集成電路不但可靠性強,而且外圍電路簡單),信號即可轉換為相應的碼制信號,這樣,單片機就可以直接讀取。普遍使用的電話雙音頻解碼芯片有MT8888、MT8880、MT8870等,在反復的論證比較以后,最后決定采用雙音頻解碼集成芯片MT8870來完成此功能模塊。如圖2.1

35、.3-1是MT8870 音調譯碼器(Tone Decoder),它由MITEL 公司開發(fā)生產,是一顆常用復頻譯碼IC,圖中是一個完整的DTMF 接收器,這個電路可以準確的接收DTMF 信號。它接收了DTMF 信號之后,內部將信號分成高頻帶和低頻帶,并把分析后的信號送至數字譯碼器,然后將信號輸到數字譯碼器中,以解出按鍵值,接下來將解出的按鍵值通過四條線(Q1、Q2、Q3、Q4)以二進制的方式輸出到外部共享Bus 上,其MT8870 接腳說明如表2.1.1-2,內部結構如圖2.1.3-1。需要注意的是,當MT8870芯片 解出一個按鍵值并輸出到外部時,它的CID接腳會從低態(tài)升為高態(tài),經過一段時間以

36、后再降為低態(tài),因此,我們可以利用CID腳電平變化的特點,當偵測到此腳有訊號時便馬上將Q1-Q4 接腳所產生的值讀入CPU,然后進行控制。圖2.1.3-1 MT8870音調譯碼器MT8870的輸出代碼(Q8Q4Q2Q1)與電話鍵盤上按鍵的對應關系如表3.1.3-2所示:表2.1.3-2 MT8870輸出代碼與鍵盤對應關系按鍵輸出代碼按鍵輸出代碼按鍵輸出代碼按鍵輸出代碼Q8Q4Q2Q1Q8Q4Q2Q1Q8Q4Q2Q1Q8Q4Q2Q110 0 0 150 1 0 191 0 0 1A1 1 0 120 0 1 060 1 1 001 0 1 0B1 1 1 030 0 1 170 1 1 11 0

37、1 1C1 1 1 140 1 0 081 0 0 01 1 0 0D0 0 0 0用戶在遠端按鍵以后,系統(tǒng)接收到的DTMF信號將經過耦合電容隔直、濾波,此后MT8870會接收并對其進行硬件譯碼,輸出的四位二進制數據通過Q1/Q2/Q3/Q4四個口連接到AT89S51單片機的P1.0P1.3口上, MT8870接收到有效的DTMF信號,在解出正確的BCD數據以后,CID端會升為高電平,CPU收到此信號后即可取走數據。CPU把P1口數據讀入,然后屏蔽掉高四位,并把讀入的數據保存在內部寄存器R7單元中,之后對讀入的數據進行分析判斷,從而得到遠程用戶輸入的命令。原理簡介:電路采用MT8870芯片作為

38、雙音多頻DTMF信號解碼芯片。MT8870的連線如圖2.1.32所示,其中,接在電源處的電容的作用是抗干擾。在MT8870的實際應用中,存在這樣一個問題:MT8870的使能控制端不允許中斷時,將關閉MT8870的CID端中斷。有效的解決方法是,把CID端接入非門的一端輸入,非門的另一輸入端則接到不定電平端P即可。對CID的有效控制(即中斷開放)為,EN=1則P3.2/INT0中斷允許;EN=0時則P3.2/INT0中斷關閉。把IN+與Vref相連,通過IN-管腳接收電話機發(fā)送過來的雙音多頻脈沖信號,雙音多頻信號先經過內部的撥號新濾波器,在濾除了撥號音信號后,經過前置放大電路的放大處理以后送入到

39、雙音頻濾波器中,先把雙音頻信號按低音頻信號、高音頻信號分開,然后再經幅度檢測器、高低群濾波器送至譯碼電路輸出,經過一些列的數學運算后,把解碼后相對應的8421碼通過輸出端(1114腳)輸出數據。MT8870芯片的輸出數據端Q1Q4連接到AT89S51芯片的P1口的P1.0P1.3,單片機P1口的P1.4P1.7已經與0處理,所以解碼芯片輸出的4位代碼有效并且能被單片機識別。MT8870輸出代碼與鍵盤對應關系如表3.1.3-2,其中,A,B,C,D 4個按鍵常被當作R/P,REDIAL,HOLD,HANDSFREE等功能使用。需要特別注意的是,對于“0”號碼,MT8870輸出的8421碼是“10

40、10”,而并非是“0000”;另外,按鍵“#”、“*”,在MT8870中輸出的8421碼分別為“1100”和“1011”。MT8870的CID有效端經施密特反相器后接AT89S51的INT0引腳,以確保單片機AT89S51可以獲取有效的數據。當MT8870獲取有效雙音多頻信號后,CID引腳的電平由低變高,再反相為低,INT0引腳檢測到以后,啟動外部中斷,指示P1口接收有效二進制代碼。而電話線路雜音、人們的語音信號等無效的雙音頻信號是不會引起MT8870的CID端變化的。本單元元器件列表:IC1是雙音頻解碼芯片,選取MT8870;變壓器選擇1:1音頻變壓器R10和C6組成濾波電路,R10和R9組

41、成放大電路,其中電容C6、C7均選擇0.1u,R9取220K,R10取33K;芯片外部晶振Y2選擇3.579MHz;C5選取0.1F;R8是輸出平衡電阻,選取100K;反向器選取74LS04的一組反向器;圖2.1.3-2 雙音多頻解碼電路2.1.4 單片機外圍電路電源:單片機使用的電源是+5V電源,其中正極接Vcc(40引腳),負極(地)接GND(20引腳)。振蕩電路:一般采用外接晶振的方法為時序電路單片機提供脈沖信號,使得單片機能夠正常工作。外接晶振接入XTALI、XTALZ(18、19腳)。有三點問題需要說明: (1)兩個瓷片電容C2和C3在20至3OuF,與石英振蕩器Xl組成時鐘電路,為

42、單片機提供一個頻率為12M的穩(wěn)定時鐘;(2)晶振頻率可以選用12MHz、11MHz、6MHz,在本設計中采用了12MHz的金屬外殼石英晶體振蕩器;(3)起振后第18個引腳會產生一個約為3V的正弦波。復位電路:任何單片機都需要有個復位的過程,然后才能正常工作,復位需要兩個機器周期(約5ms)的時間。復位電路如圖2.1.4-1(圖中電容C1的兩端并聯開關,實現手動復位)。圖中電阻和電容Cl組成按鍵復位電路,在按下鍵的時候,會有一個大于兩個機器周期的復位信號產生,為單片機提供一個高電平復位信號至RST引腳,使單片機復位。電阻R2選取l00K。電容Cl選用1u的電解電容。EA引腳(片內程序存儲器選用端

43、):當機器復位后,PC指針可能指向片外ROM 的0000H單元或者片內ROM的0000H單元,這取決于EA引腳是接低電平(訪問外部ROM)還是高電平(訪問內部ROM)。EA引腳需要接到電源正極。圖2.1.4-1 單片機外圍電路原理圖3 軟件設計3.1 軟件模塊經過分析比較,決定選用AT89S51作為控制的單片機芯片。系統(tǒng)軟件主要功能如下:系統(tǒng)身份認證:這個功能的設定,是為了保證只有合法用戶才能夠操作系統(tǒng),電話遠程控制系統(tǒng)開始工作以后,遠程用戶必須先輸入密碼,只有系統(tǒng)確認密碼正確后才具有操作權限并對系統(tǒng)進行操作。3.1.1 信號音檢測本單元可以使用AT89S51的兩個計數器的外部中斷方式來實現對

44、不同信號音的計數。3.1.2 密碼檢測本單元可以在系統(tǒng)初始化的時候,把密碼放在在單片機內部存儲器的一塊空間內。再用戶輸入密碼的過程中,單片機把接收到的密碼寫到另外的一塊空間內,然后利用減法運算循環(huán)比較密碼是否正確,這樣就可以實現密碼檢測的功能了。3.2 軟件設計本系統(tǒng)的軟件設計主要分為以下幾塊:系統(tǒng)初始化、振鈴檢測計數、控制摘掛機、雙音頻信號分析處理、密碼比對、控制電器等部分組成。每個功能模塊對于整體設計都是非常重要的,單片機AT89S51通過軟件程序才能很好的對外部的信息進行采集、分析、決策和執(zhí)行。下面就整體設計以及每個單元功能模塊分別進行說明。整體流程圖如3.21圖所示:開始初始化是否有鈴

45、音 NO YES計數器計數是否滿4次 NO YES自動摘機輸入密碼密碼是否正確? NO YES選擇并控制電器掛機圖3.2-1 系統(tǒng)流程圖3.2.1 系統(tǒng)完整程序ORG 0000H;從0000H執(zhí)行主程序LJMP MAIN;跳轉到主程序ORG 0003H;INT0中斷入口為0003HLJMP TT1;有中斷則跳轉到TT1ORG 000BH;T0中斷入口為000BHLJMP TT0;T0有中斷則跳轉到TT0ORG 001BH;T1中斷入口為001BHLJMP ITIME1;T1有中斷則跳轉到ITIME1ORG 0100H;從0100H執(zhí)行主程序MAIN: ANL P1,#0FH;將P1口高4為清0

46、MOV R4,#00H;將R4設為標志,初始標志為0 MOV R5,#05H;密碼設置為5位MOV TMOD,#06H;T0計數器模式,方式2 MOV TH0,#09BH;計數為100次 MOV TL0,#09BH;計數為100次MOV IE,#83H;開T0和INT0中斷SETB TR0;啟動T0計數 SETB IT0;INT0為負邊沿觸發(fā) LOOP:SJMP $;等待中斷TT0: CLR P3.1;振鈴4次后自動摘機 MOV r3, #0c8h;MOV TMOd,#016h;T1設置為計數器模式,工作方式1,T0為計數器模式,工作方式2MOV TH1,#3CH;設置TH1為03CHMOV

47、TL1,#0B0H;設置TL1為0B0HSETB ET1;開T1中斷SETB TR1;啟動計數器T1RETITT1:CLR EA;關閉所有中斷 PUSH PSW; PUSH ACC; CJNE R4,#01H,PASSWORD;標志如果不是1,跳轉到PASSWORD比對密碼ANL P1,#0FH;標志為1,將P1口高4為清0 MOV A,P1;將按鍵鍵值寫入A中CJNE A,#01H,LOOP1;鍵值若不是1,跳轉到LOOP1比較CPL P2.2;鍵值為1,將1電器開或者關 JMP QUITLOOP1:CJNE A,#02H,LOOP2;鍵值若不是2,跳轉到LOOP2比較CPL P2.3;鍵值

48、為2,將2電器開或者關 JMP QUITLOOP2: CJNE A,#03h,QUIT;鍵值若不是3,跳轉到QUITCPL P2.4;鍵值為3,將3電器開或者關 JMP QUITPASSWORD:DJNZ R5,SAVEKEY;密碼比對完,則跳轉到SAVEKEY MOV A,034H;將034H單元中的密碼寫入A CJNE A,#01H,PASS_ERR;第一位密碼錯誤就跳轉到PASS_ERR MOV A,033H;將033H單元中的密碼寫入A CJNE A,#02H,PASS_ERR;第二位密碼錯誤就執(zhí)行PASS_ERR MOV A,032H;將032H單元中的密碼寫入A CJNE A,#0

49、3H,PASS_ERR;第三位密碼錯誤就執(zhí)行PASS_ERR MOV A,031H;將031H單元中的密碼寫入A CJNE A,#04H,PASS_ERR;第四位密碼錯誤就執(zhí)行PASS_ERR CLR P2.0;密碼全部正確,綠燈亮 SETB P2.1;密碼錯誤指示燈不亮 MOV R4,#01H;將標志設為1 MOV R5,#05H;密碼設置為5位 JMP QUIT SAVEKEY: MOV A,R5;把R5中的數據寫入A ADD A,#030H; MOV R0,A MOV A,P1 MOV R0,A JMP QUITPASS_ERR: MOV R5,#05H ;將密碼設置為5位 MOV R4

50、,#00H ;將標志改為0 CLR P2.1;密碼錯誤,紅燈亮 SETB P2.0;綠燈滅 SETB P3.1;自動掛機QUIT: POP ACCPOP PSW LCALL DELAY MOV r3, #0c8h;MOV TMOd,#016h;T1設置為計數器模式,工作方式1,T0為計數器模式,工作方式2MOV TH1,#3CH;設置TH1為03CHMOV TL1,#0B0H;設置TL1為0B0HSETB ET1;開T1中斷SETB TR1;啟動T1計數SETB EA;開所有中斷RETIITIME1: DJNZ R3 , opt; setb p3.1;無操作延時后,自動掛機 MOV R5,#0

51、5H ;密碼設置為5位 MOV R4,#00H ;標志設為0 setb P2.1;滅掉紅燈 setb P2.0 ;滅掉綠燈clr ea;關閉所有中斷clr tr0;T0停止計數MOV TMOD,#06H;T0計數器模式,方式2MOV TH0,#09BH;計數次數設為100次 MOV TL0,#09BH;計數次數設為100次MOV IE,#83H;開T0和INT0中斷SETB TR0;啟動T0計數器opt: MOV TH1,#3CH MOV TL1,#0B0H RETIDELAY:;延時25ms程序 MOV R6,#100DY: MOV R7,#250 DJNZ R7,$ DJNZ R6,DY

52、RETend4 系統(tǒng)應用本系統(tǒng)操作起來簡單方便,下面參考系統(tǒng)流程圖,對使用方法做一個簡單的介紹:首先,用戶需要將本裝置的信號輸入線并聯在電話線的兩端,為裝置接上電源,按下復位鍵,本裝置就能夠正常的工作了。當用戶從異地打來電話時,本裝置可以接收到電話的振鈴信號,并開始計數,振鈴響一下,計數一次。當電話鈴聲計到4次,裝置自動摘機,這個時候用戶需要輸入正確的密碼才能進行下面的操作,如果密碼錯誤,裝置將會自動掛機。當用戶在輸入正確的密碼后,用戶就可以對裝置所連的電器(指示燈)進行選擇,然后根據需要對其進行開關控制。用戶可以在一次“通話”中同時控制幾個電器。如果用戶控制完畢,可以掛機,裝置在一定時間內沒

53、有檢測到操作時,會自動復位。需要注意,在通話過程中,如果在一定的時間內沒有操作,裝置將會自動掛機。此時,已控制的電器將保持其現有的狀態(tài),直到下一次用戶打來電話對其進行其他操作。本裝置的使用方法簡單易學,并且接口可以擴展,功能強大。為增加系統(tǒng)抗電磁干擾能力,可以從以下幾個方面改進:微控制器應該選用頻率低的時鐘。并且頻率越低越好,只要能夠滿足控制器性能的要求,低的時鐘可以有效提高系統(tǒng)的抗干擾能力和降低噪聲。減小信號傳輸中的畸變:當銅膜線上有上升沿和下降沿快、信號頻率高的信號(也叫高速信號)在傳輸時,由于銅膜線電容和電感會產生影響,致使信號發(fā)生畸變,如果畸變過大的話,系統(tǒng)工作就不可靠。所以一般要求,在電路板上傳輸信號的銅膜線過孔數目越少越好,越短越好。典型值:長度小于等于25cm,過孔數小于等于2個。元件的布置應該將抗電磁干擾問題充分考慮進去,所以應合理區(qū)分元件在電路板上排列的位置。第一個原則就是數字電路、模擬電路和產生大噪聲的電路(繼電器、大電流開關等)在布局上要合理分開,以將他們相互間的信號耦合降到最小。還有就是各個元器件之間的銅膜線要盡量的短,處理好地線。分開連接模擬地、數字地、大功率器件地,然后再匯集到電源的接地點。應該用金屬屏蔽罩屏蔽那些對噪聲和干擾非常敏感的電路或高頻噪聲特別嚴重的電路。去耦電容。多層陶瓷電容或瓷片電容的高頻特性較其他電容更好,通常選為去

溫馨提示

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

評論

0/150

提交評論