用戶交換機是構(gòu)成現(xiàn)代交換式通信網(wǎng)的重要設(shè)備,主要由用戶線接口部分、交換網(wǎng)絡(luò)和控制系統(tǒng)3大部分組成??刂葡到y(tǒng)依靠存儲器中的程序和數(shù)據(jù),引導(dǎo)微處理器對各種信令進行適當?shù)奶幚?,對交換網(wǎng)絡(luò)和接口實行必要的控制。由于微處理機功能的不斷增強和集成電路成本的不斷下降,人們已有可能用合理的造價生產(chǎn)出功能齊全的交換機。實際中實現(xiàn)交換系統(tǒng)的方案有較大差別,缺乏統(tǒng)一模式,這就給詳細、具體地掌握系統(tǒng)的內(nèi)部結(jié)構(gòu)帶來了一定的困難?;谝陨显?,我們考慮將單片機知識與程控交換的基本原理相結(jié)合來設(shè)計簡易的交換系統(tǒng)。該系統(tǒng)采用單片機、網(wǎng)絡(luò)交換芯片和用戶接口電路芯片,以單片機為微控制器來實現(xiàn)通信系統(tǒng)的呼叫響應(yīng)、處理、應(yīng)答,話路接續(xù),通話計時及復(fù)位拆線等基本功能。
1 系統(tǒng)的組成及原理?
1.1 工作原理?
本系統(tǒng)是依據(jù)程控交換原理設(shè)計的微型空分交換系統(tǒng),系統(tǒng)原理框圖如圖1所示。其基本工作原理:當用戶1摘機呼叫用戶2時,交換機向主叫方發(fā)送撥號音,同時由單片機將主叫號碼送七段顯示器顯示,主叫方撥打相應(yīng)號碼后,DTMF譯碼電路譯出對應(yīng)的編碼并引起單片機中斷,AT89C51讀入數(shù)據(jù)同時顯示被叫號碼,此時交換機切斷撥號音并檢測被叫方狀態(tài),若被叫用戶忙則交換機向主叫方發(fā)送忙音,否則,向被叫方送鈴流、向主叫方送回鈴音。當被叫方摘機后,交換機切斷鈴流和回鈴音,接續(xù)話路,雙方開始通話并啟動通話計時。當一方掛機后,計時停止顯示通話時間并向?qū)Ψ剿痛邟煲?,對方掛機后系統(tǒng)拆線復(fù)原。
1.2 硬件電路組成
(1)信號檢測、信號音控制電路?
信號檢測電路用來檢測用戶的狀態(tài)并接收用戶撥打的電話號碼,并根據(jù)用戶狀態(tài)啟動相應(yīng)的信號音控制信號。以2個通話用戶為例,采用AT89C51的P1口與用戶接口電路相連,用以檢測是否有用戶呼叫并控制DTMF解碼電路。P1.0、P1.1用于接收主、被叫方的摘掛機信號,用戶摘機則話機經(jīng)P1.0、 P1.1向AT89C51發(fā)出一高電平信號,此時表示有用戶呼叫。P1.3、P1.4通過模擬開關(guān)CD4066控制主、被叫雙方的DTMF解碼電路,高電平有效。采用8255的PC口接收話機經(jīng)用戶接口發(fā)送來的電話號碼,單片機中斷時從PC口讀入數(shù)據(jù)。
信號音控制電路采用8255芯片的PA、PB口進行控制,PA0、PA1作為鈴流控制輸出信號,PA4、PA5用作回鈴音控制信號,PB0、PB1為忙控制信號,PB4、PB5為撥號音控制信號,各控制信號均為高電平有效。因此,1片8255可同時對2對用戶的信號音進行控制。單片機根據(jù)檢測到的用戶狀態(tài)產(chǎn)生相應(yīng)信號音的控制信號,以便向用戶端發(fā)送信號音。信號檢測、信號音控制電路如圖2所示。
(2)雙音多頻解調(diào)電路
MT8870是雙列直插DTMF解碼專用電路。雙音多頻解調(diào)電路如圖3所示。
?
AT89C51的P1.3、P1.4接模擬開關(guān)CD4066的13、12腳來控制MT8870的解碼,高電平時允許解碼電路工作。2個用戶的雙音多頻信號分別由CD4066的1、11腳輸入,經(jīng)過MT8870內(nèi)部的前置放大器送入高低頻組帶通濾波器,再經(jīng)幅度檢測器進入譯碼電路,最后從輸出端輸出相應(yīng)的編碼。采用CD4066還可起到隔離話音信號與DTMF信號的作用,以免對解碼造成干擾。MT8870的STD接AT89C51的INT0,當STD電平由低變高時引起單片機中斷讀取電話號碼。
(3)交換網(wǎng)絡(luò)電路?
電子接線器是空分交換網(wǎng)絡(luò)的核心部件,我們采用MT8816來完成通話雙方線路的接續(xù)。MT8816芯片是8×16的模擬開關(guān)陣列,8路列輸入/輸出(Y0~Y7)和16路行輸入/輸出(X0~X15)形成模擬交換矩陣,芯片有保持電路,可保持任一交叉點處于接通狀態(tài),直至接收到復(fù)原信號為止,其引腳如圖4所示。AT89C51 的P0口通過列地址線AY0~AY2和行地址線AX0~AX3控制列線與行線選擇需要接通的交叉點(例如,要接通Y0和X1間的交叉點需向AY0~AY2 送000,向AX0~AX3送1000)。DATA為交叉點開關(guān)控制位,高電平時交叉點開關(guān)連通相反則斷開。RST為復(fù)位信號輸入,高電平時全部開關(guān)均置于截止狀態(tài)。STB為選通脈沖輸入,AT89C51送入列、行地址碼后還必須給STB端送一脈沖信號同時DATA置高電平,才能使MT8816完成接續(xù)工作,MT8816拆線復(fù)原的過程與接續(xù)過程類似,此時只須將DATA置低電平即可。
交換網(wǎng)絡(luò)向用戶端發(fā)送的各種信號音的接通和切斷可通過相應(yīng)的信號音控制信號(8255的PA、PB口)選通CD4066來實現(xiàn)。
(4)用戶接口電路?
用戶接口電路是由用戶線接口芯片MH88612和PCM編解碼芯片TP3067組成,兩者共同完成BORSCHT七項功能。用戶線接口檢測到用戶1摘機后,MH88612的SHK引腳輸出一高電平至P1.0,AT89C51將8255的PB4端置高電平控制交換網(wǎng)絡(luò)向用戶1送撥號音,單片機收到正確號碼后控制系統(tǒng)發(fā)出振鈴控制信號即將8255的PA1置高電平并由MH88612的RC腳輸入,驅(qū)動繼電器K閉合向用戶線接口2送振鈴,同時將PA4置高電平控制交換網(wǎng)絡(luò)向用戶1送回鈴音。當用戶2摘機時,其接口電路的SHK腳輸入一高電平至P1.1,單片機控制MT8816接續(xù)通話線路。當任一方掛機時其相應(yīng)的SHK輸出一低電平控制系統(tǒng)向另一方送催掛音。
線路接續(xù)成功后,話音信號經(jīng)MH88612的VX輸出送入TP3067中進行編碼。PCM編碼器的抽樣頻率為8 kHz,由幀同步脈沖FSX獲得,F(xiàn)SX除提供PCM抽樣頻率外,還選通輸出緩存器使緩存器中的8 B,自FSX下降沿開始以主時鐘2.048 Mb/s的速率由DX端輸出至交換網(wǎng)絡(luò),主時鐘由MCLKX腳輸入。PCM解碼是指將來自交換網(wǎng)絡(luò)的主時鐘頻率的PCM信號在幀同步信號FSR的下降沿開始時由DR接收至輸入緩存器中,其主時鐘頻率由MCLKR輸入仍為2.048 Mb/s。用戶接口電路如圖5所示。?
(5)其他電路?
交換機向用戶發(fā)送的鈴流信號是25 Hz、幅度為90 V的方波信號,撥號音、回鈴音、忙音、催掛音是通過控制450 Hz交流信號的斷續(xù)時間來產(chǎn)生的,各種信號音可由單片機編程產(chǎn)生,但為避免程序過于復(fù)雜,使AT89C51更好的對系統(tǒng)主要部分進行監(jiān)控,設(shè)計中各種信號音的產(chǎn)生均采用硬件電路完成,可由555芯片配以適當?shù)耐鈬娐樊a(chǎn)生各種信號音。
顯示電路主要利用了8155芯片作為AT89C51的擴展輸出口,由8155、74LS240和MC1413及七段LED組成,用來顯示主叫、被叫方號碼及通話時間。8155的PA口與MC1413相連經(jīng)反相后作為數(shù)碼管的位選信號,PB口經(jīng)74LS240作為段選信號送數(shù)碼管顯示,片選信號接 AT89C51的P2.7。由于整個系統(tǒng)較為復(fù)雜,在顯示電路的調(diào)試過程中我們只采用了5位數(shù)碼顯示管,中間3位顯示通話時間(1位分鐘,2位秒針),前后2位分別顯示主被叫方的代號(如用戶1用1表示,用戶2用2表示),但只須對程序稍加變動既可使分別顯示主被叫放的電話號碼和通話時間。
2 軟件設(shè)計?
(1)系統(tǒng)初始化程序?
對AT89C51設(shè)置中斷及內(nèi)部數(shù)據(jù)存儲器單元清零,8155和8255進行端口功能設(shè)置。?
(2)主叫摘機檢測程序?
主叫方摘機后,顯示電路顯示主叫號碼,撥號音控制信號置高電平,交換網(wǎng)絡(luò)向主叫方送撥號音,等待主叫方撥打電話號碼。?
(3)撥號檢測與等待摘機程序?
檢測到撥號脈沖后,立刻切斷撥號音,AT89C51響應(yīng)中斷讀取電話號碼對應(yīng)的二進制編碼。若被叫號碼對應(yīng)的話機不存在或被叫方處于狀態(tài),則忙音控制信號置高電平,交換網(wǎng)絡(luò)向主叫方送忙音,催其掛機;若號碼檢測正確則鈴流控制信號置、回鈴音控制信號置高電平,交換網(wǎng)絡(luò)向被叫方送鈴流信號,同時向主叫方送回鈴音。?
(4)話路接續(xù)程序?
檢測到被叫方摘機信號后,系統(tǒng)停止發(fā)送鈴流和回鈴音,AT89C51啟動MT8816接通通話線路。?
(5)計時與通話檢測程序?
線路一旦接續(xù)成功,雙方即可進行通話,AT89C51內(nèi)部時鐘計時開始,通過8155芯片加以顯示。對用戶狀態(tài)進行判斷,當檢測到任一方掛機信號后,跳出計時程序交換網(wǎng)絡(luò)向未掛機用戶送催掛音(本系統(tǒng)中催掛音用忙音代替),雙方掛機后,AT89C51控制MT8816拆除通話線路,回初始化程序重新等待用戶摘機。
(6)顯示程序?
動態(tài)顯示主、被叫方的電話號碼及通話時間。?
3 結(jié)語
本系統(tǒng)除了能模擬市話進行正常的通信外,還附加了在通話的同時顯示通話時間和主被叫號碼的功能。只要對該系統(tǒng)進行適當?shù)臄U展后,可用于樓層內(nèi)部間的電話通訊還可用作通信專業(yè)程控交換原理課程的實驗設(shè)備。
參考文獻
[1]朱世華.程控數(shù)字交換原理與應(yīng)用[M].西安: 西安交通大學(xué)出版社, 1993
[2]郝建國,趙英杰.通用集成電路大全[M].北京: 人民郵電出版社, 1997