新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于89C51設計的電話遠程控制開關

        基于89C51設計的電話遠程控制開關

        作者: 時間:2012-06-07 來源:網絡 收藏

        光電耦合器以光電轉換原理傳輸信息,它不僅使信息發出端(一次側)與信息接收并輸出端(二次側)是絕緣的,從而對地電位差干擾有很強的抑制能力,而且有很強的抑制電磁干擾能力。速度高、價格低、接口簡單。
        振鈴信號通過光耦4N25的4腳輸出振鈴正弦波,R2和C2共同組成濾波電路,信號到了開關三極管T1的基極就變成了方波。經過三個反向器的整形輸出到單片機AT的T0/P3.4口,中斷方式采用外部中斷,計數5次產生T0中斷,控制繼電器模擬摘機,完成振鈴音檢測。

        原器件選取:

        1、C1隔直電容,因為是過濾直流,濾出低頻信號,而且振鈴信號的電壓還比較高,因此選取1μF耐壓100V的瓷片電容(由于條件限制,本人用兩個2μF耐壓60V的電解電容負極相連代替之);
        2、D1為穩壓二極管,選取36V的穩壓二極管;
        3、R1是4N25的限流電阻,取33 kΩ;
        4、IC1選取光電耦合器4N25;
        5、R2和C2共同組成振鈴信號音濾波電路,根據電話振鈴的技術指標:頻率25Hz的正弦波,1秒通,4秒斷,τ=RC可以推出0.02≤τ≤4(S)。為了使振鈴信號音輸出很好的方波波形,如圖3.2所示,計算后選取R2=10kΩ,C2=100μF,τ=1s;

        圖3.2
        6、R3和D3共同組成振鈴指示燈,R3=100Ω,D3為黃色5mm發光二極管;
        7、T1和R4組成模擬開關電路,T1選取9013,根據分壓原理和74LS04的低電平有效值,R4取2.9 kΩ;
        8、反向器由74LS04中的三組反向器組成,起整流作用;

        3.2 模擬摘掛機電路

        設計主要思路:
        根據國家有關標準規定:不論任何電話機,摘機狀態的直流電阻應≤300Ω,有“R”鍵的電子電話機的摘機狀態直流電阻應≤350Ω。在掛機狀態下,其漏電流≤5μA。
        當用戶摘機時,電話機通過叉簧接上約300Ω的負載,使整個電話線回路流過約30mA的電流。交換機檢測到該電流后便停止鈴流發送,并將線路電壓變為十幾伏的直流,完成接續。

        根據有關技術指標,模擬摘掛機電路設計如圖3.3所示:

        模擬摘掛機電路主要由一個三極管開關電路控制繼電器的開關,繼電器控制接入電話線兩端的200Ω電阻。摘掛機信令由單片機通過使TXD/P3.1口變為高電平實現。經過兩個反向器驅動發光二極管D1指示摘機,同時改變三極管T1的基極電壓,使T1處于導通狀態,從而開啟繼電器J1,J1使電阻R3接入電話線兩端。因為R3的電阻為200Ω,使回路電流變大,控制電路向交換機發出模擬摘機的信號,交換機響應摘機信號,完成電話線路接通。整個電路完成自動模擬摘機過程。

        圖3.3
        根據設計原理,原器件選取如下:

        1、 反向器取74LS04中的兩組反向器;
        2、 R1是摘機指示燈限流保護電阻,取220Ω;
        3、 D1是摘機指示燈,取5mm綠色發光二極管;
        4、 R2是三極管限流電阻,取2kΩ;
        5、 T1三極管是起模擬開關控制繼電器的作用,取9013;
        6、 D2二極管是起繼電器反向保護的作用,取4001;
        7、 J1是繼電器控制開關,取JRC 4001F(DC5V);
        8、 R3是摘機電阻,取200Ω;

        3.3 雙音頻解碼

        原理簡介:

        雙音多頻DTMF信號解碼電路由(簡介詳見附錄)主要承擔。的連線如圖3.4所示,它的2、3腳接收來自電話機的雙音多頻脈沖信號該雙音多頻信號先經其內部的撥號音濾波器,濾除撥號音信號,然后經前置放大后送入雙音頻濾波器,將雙音頻信號按高,低音頻信號分開,再經高,低群濾波器,幅度檢測器送入輸出譯碼電路,經過數字運算后,在其數據輸出端(11~14腳)輸出相對應的8421碼。的數據輸出端Q4 ~ Q1連到AT的P1口的P1.4 ~ P1.7,CPU經P1口識別4位代碼。電話按鍵與相應譯碼(Q4~Q1)輸出見附錄。其中,A,B,C,D 4個按鍵常被當作R/P,REDIAL,HOLD,HANDSFREE等功能使用。注意,需要特別指出的是,對于“0”號碼,MT8870輸出的8421碼并非是“0000”,而是“1010”;另外,“*”,“#”字號碼,MT8870輸出的8421碼分別為“1011”和“1100”。有些技術資料會出現錯誤,包括比較權威的手冊,所以我是在實驗中,記錄下測量的每一組數據后,才把這些數據應用于程序當中。為了使單片機AT獲取有效數據,MT8870的STD有效端經反相后接CPU的/INT0引腳。當MT8870獲取有效雙音多頻信號后,

        圖3.4

        STD電平由低變高,再反相為低,CPU檢測后,指示P1口接收有效二進制代碼。而無效的雙音頻信號(電話線路雜音、人們的語音信號等)是不會引起MT8870的STD端變化的。DTMF接收器的外圍電路如圖3.4所示。其中,接在電源處的電容對抗干擾有一定的作用。在實際應用中,存在這樣一個問題:MT8870的使能控制端不允許中斷時,將使MT8870的STD端中斷關閉。其解決辦法是,將STD端接與非門的一輸入,與非門的另一輸入端接一不定電平端P。當STD有效(即中斷開放)時,P = 1則/INT0中斷關閉;P = 0時則/INT0中斷允許。

        本單元元器件列表:

        1、 D1、D2、D3、D4共同組成整流電路,選取4001;
        2、 R1和R2是輸入平衡電阻,取100KΩ,C1隔直電容,取0.1μF;
        3、 芯片外部晶振選擇3.579MHz;
        4、 IC1是雙音頻解碼芯片,選取MT8870;
        5、 C2選取0.1μF;
        6、 R3是輸出平衡電阻,選取100KΩ;
        7、 反向器選取74LS04的一組反向器;

        3.4 信號音提示電路

        原理說明:

        為了方便本系統的使用者,本人設計了信號音提示音電路,如圖3.5。首先我規定了信號音的規范以及其對應含義:
        1、 響1聲,頻率為500Hz:請輸入密碼;
        2、 響2聲,頻率為500Hz:請輸入需要控制的電器號;
        3、 響3聲,頻率為500Hz:請輸入控制開/關;
        4、 響1聲,頻率為1000Hz:完成操作;
        5、 響3聲,頻率為1000Hz:密碼錯誤;

        信號音從單片機89C51的RXD/P3.0口輸出,先經過一組反向器進行整流、隔離,從反向器輸出的是頻率一定,時通時斷的方波,提示信號經過隔直電容C1輸入到音頻放大集成電路LM386N-1的輸入端。經過LM386N-1的放大,信號音經耦合電容C5至變壓器T1,它是音頻輸出專用的耦合變壓器,正好符合阻抗匹配的要求。
        本電路比較難點在于耦合變壓器T1的選取。因為電話線中直流電壓比較高,而且還有各種信號音,這些都會影響到語音信號加載到電話線上,因此本裝置使用一個耦合變壓器作為隔離器件。這個耦合變壓器的阻抗匹配問題是設計的難點,設計初我查閱有關資料并沒發現具體參數。后來看到可以郵購這種電話語音專用耦合變壓器,其具體性能都很優秀,但是價格太高,不符合我的設計原則(元器件便宜),因此棄置不用。
        到了畢業設計的后期,本裝置的基本功能已經完成,音反饋的問題又重新提到議事日程上來了。經過我不懈的努力,終于在電子市場上發現了體積很小的電話專用耦合變壓器,價格只有2元。這種耦合變壓器分兩種,一種是輸入,一種是輸出,經過實驗表明輸入用的耦合變壓器反饋語音性能比較好,其體積大約是10mm×10mm×8mm。
        音頻放大集成電路LM386的連接比較簡單,本裝置的使用是LM386放大增益為50dB的連接方式。


        圖3.5
        原器件選取:
        1、 反向器選取74LS04中的一組反向器;
        2、 C1的是對音頻信號起隔直耦合的作用,所以取100μF的電解電容,耐壓性能無特殊要求;
        3、 IC1、R1、R2、C2、C3、 C4和C5共同組成音頻放大電路,IC1選取LM386N-1,R1取1kΩ,C2取10μF的電解電容,C3取10μF的電解電容,R2取1kΩ, C4取10μF的電解電容,C5取100μF的電解電容;
        4、 T1是音頻輸出專用變壓器;
        3.5 電器控制電路

        原理說明:
        本單元電路主要是由譯碼擴展電路、反向電路、D觸發器和繼電器控制電路組成。電路圖如圖3.6所示。
        首先,單片機AT89C51從P1口的低四位輸出四位控制信號。P1.0、P1.1、P1.2作為三位數據線,P1.3作為使能控制信號,一同加在3-8線譯碼器的輸入端。當使能端有效時,三位數據線經過譯碼器數擴展為八位數據線。這八位數據連接八個反向器進行整流隔離,然后連接D觸發器進行數據鎖存。每個D觸發器的輸出端都控制一路繼電器,而每一路繼電器也控制一路電器的開關。二極管指示燈并聯在開關三極管兩段作為電器開關指示。這樣就可以完成單片機對多路電器的控制。也可以把P1口的八位都用作控制電器,數據輸入口改在P2口。
        圖3.6所示的為一路電器控制電路圖,在本裝置中一共有八路電器可以控制,其它電器控制相同。

        圖3.6
        元器件選取:
        1、3-8線譯碼器選取74LS138P;
        2、反向器選取兩片74LS04(每一片內有六個反向器)中的九個反向器;
        3、觸發器選取四片4013(每一片內有兩個D觸發器);
        4、三極管選取八個9013;
        5、二極管起保護作用,選取八個4001;
        6、指示燈選取八個紅色5mm發光二極管;
        7、指示燈限流電阻選取八個1kΩ的電阻;
        8、三極管的限流電阻選取八個2kΩ的電阻;
        9、繼電器選取八個JRC-4100F DC5V繼電器;

        第四章 軟件設計

        本系統的軟件設計主要分為系統初始化、振鈴檢測計數、控制摘掛機、雙音頻信號分析處理、控制電器、信號音提示等部分。每個功能模塊對于整體設計都是非常重要的,單片機T89C51通過軟件程序才能很好的對外部的信息進行采集、分析和決策。下面,就整體設計以及每個單元功能模塊分別進行說明。

        整體流程圖:

        4.1 信號音發聲部分

        本功能模塊主要是產生信號提示音,方便不同的使用者。根據普通人耳的反應頻率為20Hz至20KHz的范圍,和CCITT規定的電話話音信號的頻率范圍是300Hz至3400Hz,我在本功能單元的發聲頻率定為500Hz和1000Hz兩種。

        主要分為五種提示音:

        1、 低音,表示裝置已經摘機,請輸入密碼,其參數:頻率f=500Hz,延時t=0.5秒/聲;
        2、兩聲低音,表示密碼已經通過,請選擇電器,其參數:頻率f=500Hz,延時t=0.5秒/聲;
        3、三聲低音,表示電器已經選定,請控制(開/關),其參數:頻率f=500Hz,延時t=0.5秒/聲;
        4、三聲高音,表示密碼輸入錯誤,其參數:頻率f=1000Hz,延時t=0.3秒/聲;
        5、一聲高音,表示控制已經完成,其參數:頻率f=1000Hz,延時t=0.3秒/聲;

        提示音發生是使用有限循環,反復使單片機的RXD口的電平反轉,從而形成方波信號。 子程序代碼:

        ORG 1100H
        RING10:MOV R6,#20 ;input password
        RING11:MOV R7,#20 ;800Hz
        RING12:LCALL DL10 ;sound=1
        CPL P3.0 ;delay=0.5s
        DJNZ R7,RING12
        DJNZ R6,RING11
        CLR P3.0
        RET
        ORG 1150H
        RING20:MOV R3,#03
        RING21:MOV R6,#20 ;password wrong
        RING22:MOV R7,#20 ;1600Hz
        RING23:LCALL DL20 ;sound=3
        CPL P3.0 ;delay=0.25s
        DJNZ R7,RING23
        DJNZ R6,RING22
        CLR P3.0
        MOV R7,#200
        RING24:LCALL DL10
        DJNZ R7,RING24
        DJNZ R3,RING21
        CLR P3.0
        RET

        ORG 1200H
        RING30:MOV R3,#02
        RING31:MOV R6,#20 ;select
        RING32:MOV R7,#20 ;800Hz
        RING33:LCALL DL10 ;sound=2
        CPL P3.0 ;delay=0.5s
        DJNZ R7,RING33
        DJNZ R6,RING32
        CLR P3.0
        MOV R7,#200
        RING34:LCALL DL10
        DJNZ R7,RING34
        DJNZ R3,RING31
        CLR P3.0
        RET

        ORG 1250H
        RING40:MOV R3,#03
        RING41:MOV R6,#20 ;control
        RING42:MOV R7,#20 ;800Hz
        RING43:LCALL DL10 ;sound=3
        CPL P3.0 ;delay=0.5s
        DJNZ R7,RING43
        DJNZ R6,RING42
        CLR P3.0
        MOV R7,#100
        RING44:LCALL DL10
        DJNZ R7,RING44
        DJNZ R3,RING41
        CLR P3.0
        RET

        ORG 1300H
        RING50:MOV R6,#40 ;finish
        RING51:MOV R7,#20 ;1600Hz
        RING52:LCALL DL20 ;sound=1
        CPL P3.0 ;delay=0.15s
        DJNZ R7,RING52
        DJNZ R6,RING51
        CLR P3.0
        RET



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 霍州市| 肃南| 万年县| 将乐县| 简阳市| 鸡西市| 来安县| 大余县| 如东县| 辽阳市| 永平县| 聂荣县| 芦溪县| 柯坪县| 沙坪坝区| 绵阳市| 平阴县| 门源| 宁海县| 屏东市| 安溪县| 阿荣旗| 乐陵市| 瓮安县| 阿城市| 弥渡县| 突泉县| 常州市| 蓬莱市| 内乡县| 天柱县| 垫江县| 喜德县| 绵阳市| 吉首市| 鹿邑县| 交城县| 北京市| 来宾市| 鹤壁市| 海淀区|