基于51單片機(jī)設(shè)計(jì)的電話遙控器
5.2.2 振鈴音檢測(cè)
在本單元電路制作前期,實(shí)驗(yàn)室中無(wú)模擬交換機(jī),無(wú)法產(chǎn)生振鈴信號(hào),我只好在完成此部分的焊接后回寢室中完成其測(cè)試。將本裝置的電話線兩端并聯(lián)在電話機(jī)兩端,摘機(jī)撥打“190”,然后掛機(jī),市交換機(jī)會(huì)回送連續(xù)的測(cè)試振鈴音。經(jīng)過(guò)測(cè)量,這種測(cè)試振鈴音和正常的振鈴信號(hào)的頻率、振幅等特性都一樣,只是正常的振鈴信號(hào)是1秒通4秒斷,而這種測(cè)試振鈴音是連續(xù)的。當(dāng)送測(cè)試振鈴音時(shí),用萬(wàn)用表的直流檔測(cè)量光電耦合器4N25的輸出端,有明顯的電壓,這說(shuō)明可以形成中斷響應(yīng)信號(hào)。后接振鈴指示燈,發(fā)現(xiàn)在送鈴流 圖5.1信號(hào)時(shí),指示燈亮,但是燈在閃爍。分析得光耦輸出端所接的濾波電容C2太小,于是把原來(lái)的1μF換成現(xiàn)在的100μF,如右圖5.1所示,問(wèn)題得到解決。
因?yàn)閱纹瑱C(jī)T0所響應(yīng)的外部中斷信號(hào)是低電平有效,所以在光耦輸出端接了一個(gè)開(kāi)關(guān)三極管T1控制指示燈,在三極管的輸出端接了三個(gè)反向器。經(jīng)過(guò)三極管T1的開(kāi)關(guān)作用和三個(gè)反向器的反向作用,輸出應(yīng)該為低電平。但是在測(cè)量反向器輸出端時(shí)發(fā)現(xiàn):振鈴指示燈亮,但反向器輸出端為高電平。說(shuō)明振鈴信號(hào)可以通過(guò)三極管,但無(wú)法通過(guò)反向器。分析原因可能是反向器74LS04壞了,換之,再測(cè),還是老問(wèn)題。經(jīng)過(guò)細(xì)心測(cè)量三極管的發(fā)射極電壓發(fā)現(xiàn):有振鈴時(shí)Ve=1.1V,這時(shí)反向器74LS04認(rèn)為是低電平,當(dāng)無(wú)振鈴脈沖信號(hào)時(shí),還是認(rèn)為是低電平,所以振鈴信號(hào)無(wú)法通過(guò)反向器。解決方法很簡(jiǎn)單,把三極管的發(fā)射極端的下拉電阻R4從原來(lái)的20kΩ改成5.1kΩ,提升三極管的發(fā)射極電壓。
在畢業(yè)設(shè)計(jì)的后期,實(shí)驗(yàn)室有了模擬小交換機(jī),經(jīng)測(cè)試,本單元電路完全正常,振鈴檢測(cè)部分調(diào)試完畢。
5.2.3 模擬摘掛機(jī)
此部分的調(diào)試較為容易,電路接好后,用5V高電平測(cè)試之,指示燈亮,繼電器吸合正常。接入模擬小交換機(jī),控制摘機(jī)時(shí),交換機(jī)的端口指示燈亮,反之掛機(jī)時(shí),指示燈滅。說(shuō)明此部分完全正常。接入仿真機(jī)測(cè)試時(shí)發(fā)現(xiàn):?jiǎn)纹瑱C(jī)的TXD端不能控制模擬摘掛機(jī)部分的摘掛機(jī)。分析得出結(jié)論:可能是接口的電平不相符合。解決方法:加上一個(gè)三極管模擬開(kāi)關(guān),加上一個(gè)反向器(74LS04)進(jìn)行控制隔離作用。經(jīng)過(guò)接入仿真機(jī)測(cè)試表明反向器的作用很明顯,于是在后面的電路設(shè)計(jì)當(dāng)中,我在許多的接口上大多使用了反向器。至此,模擬摘掛機(jī)部分調(diào)試完畢。
5.2.4 控制電器
控制電器這部分的外圍硬件電路很容易,在調(diào)試過(guò)程中很順利完成。在接仿真機(jī)時(shí),使用的是P2口控制電器,實(shí)驗(yàn)結(jié)果表明P2口無(wú)法正常控制每個(gè)電器,翻閱資料發(fā)現(xiàn)單片機(jī)89C51的P2口沒(méi)有數(shù)據(jù)鎖存功能,不能保持上一個(gè)狀態(tài)的數(shù)據(jù)。解決方法:把P2口控制電器改為P1口的低四位控制電器,改線之后控制正常,但是新的問(wèn)題出現(xiàn)了,原來(lái)要求控制八路的端口,現(xiàn)在只能控制四個(gè)電器。
經(jīng)過(guò)市場(chǎng)實(shí)際分析,一般的控制電器只要求3~4路即可,為了實(shí)驗(yàn)單片機(jī)擴(kuò)展控制功能,提高本遙控裝置的潛在功能,我決定實(shí)驗(yàn)使用3-8線譯碼器74LS138對(duì)P1口的低四位輸出數(shù)據(jù)進(jìn)行譯碼擴(kuò)展。具體電路詳見(jiàn)前面。在成功的擴(kuò)展了控制電器的個(gè)數(shù)后,我又發(fā)現(xiàn)了一個(gè)新的問(wèn)題:遙控器不能同時(shí)使兩路以及兩路以上的電器開(kāi),即在同一時(shí)刻,遙控器只能使一路電器開(kāi)啟。
經(jīng)過(guò)仔細(xì)分析,我發(fā)現(xiàn)了問(wèn)題原因之所在,那就是譯碼器的原理問(wèn)題。通常情況下我們認(rèn)為的譯碼器可以擴(kuò)展所能控制的電器,其實(shí)譯碼器只能擴(kuò)展位數(shù),而不能使?fàn)顟B(tài)發(fā)生變化。例如:三位二進(jìn)制000~111可以控制表示三個(gè)電器、八種狀態(tài),而經(jīng)過(guò)3-8線譯碼器譯碼后,可以控制八個(gè)電器,但是其狀態(tài)也只有八種,如下表所示。
A2 A1 A0 輸出D0~D7
0 0 0 0 1 1 1 1 1 1 1
0 0 1 1 0 1 1 1 1 1 1
0 1 0 1 1 0 1 1 1 1 1
0 1 1 1 1 1 0 1 1 1 1
1 0 0 1 1 1 1 0 1 1 1
1 0 1 1 1 1 1 1 0 1 1
1 1 0 1 1 1 1 1 1 0 1
1 1 1 1 1 1 1 1 1 1 0
其解決方法是:使用D觸發(fā)器使繼電器保持上一個(gè)狀態(tài),這樣才能使八路電器可以控制28=256個(gè)狀態(tài)。
5.2.5 雙音頻檢測(cè)
雙音頻檢測(cè)是整體電路一個(gè)比較重要的過(guò)程,它的調(diào)試主要圍繞著雙音多頻解碼芯片8870展開(kāi)的。在此部分的制作的前期,我采用的芯片是CM8870CPI。開(kāi)始連接電路調(diào)試時(shí),整體電路工作很正常,后來(lái)這塊芯片使用大約一個(gè)星期左右的時(shí)間,解碼電路經(jīng)常會(huì)出現(xiàn)解碼出錯(cuò)的情況。經(jīng)過(guò)仔細(xì)檢查電路,仿真機(jī)單步執(zhí)行進(jìn)行調(diào)試,確認(rèn)硬件電路無(wú)誤,診斷為CM8870CPI的問(wèn)題。根據(jù)我的初步分析認(rèn)定可能是芯片老化的原因,后更換為MT8870DE發(fā)現(xiàn)本裝置工作很正常,而且換上MT8870DE工作了將近一個(gè)月,整體電路沒(méi)有發(fā)生任何解碼誤碼情況,MT8870DE在最后的聯(lián)機(jī)調(diào)試過(guò)程中也沒(méi)有出現(xiàn)任何問(wèn)題。
5.3 電話遙控器軟件程序調(diào)試
5.3.1軟件系統(tǒng)設(shè)置
對(duì)于本系統(tǒng)而言,軟件程序所實(shí)現(xiàn)的功能比較多,所以軟件程序的調(diào)試顯得相當(dāng)?shù)臒┈崱U麄€(gè)程序是使用匯編語(yǔ)言,在MBUG下編寫(xiě)調(diào)試完成的。
首先我使用的是我自己的計(jì)算機(jī)聯(lián)接MCS-51仿真機(jī),計(jì)算機(jī)的主頻為333MHz,但是出現(xiàn)了許多的問(wèn)題。第一個(gè)問(wèn)題就是:我所使用的MCS-51仿真機(jī)型號(hào)是ME-5103,聯(lián)入計(jì)算機(jī)的25針串行口來(lái)進(jìn)行程序的讀入,但是我的計(jì)算機(jī)沒(méi)有25針串行口。觀察計(jì)算機(jī)的后面,主板上只有一個(gè)25針并行口,是用來(lái)連接打印機(jī)的;除了這個(gè)25針串行口外,還有兩個(gè)9針串行口。
我只有把MCS-51仿真機(jī)的25針接口變成9針串行接口,才能連接計(jì)算機(jī)。后來(lái)我找到一個(gè)25針-9針的轉(zhuǎn)換口,可以通過(guò)他使MCS-51仿真機(jī)和我的計(jì)算機(jī)聯(lián)接。
我使用的是Manley In-Circuit Emulator Debugger(MBUG)開(kāi)發(fā)軟件,使用時(shí)發(fā)現(xiàn)此系統(tǒng)可以進(jìn)行正常的Assemble(匯編),但是不能正常的進(jìn)行Load Program,執(zhí)行時(shí)會(huì)出現(xiàn)divide overflow error的錯(cuò)誤,然后就退出此編譯系統(tǒng),這就使得無(wú)法進(jìn)行仿真機(jī)模擬實(shí)驗(yàn)。
經(jīng)過(guò)實(shí)驗(yàn)室多組同學(xué)的八臺(tái)計(jì)算機(jī)的嘗試,我們終于發(fā)現(xiàn)了問(wèn)題之所在。實(shí)驗(yàn)結(jié)果表明:主頻高于233MHz的計(jì)算機(jī)都不能正常聯(lián)接MCS-51仿真機(jī),而主頻低于100MHz的計(jì)算機(jī)(有25針串行接口)均可以進(jìn)行仿真實(shí)驗(yàn)。后來(lái)經(jīng)過(guò)查閱有關(guān)技術(shù)資料,型號(hào)為ME-5103的MCS-51仿真機(jī)只能工作在IBM PC/XT/AT 286/386/486的環(huán)境下。
由于實(shí)驗(yàn)室的低檔計(jì)算機(jī)(能聯(lián)接MCS-51仿真機(jī))的不太多,所以我們只有把僅有的幾臺(tái)計(jì)算機(jī)進(jìn)行優(yōu)化重組,以便合理利用有限的計(jì)算機(jī)資源。我的匯編語(yǔ)言程序相對(duì)來(lái)說(shuō)還是比較多的,調(diào)試起來(lái)可能費(fèi)時(shí),所以我先在自己的計(jì)算機(jī)上對(duì)程序的語(yǔ)法錯(cuò)誤(syntax error)進(jìn)行調(diào)試修改,然后又對(duì)地址覆蓋(org address is less)的錯(cuò)誤進(jìn)行修改,既對(duì)每個(gè)子程序的開(kāi)始地址進(jìn)行仔細(xì)的調(diào)整。到此為止整個(gè)軟件程序調(diào)試環(huán)境就已經(jīng)配好了。
5.3.2提示音信號(hào)
在本單元的調(diào)試過(guò)程中,我認(rèn)為此部分的結(jié)構(gòu)比較簡(jiǎn)單,因此在整體程序中直接調(diào)試。首先Ctrl+F5單步執(zhí)行,發(fā)現(xiàn)此部分的RING1子程序正常,而其它的子程序在執(zhí)行時(shí)卻發(fā)生死循環(huán)。我把這幾個(gè)子程序單獨(dú)切出來(lái)進(jìn)行分析,卻發(fā)現(xiàn)執(zhí)行正常,于是我推測(cè)并不是子程序本身的結(jié)構(gòu)問(wèn)題。然后使用Ctrl+F8對(duì)整個(gè)程序單步執(zhí)行(兩種單步執(zhí)行的區(qū)別在于F5直接執(zhí)行子程序,即不單步執(zhí)行子程序,而F8對(duì)于整個(gè)程序都是單步執(zhí)行,包括子程序),發(fā)現(xiàn)RING2中的R5寄存器已經(jīng)在主程序中用作判斷標(biāo)志位,程序已經(jīng)在外部完成對(duì)其賦值。這樣就導(dǎo)致重復(fù)賦值,因此無(wú)法跳出循環(huán)子程序,直接導(dǎo)致死循環(huán)。
程序代碼:
ORG 1150H
RING20:MOV R3,#03
RING21:MOV R6,#20 ;password wrong
RING22:MOV R5,#20 ;1600Hz
RING23:LCALL DL20 ;sound=3
CPL P3.0 ;delay=0.25s
DJNZ R5,RING23
DJNZ R6,RING22
CLR P3.0
MOV R5,#200
RING24:LCALL DL10
DJNZ R5,RING24
DJNZ R3,RING21
CLR P3.0
RET
后來(lái)我將子程序中的R5寄存器換成R7寄存器,子程序就正常了。
5.3.3密碼檢測(cè)
本部分的調(diào)試比較艱難,我是先調(diào)試一位密碼,然后再調(diào)試五位密碼。我先設(shè)定R5為一位,即先設(shè)定一位密碼作為測(cè)試。首先單步執(zhí)行,發(fā)現(xiàn)信號(hào)音無(wú)法正常輸入到單片機(jī)的38H地址處的存儲(chǔ)空間。現(xiàn)象:計(jì)算機(jī)聯(lián)機(jī)單步執(zhí)行,接收振鈴信號(hào),三次自動(dòng)摘機(jī),當(dāng)程序執(zhí)行到等待INT0中斷(一個(gè)小的循環(huán)程序)時(shí),既等待輸入密碼時(shí),我按下“7”(事先設(shè)定的一位密碼),單片機(jī)能夠正常的響應(yīng)中斷信號(hào),跳出循環(huán)程序,執(zhí)行中斷處理程序,單片機(jī)在比較比較密碼時(shí),總是出錯(cuò)。
在程序單步執(zhí)行時(shí),我仔細(xì)觀察了每個(gè)寄存器和存儲(chǔ)器的內(nèi)容。地址為38H的存儲(chǔ)空間內(nèi)容始終為FFH,并沒(méi)有變化,而且無(wú)論輸入什么密碼,寄存器A的內(nèi)容總是恒定不變的。因?yàn)榈刂窞?8H的存儲(chǔ)空間內(nèi)放的是用戶輸入的密碼,累加器A放的是@30H減去@38H的值,即輸入密碼正確時(shí)應(yīng)該為0,所以我認(rèn)為單片機(jī)并沒(méi)有把數(shù)據(jù)寫(xiě)入地址為38H的存儲(chǔ)空間。
經(jīng)過(guò)反復(fù)調(diào)試我也沒(méi)有發(fā)現(xiàn)問(wèn)題之所在,于是我抱著嘗試的想法用F9全部執(zhí)行一次。結(jié)果很驚人,程序居然能通過(guò)密碼檢測(cè)部分。我仔細(xì)的思考了單步執(zhí)行的每一個(gè)狀態(tài),終于發(fā)現(xiàn)了失敗的原因。
程序單步執(zhí)行到等待INT0中斷,即要求輸入密碼時(shí),按下電話機(jī)的一個(gè)按鍵,程序就跳出循環(huán)程序,跳到中斷處理程序處處理雙音頻信號(hào)的輸入。因?yàn)閱尾綀?zhí)行是一步一步的執(zhí)行,其執(zhí)行速度比較慢,等到把單片機(jī)的P1口高四位的雙音頻解碼信號(hào)寫(xiě)入地址為38H的存儲(chǔ)空間時(shí),信號(hào)早已過(guò)去,P1口高四位也恢復(fù)高電平,寫(xiě)入P1口高四位的數(shù)據(jù)當(dāng)然是FFH。而F9全程執(zhí)行速度非常快,不是外部信號(hào)等待單片機(jī)的處理,而是單片機(jī)等待外部信號(hào)的輸入,當(dāng)然不會(huì)漏掉數(shù)據(jù)。
原因找到了,解決方法也很簡(jiǎn)單:在程序單步執(zhí)行時(shí),到了等待INT0中斷時(shí),我按下“7”鍵的時(shí)間特別長(zhǎng),直到看見(jiàn)程序執(zhí)行到寫(xiě)入地址為38H的存儲(chǔ)空間后才松手。這樣數(shù)據(jù)就能正確寫(xiě)入寄存器,當(dāng)然能夠通過(guò)密碼檢測(cè)。
程序代碼:
HOKE1: LJMP HOKE
ORG 0090H
TT0: SETB 7DH
RETI
ORG 0150H
HOKE: CLR 7DH
SETB P3.1 ;open telephone
CLR TR0 ;close T0
MOV R2,#03H ;password wrong 3
LCALL RING10 ;input password
IN: CLR 7EH ;7EH=0
DTMF: MOV R7,#1H ;PASSWORD:5 R7
MOV R1,#38H ;sign
SETB P1.4
SETB P1.5
SETB P1.6
SETB P1.7
WAIT: JBC 7EH,CC ;wait INT0
LJMP WAIT
CC: MOV R7,#1H ;password 5***
MOV R0,#30H ;password top
MOV R1,#38H ;sign
CMP: MOV A,@R1
MOV R4,A
CLR C
MOV A,@R1
SUBB A,@R0 ;test
INC R0
INC R1
JZ AAA ;OK,pass one
LJMP QQ
AAA: DJNZ R7,CMP ;R7-1!=0
LJMP LL ;pass
QQ: DJNZ R2,IN1 ;password wrongR2!=0
LCALL RING20
LJMP STOP
IN1:LCALL RING20 ;password wrong,try!
LJMP IN
5.4 聯(lián)機(jī)在線調(diào)試
經(jīng)過(guò)前一階段硬件、軟件的分別調(diào)試,本裝置的制作也到了最后的沖刺階段,那就是聯(lián)機(jī)在線調(diào)試。
聯(lián)機(jī)在線調(diào)試所用到的設(shè)備:
1、 MCS-51仿真機(jī)一臺(tái);
2、 TC-108H“多路通”實(shí)驗(yàn)程控交換機(jī)一臺(tái);
3、 HA8188(9)P/T雙音多頻電話機(jī)一臺(tái);
4、 HA119(6)P/T雙音多頻電話機(jī)一臺(tái);
5、 主頻為50MHz的微機(jī)一臺(tái);
由于實(shí)驗(yàn)室條件有限,只有兩臺(tái)交換機(jī)供十幾組使用,時(shí)間非常有限。本裝置的前期調(diào)試工作盡可能的完成在交換機(jī)外,例如:振鈴檢測(cè)的調(diào)試基本上就是在宿舍的電話上完成的。我是選擇了一個(gè)晚上從23點(diǎn)一直調(diào)試到了次日凌晨2點(diǎn),在別人不使用交換機(jī)的時(shí)候調(diào)試基本完畢的。
聯(lián)機(jī)在線調(diào)試的第一步是振鈴音檢測(cè),由于事先的調(diào)試,這一部分沒(méi)有花太多時(shí)間,只是在單步執(zhí)行的時(shí)候,有時(shí)會(huì)發(fā)生仿真機(jī)不正常結(jié)束程序的情況。經(jīng)過(guò)詢問(wèn)老師和同學(xué),MCS-51仿真機(jī)不是太穩(wěn)定,這種情況經(jīng)常發(fā)生,在全速執(zhí)行或把程序燒錄片子之后就不會(huì)發(fā)生了。
雙音頻信號(hào)解碼在聯(lián)機(jī)在線調(diào)試的時(shí)候也沒(méi)有發(fā)生太大的問(wèn)題。
最大的問(wèn)題發(fā)生在程序內(nèi)部的信息處理部分,因?yàn)槲沂孪炔](méi)有對(duì)信號(hào)的編解碼做規(guī)定,這樣就直接導(dǎo)致雙音頻信號(hào)解碼后輸入到單片機(jī)內(nèi),造成跳轉(zhuǎn)指令混亂。比如我按下“7”鍵,單片機(jī)會(huì)認(rèn)為我按下的是“1”鍵。這一部分原理是比較簡(jiǎn)單的,但是程序還是挺麻煩的,因?yàn)楫?dāng)時(shí)已經(jīng)是半夜,所以頭腦比較混亂,我用了一個(gè)多小時(shí)的時(shí)間才把程序內(nèi)譯碼、碼制轉(zhuǎn)換的問(wèn)題解決。
因?yàn)檎{(diào)試的時(shí)候是只使用一位密碼,控制一路電器,所以到了這時(shí),我還有擴(kuò)展密碼位數(shù)和擴(kuò)展控制路數(shù)的問(wèn)題要解決。這些擴(kuò)展都是時(shí)間問(wèn)題,只要仔細(xì)的拷貝一些程序代碼就可以順利完成。
在聯(lián)機(jī)調(diào)試的后期我還發(fā)現(xiàn)了一些小問(wèn)題:我的實(shí)驗(yàn)桌上一共有三排數(shù)據(jù)線,我使用的是其中的一排。結(jié)果總是第三路電器無(wú)法實(shí)現(xiàn)遙控,更換數(shù)據(jù)線就會(huì)變正常。經(jīng)萬(wàn)用表測(cè)量發(fā)現(xiàn)原先使用的數(shù)據(jù)線有一根線根本是不導(dǎo)通的。
我還用不同的MCS-51仿真機(jī)實(shí)驗(yàn),發(fā)現(xiàn)幾乎沒(méi)有兩臺(tái)MCS-51仿真機(jī)的實(shí)驗(yàn)結(jié)果是完全相同的,不是晶振的振蕩頻率不同,就是有個(gè)別管腳不能輸出數(shù)據(jù)。晶振的振蕩頻率不同就直接造成延時(shí)不同,發(fā)生頻率不一樣。
經(jīng)過(guò)一個(gè)通宵的調(diào)試,大大小小的各種問(wèn)題都得到了解決,到此為止,在線聯(lián)機(jī)調(diào)試也就告一段落。
第六章 系統(tǒng)使用說(shuō)明
本電話遙控器使用起來(lái)非常方便,下面我就系統(tǒng)使用流程圖做一下簡(jiǎn)單的使用方法介紹。
如右圖7.1所示,首先用戶把本裝置的信號(hào)線并聯(lián)在電話線的兩端,插上電源線,打開(kāi)電源開(kāi)關(guān),本裝置自動(dòng)復(fù)位,就能正常工作了。
當(dāng)用戶從異地打來(lái)電話,本裝置接收到電話振鈴音,開(kāi)始計(jì)數(shù)。當(dāng)電話鈴聲計(jì)到五次,裝置自動(dòng)摘機(jī),回送提示音提示輸入密碼。
當(dāng)用戶在三次之內(nèi)輸入正確的密碼后,用戶就可以對(duì)裝置所連的電器進(jìn)行選擇,然后根據(jù)需要對(duì)其進(jìn)行開(kāi)關(guān)控制。
用戶可以在一次“通話”中同時(shí)控制幾個(gè)電器。如果用戶控制完畢,可以按‘#’鍵讓裝置自動(dòng)掛機(jī),結(jié)束“通話”。而已經(jīng)開(kāi)啟的電器將保持其開(kāi)啟的狀態(tài),直到下一次的“通話”控制使其關(guān)閉。
本裝置使用起來(lái)簡(jiǎn)單易學(xué),而且功能強(qiáng)大。
第七章 系統(tǒng)功能擴(kuò)展
本電話遙控器由于時(shí)間的限制,在畢業(yè)設(shè)計(jì)結(jié)束之前只能作到現(xiàn)有的程度。在本次畢業(yè)設(shè)計(jì)的后期,我也盡量對(duì)本作品的功能進(jìn)行了相應(yīng)的擴(kuò)展。例如:?jiǎn)纹瑱C(jī)控制電器數(shù)量的增加,此部分充分應(yīng)用了單片機(jī)外圍接口擴(kuò)展技術(shù)。
我在這里對(duì)本系統(tǒng)還可以的擴(kuò)展功能做一下簡(jiǎn)單的介紹。
1、使用MT8888芯片還可以進(jìn)一步擴(kuò)展其功能,而且使本裝置的體積大大減小,在這里就MT8888集成電路作一個(gè)簡(jiǎn)單的介紹。
MT8888是MITEL公司的產(chǎn)品,是一種帶呼叫進(jìn)展過(guò)濾器的單片雙音多頻收發(fā)器。它包括一個(gè)帶增益可調(diào)放大器的DTMF接收器和一個(gè)DTMF發(fā)送器。接收器的結(jié)構(gòu)及工作原理與MT8870大同小異,也采用集頻帶分離濾波和數(shù)字解碼為一體的結(jié)構(gòu)。其中濾波電路也采用高頻群和低頻群兩個(gè)六階開(kāi)關(guān)電容帶通濾波器,解碼采用數(shù)字計(jì)數(shù)器技術(shù)來(lái)確定輸入的DTMF音調(diào)的頻率,并將其譯成標(biāo)準(zhǔn)的四位二進(jìn)制碼。發(fā)送器采用開(kāi)關(guān)電容D/A變換器。片內(nèi)使用了一個(gè)脈沖計(jì)數(shù)器,能合成精確的音調(diào)脈沖,保證音調(diào)脈沖準(zhǔn)確的定時(shí)發(fā)送。MT8888提供了一個(gè)標(biāo)準(zhǔn)的微處理器總線接口,可以直接與MCS-51系列微機(jī)接口。它還可以選用呼叫進(jìn)展方式工作,通過(guò)呼叫進(jìn)展濾波器來(lái)檢測(cè)特定通帶內(nèi)的信號(hào)頻率,供微處理機(jī)或計(jì)數(shù)器電路分析,以確定檢測(cè)到的呼叫進(jìn)展音的性質(zhì)。
MT8888的接收工作方式,從檢測(cè)DTMF信號(hào)到解碼的過(guò)程與MT8870完全一致,差異較大的是解碼后的二進(jìn)制碼的輸出。MT8888沒(méi)有延時(shí)導(dǎo)引輸出端stD,當(dāng)收到的有效音調(diào)對(duì)已被寄存且相對(duì)應(yīng)的四位二進(jìn)制碼已被鎖在接收數(shù)據(jù)寄存器中時(shí),片內(nèi)狀態(tài)寄存器中的延時(shí)控制標(biāo)志位b3復(fù)位,同時(shí)狀態(tài)寄存器中的接收數(shù)據(jù)寄存器滿標(biāo)志位b2置位,CPU可通過(guò)查詢這些狀態(tài)標(biāo)志來(lái)了解解碼的過(guò)程。如果選中的是中斷方式,當(dāng)延時(shí)控制標(biāo)志位復(fù)位時(shí),IRQ/CP端將變?yōu)榈碗娖剑駽PU發(fā)送中斷請(qǐng)求,當(dāng)CPU響應(yīng)此中斷,讀出狀態(tài)寄存器中的數(shù)據(jù)后,IRQ/CP端返回高電平狀態(tài)。
根據(jù)MT8888的以上特點(diǎn),它可以檢測(cè)出電話振鈴音、忙音等信號(hào)音。我設(shè)計(jì)了新的系統(tǒng)功能,改進(jìn)了的系統(tǒng)可以首先工作于第二方式,即電話線路信號(hào)音檢測(cè)狀態(tài),然后根據(jù)振鈴情況控制摘掛機(jī),摘機(jī)后MT8888工作于第四方式,即雙音頻解碼狀態(tài),后面就和8870一樣了。這樣就能節(jié)省硬件電路的設(shè)計(jì)制作,還可以大大縮小本裝置整體體積。
2、利用138譯碼器的STA、STB和STC還可以進(jìn)行級(jí)聯(lián)擴(kuò)展為24線譯碼器,若外接一個(gè)反向器還可以級(jí)聯(lián)擴(kuò)展成為32線譯碼器。
3、使用LM567鎖相環(huán)可以對(duì)電話信號(hào)音中的忙音進(jìn)行識(shí)別,使使用者更加方便,而且能夠提高本裝置的穩(wěn)定性。
結(jié)束語(yǔ)
經(jīng)過(guò)這次電話遙控器畢業(yè)設(shè)計(jì),我覺(jué)得自己學(xué)到了不少東西。歸納起來(lái),主要有以下幾點(diǎn):
1、大學(xué)三年多的時(shí)間都是在學(xué)習(xí)通信理論基礎(chǔ)知識(shí),并未真正地去應(yīng)用和實(shí)踐。由于我是校學(xué)生科協(xié)的成員,平時(shí)已經(jīng)掌握了一定的基礎(chǔ),動(dòng)手能力也還可以。但是經(jīng)過(guò)這次畢業(yè)設(shè)計(jì),我接觸到了更多平時(shí)沒(méi)有接觸到的儀器設(shè)備、元器件以及相關(guān)的使用調(diào)試經(jīng)驗(yàn),發(fā)現(xiàn)了自己很多不足之處。我還體會(huì)到了所學(xué)理論知識(shí)的重要性:知識(shí)掌握得越多,設(shè)計(jì)得就更全面、更順利、更好。
2、了解進(jìn)行一項(xiàng)相對(duì)比較大型的科技設(shè)計(jì)所必不可少的幾個(gè)階段。畢業(yè)設(shè)計(jì)能夠從理論設(shè)計(jì)和工程實(shí)踐相結(jié)合、鞏固基礎(chǔ)知識(shí)與培養(yǎng)創(chuàng)新意識(shí)相結(jié)合、個(gè)人作用和集體協(xié)作相結(jié)合等方面全面的培養(yǎng)學(xué)生的全面素質(zhì)。我經(jīng)過(guò)這次系統(tǒng)的畢業(yè)設(shè)計(jì),熟悉了對(duì)一項(xiàng)課題進(jìn)行研究、設(shè)計(jì)和實(shí)驗(yàn)的詳細(xì)過(guò)程。這些在我們?cè)趯?lái)的工作和學(xué)習(xí)當(dāng)中都會(huì)有很大的幫助。
3、學(xué)會(huì)了怎樣查閱資料和利用工具書(shū)。平時(shí)課堂上所學(xué)習(xí)的知識(shí)大多比較陳舊,作為通信工程的學(xué)生,由于專業(yè)特點(diǎn)自己更要積極查閱當(dāng)前的最新通信資料。一個(gè)人不可能什么都學(xué)過(guò),什么都懂,因此,當(dāng)你在設(shè)計(jì)過(guò)程中需要用一些不曾學(xué)過(guò)的東西時(shí),就要去有針對(duì)性地查找資料,然后加以吸收利用,以提高自己的應(yīng)用能力,而且還能增長(zhǎng)自己見(jiàn)識(shí),補(bǔ)充最新的專業(yè)知識(shí)。
4、實(shí)踐能力得到了進(jìn)一步提高,在調(diào)試過(guò)程中積累了一些經(jīng)驗(yàn)。
5、畢業(yè)設(shè)計(jì)對(duì)以前學(xué)過(guò)的理論知識(shí)起到了回顧作用,并對(duì)其加以進(jìn)一步的消化和鞏固。
6、畢業(yè)設(shè)計(jì)培養(yǎng)了嚴(yán)肅認(rèn)真和實(shí)事求是的科學(xué)態(tài)度。而且培養(yǎng)了吃苦耐勞的精神以及相對(duì)應(yīng)的工程意識(shí),同學(xué)之間的友誼互助也充分的在畢業(yè)設(shè)計(jì)當(dāng)中體現(xiàn)出來(lái)了。
在這里,我要感謝我的導(dǎo)師陳小剛老師,他給了我許多的幫助。我還要感謝畢業(yè)設(shè)計(jì)過(guò)程中所有給我真誠(chéng)幫助的老師和同學(xué)。
評(píng)論