《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 利用CPC5621芯片實(shí)現(xiàn)車載調(diào)度機(jī)環(huán)路中繼
利用CPC5621芯片實(shí)現(xiàn)車載調(diào)度機(jī)環(huán)路中繼
來(lái)源:微型機(jī)與應(yīng)用2014年第2期
辛 利, 張志國(guó)
(中國(guó)電子科技集團(tuán)公司第五十四研究所, 河北 石家莊 050200)
摘要: 為了滿足應(yīng)急通信系統(tǒng)中車載調(diào)度機(jī)穩(wěn)定可靠的中繼通信要求,提出了一種基于CPC5621芯片的環(huán)路中繼電路設(shè)計(jì)方案。介紹了此設(shè)計(jì)在車載調(diào)度機(jī)中的典型應(yīng)用,對(duì)CPC5621芯片的功能作了說(shuō)明,給出了系統(tǒng)設(shè)計(jì)的硬件結(jié)構(gòu),分模塊描述了利用CPC5621實(shí)現(xiàn)環(huán)路中繼電路的方法,詳細(xì)講解了語(yǔ)音及信令的處理流程,并對(duì)系統(tǒng)軟件設(shè)計(jì)進(jìn)行了分析,給出了軟件的處理流程。經(jīng)過(guò)測(cè)試及應(yīng)用,證明利用CPC5621芯片設(shè)計(jì)的環(huán)路中繼完全達(dá)到了穩(wěn)定、可靠的指標(biāo)要求。
Abstract:
Key words :

摘  要: 為了滿足應(yīng)急通信系統(tǒng)中車載調(diào)度機(jī)穩(wěn)定可靠的中繼通信要求,提出了一種基于CPC5621芯片環(huán)路中繼電路設(shè)計(jì)方案。介紹了此設(shè)計(jì)在車載調(diào)度機(jī)中的典型應(yīng)用,對(duì)CPC5621芯片的功能作了說(shuō)明,給出了系統(tǒng)設(shè)計(jì)的硬件結(jié)構(gòu),分模塊描述了利用CPC5621實(shí)現(xiàn)環(huán)路中繼電路的方法,詳細(xì)講解了語(yǔ)音及信令的處理流程,并對(duì)系統(tǒng)軟件設(shè)計(jì)進(jìn)行了分析,給出了軟件的處理流程。經(jīng)過(guò)測(cè)試及應(yīng)用,證明利用CPC5621芯片設(shè)計(jì)的環(huán)路中繼完全達(dá)到了穩(wěn)定、可靠的指標(biāo)要求。
關(guān)鍵詞: 應(yīng)急通信系統(tǒng); CPC5621芯片; 環(huán)路中繼; C8051F020; IDT82V1054

    當(dāng)前環(huán)境下,突發(fā)及應(yīng)急事件日益增多。能夠在現(xiàn)場(chǎng)進(jìn)行可靠、穩(wěn)定的應(yīng)急指揮通信非常重要。車載通信調(diào)度機(jī)在應(yīng)急通信車中的使用使通信調(diào)度兩位一體,滿足了應(yīng)急通信靈活、快速、機(jī)動(dòng)的要求。本文所設(shè)計(jì)的使用CPC5621芯片完成的模擬環(huán)路啟動(dòng)單元為車載調(diào)度機(jī)在條件受限的情況下實(shí)現(xiàn)方便快捷的通信聯(lián)網(wǎng)提供了保證。
1 系統(tǒng)硬件
1.1 環(huán)路中繼的應(yīng)用

    環(huán)路中繼是電路交換機(jī)中一種常用的模擬中繼方式,示意圖如圖1所示。它能模擬與其連接的用戶接口的摘/掛機(jī)動(dòng)作,就像對(duì)端交換機(jī)的用戶接口連接一部電話在摘/掛機(jī)一樣。這種方式實(shí)現(xiàn)方便,連接可靠。環(huán)路中繼接口在用戶側(cè)和中繼側(cè)均為兩線實(shí)線連接,用于話務(wù)量較小的交換機(jī)之間互聯(lián),可以完成出入局的雙向呼叫等功能。典型的應(yīng)用如圖2所示。

1.2 CPC5621芯片功能分析
 CPC5621是一款通信中繼接口芯片, 支持5 V和3.3 V兩種電壓模式,對(duì)外接口可以分為線路側(cè)和處理器側(cè)。線路側(cè)提供連接PSTN網(wǎng)絡(luò)兩線接口的各種功能;處理器側(cè)連接微處理器,接受控制,上報(bào)狀態(tài),并提供音頻接口。同時(shí)還具有以下功能:
    (1)二四線變換:通過(guò)二四線混合電路,將兩線信號(hào)變換為差分音頻線對(duì)。內(nèi)置的光學(xué)隔離柵將線路側(cè)和主機(jī)側(cè)屏蔽隔開(kāi),為用戶提供低噪聲、低失真的音頻信號(hào)。增強(qiáng)的3 000 Vrms隔離電壓也進(jìn)一步增強(qiáng)了設(shè)備的浪涌抗擾度。
    (2)振鈴檢測(cè):PSTN網(wǎng)絡(luò)環(huán)境下,用戶線間電壓在待機(jī)狀態(tài)下約為52 V,振鈴信號(hào)為90 V、25 Hz的正弦交流信號(hào),兩者疊加形成高壓,內(nèi)置的高壓隔離柵可以對(duì)此高壓進(jìn)行隔離處理。當(dāng)有入局呼叫時(shí),振鈴信號(hào)經(jīng)過(guò)高壓隔離柵后,在RING引腳輸出一個(gè)同頻率間斷的TTL電平信號(hào)。通過(guò)微處理器的I/O引腳,軟件就可以通過(guò)檢測(cè)引腳上的信號(hào)頻率實(shí)現(xiàn)檢測(cè)振鈴信號(hào)及檢測(cè)入局呼叫的目的。
    (3)摘/掛機(jī)控制:交換機(jī)是通過(guò)線路上的環(huán)流大小來(lái)判斷用戶電話機(jī)的摘/掛機(jī)狀態(tài)的。掛機(jī)狀態(tài)下,電路上的電流接近0; 而摘機(jī)狀態(tài)下, 線路上的電流約為30 mA(可調(diào))。利用三極管CPC5602的開(kāi)關(guān)特性,通過(guò)改變CPC5621的OH引腳電平控制三極管CPC5602的通斷,以此改變線路中的環(huán)流,達(dá)到模擬話機(jī)的摘/掛機(jī)動(dòng)作的目的。具體描述為:當(dāng)CPC5621的OH引腳被控制輸入高電平時(shí),CPC5602截止,回路電流很小,設(shè)備被判斷處于掛機(jī)狀態(tài);反之,當(dāng)CPC5621的OH引腳被控制輸入低電平時(shí),CPC5602導(dǎo)通,此時(shí)流過(guò)CPC5602的電流超過(guò)30 mA,設(shè)備被判斷處于摘機(jī)狀態(tài)[1]。
    (4)環(huán)流調(diào)整:CPC5621還提供可編程設(shè)置的恒流源作為環(huán)路負(fù)載,通過(guò)改變負(fù)載電阻來(lái)改變環(huán)路電流的大小,解決由于線路遠(yuǎn)近而影響環(huán)流大小的問(wèn)題,提高摘掛機(jī)檢測(cè)的穩(wěn)定性及可靠性。
    (5)來(lái)電顯示及掛機(jī)傳輸:CPC5621采用了高阻信號(hào)通道,在掛機(jī)狀態(tài)下,電路會(huì)自動(dòng)切換到該通道,以實(shí)現(xiàn)掛機(jī)狀態(tài)下的音頻信號(hào)傳輸。該通道具有極小的失真度, 可以在掛機(jī)狀態(tài)下可靠地檢測(cè)DTMF 信號(hào)及FSK 信號(hào)。
1.3 系統(tǒng)功能分析及硬件結(jié)構(gòu)
    環(huán)路中繼單元是車載調(diào)度機(jī)的重要部件,通過(guò)同步TBUS總線與總控單元連接,上報(bào)本單元狀態(tài)并接受總控單元的控制。
    每通道定義控制字8 bit,狀態(tài)字8 bit,如表1所示。

    環(huán)路中繼定義的呼叫進(jìn)程是:當(dāng)有入局呼叫時(shí),硬件檢測(cè)鈴流,狀態(tài)字上報(bào)給總控單元;總控單元收到有入局呼叫的消息后,向環(huán)路中繼發(fā)送控制字,讓其模擬話機(jī)摘機(jī)動(dòng)作,用戶電路切斷鈴流,上報(bào)端口占用狀態(tài);如果為出局呼叫,總控單元控制模擬環(huán)路進(jìn)行摘機(jī)服務(wù)請(qǐng)求,環(huán)路中繼單元上報(bào)端口占用狀態(tài);當(dāng)模擬環(huán)路完成呼叫,CPU控制其掛機(jī)時(shí),終止呼叫連接。
    基于以上的分析,設(shè)計(jì)環(huán)路中繼單元如圖3所示。

    本系統(tǒng)主要包含CPC5621接口芯片1~8,IDT82V1054 CODEC芯片A和B,C8051F020 CPU以及Altera  CPLD。
    整個(gè)系統(tǒng)需要處理的內(nèi)容分為語(yǔ)音及消息兩部分,而語(yǔ)音和消息都有上行及下行兩個(gè)方向。CPLD由FPGA語(yǔ)言編程,通過(guò)TBUS總線連接背板,負(fù)責(zé)在總線上裝卸對(duì)總控單元的音頻及消息。
    雙向音頻總線進(jìn)入CPLD,經(jīng)過(guò)CPLD調(diào)整使系統(tǒng)的TBUS和CODEC編程設(shè)置的PCM BUS可以直接匹配對(duì)接,即CODEC可以直接從CPLD輸出的PCM總線需要的時(shí)隙卸載音頻數(shù)據(jù),也可以將收到的PCM數(shù)據(jù)直接裝載到PCM總線對(duì)應(yīng)的時(shí)隙上去,實(shí)現(xiàn)語(yǔ)音雙向貫通的目標(biāo)。至于CODEC的雙向模擬音頻,直接連接CPC5621接口芯片就可以了[2]。
    對(duì)應(yīng)總控單元的消息處理是由C8051F020 CPU通過(guò)A/D總線定時(shí)掃瞄訪問(wèn)CPLD內(nèi)的TBUS總線消息區(qū)來(lái)實(shí)現(xiàn)的,CPLD內(nèi)部對(duì)上行和下行消息分別開(kāi)辟了一塊雙端口RAM,用于存放消息,CPU定時(shí)讀取,經(jīng)過(guò)去抖后進(jìn)行分析。
    對(duì)CPC5621的控制是通過(guò)4路CODEC IDT82V1054的I/O端口編程來(lái)實(shí)現(xiàn)的。每個(gè)IDT82V1054有4組I/O端口,可以控制連接4個(gè)CPC5621。而每組I/O端口分為兩個(gè)輸入SI1、SI2,兩個(gè)輸出SO1、SO2以及3個(gè)雙向端口SB1、SB2、SB3。這些I/O端口可以通過(guò)內(nèi)部寄存器進(jìn)行功能設(shè)定。 IDT82V1054的SI1、SI2帶有去抖功能,把CPC5621的振鈴檢測(cè)輸出和環(huán)流檢測(cè)輸出分別連接到此,SI1對(duì)應(yīng)/RING_DEC,SI2對(duì)應(yīng)L_CUR。CODEC的輸出SO1對(duì)應(yīng)摘掛機(jī)控制/OFFHOOK,SO2對(duì)應(yīng)掛機(jī)接收的CID控制。
    CODEC IDT82V1054支持MPI串行總線接入,故把兩個(gè)CODEC全都掛接在MPI總線上。C8051F020 CPU通過(guò)MPI總線來(lái)訪問(wèn)每一個(gè)環(huán)路端口的狀態(tài)以及端口控制。
    為了使系統(tǒng)工作更加穩(wěn)定,C8051F020 CPU設(shè)計(jì)工作在4 MHz時(shí)鐘下,程序存儲(chǔ)利用CPU自帶的64 KB的Flash,數(shù)據(jù)存儲(chǔ)區(qū)除了片內(nèi)的4 KB的RAM以外,將CPU通過(guò)A/D總線訪問(wèn)的CPLD劃分到外部RAM區(qū)域。中斷設(shè)計(jì)為兩個(gè)外部中斷源INT0和INT1,當(dāng)CPC5621有振鈴檢測(cè)及成環(huán)等消息時(shí),IDT82V1054通過(guò)中斷INT0通知C8051F020 CPU;而INT1設(shè)計(jì)為軟件定時(shí)中斷,作為程序事件的驅(qū)動(dòng),定時(shí)掃描總控單元的控制消息[3-6]。
    另外,CPC5621內(nèi)部的高壓柵隔離電路會(huì)使得音頻信號(hào)的復(fù)制被消弱到200 mV左右,為保證正確檢測(cè)音頻信號(hào),對(duì)信號(hào)進(jìn)行整形之前先進(jìn)行了放大,通過(guò)隔直電容后,取出交流信號(hào)。同時(shí)在電路中增加積分電路來(lái)消除高頻干擾,最后進(jìn)入電壓比較器LM331,將信號(hào)音整形為TTL電平。
2 軟件設(shè)計(jì)
    本設(shè)計(jì)中使用Keil編程工具,采用C語(yǔ)言編程。具體流程如圖4所示,軟件總體分為以下幾個(gè)部分:
    (1)單片機(jī)初始化部分:系統(tǒng)上電后,要使硬件進(jìn)入一個(gè)起始狀態(tài),重新設(shè)定系統(tǒng)時(shí)鐘,初始化CPU各個(gè)端口的狀態(tài)、定時(shí)器、中斷、指針等。

      (2)SPI總線處理部分:配置C8051F020的交叉開(kāi)關(guān)寄存器XBR0、XBR1、XB2,務(wù)必使能交叉開(kāi)關(guān),使其工作于SPI總線方式,并設(shè)置寄存器PnMDOUT,選擇端口輸出方式。設(shè)置寄存器SPI0CKR、SPI0CN、SPI0CFG,使其滿足CODEC IDT82V1054的SPI時(shí)序要求,通過(guò)SPI總線配置CODEC內(nèi)部寄存器,CODEC內(nèi)部共有3種寄存器,分別是全局寄存器GREG、局部寄存器LREG和COE-RAM。對(duì)應(yīng)3種寄存器,設(shè)置函數(shù)對(duì)它們進(jìn)行讀寫操作,COE-RAM只能進(jìn)行寫操作。分配語(yǔ)音通道,制定CPC5621硬件接口與PCM總線上時(shí)隙的對(duì)應(yīng)關(guān)系。
    (3)主函數(shù): 控制整個(gè)軟件的進(jìn)程,具體定義函數(shù)來(lái)實(shí)現(xiàn)采集呼叫信息,初始化所有寄存器,映射RING_DEC、OFFHOOK等消息,調(diào)用所有已經(jīng)定義的函數(shù)[3-6]。

 


    利用CPC5621接口芯片設(shè)計(jì)實(shí)現(xiàn)的環(huán)路中繼單元在應(yīng)急通信系統(tǒng)中的應(yīng)用實(shí)現(xiàn)了車載調(diào)度機(jī)的聯(lián)網(wǎng)指揮功能,且通信穩(wěn)定可靠。用集成電路替代了原來(lái)環(huán)路中繼單元大量的分立器件,電路結(jié)構(gòu)簡(jiǎn)潔,軟件開(kāi)發(fā)難度低,大大提高了開(kāi)發(fā)效率。
參考文獻(xiàn)
[1] 陽(yáng)素權(quán).嵌入式語(yǔ)音系統(tǒng)設(shè)計(jì)[D]. 北京:北方工業(yè)大學(xué), 2006.
[2] 趙世霞,楊豐,劉揭生.VHDL與微機(jī)接口設(shè)計(jì)[M].北京:清華大學(xué)出版社, 2004.
[3] 陳嘯宇,劉錦高.基于CPLD的SGPIO總線實(shí)現(xiàn)及應(yīng)用[J].微型機(jī)與應(yīng)用,2013,32(5):22-24.
[4] 王華. 基于C8051F020 MCU的數(shù)據(jù)采集分析系統(tǒng)的研究[D].成都:四川大學(xué),2007.
[5] 張瑋,劉宇,薛志遠(yuǎn),等.基于SPI總線的DSP與音頻編解碼芯片的接口設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用,2013,39(6):31-33.
[6] 李波,屈均偉.基于C8051F020的標(biāo)準(zhǔn)單元控制單元的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微型電腦應(yīng)用,2006,22(11):39-42.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。