73K222AL單片式調(diào)制解調(diào)器與單片機(jī)的接口電路
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 概述
73K222AL是TDK公司新近推出的K系列單片式調(diào)制解調(diào)器,是專門用于和微控制器配套以組成遠(yuǎn)距離數(shù)據(jù)通信與控制系統(tǒng)的集成電路芯片。73K222AL芯片是73K212的替代產(chǎn)品,其主要功能如下:
●符合CCITTV.22,V.21,Bell 212A和Bell 103標(biāo)準(zhǔn)協(xié)議;
●全雙工,速度可達(dá)1200bps(DPSK方式);
●具有DTMF撥號(hào)功能;
●具有應(yīng)答音、防衛(wèi)音的發(fā)送與檢測(cè)功能;
●接口與MCS51系列微控制器兼容;
●可異步、同步串行通訊;
●采用單一5V電源供電。
73K222AL具有TQFP44、DIP28和PLCC28三種封裝形式,各主要引腳的功能如下:
VDD與GND:電源接入端。
VREF:內(nèi)部參考電壓,與地之間應(yīng)接0.1μF旁路電容。
Iset:芯片參考電流端,應(yīng)外接2MΩ電阻到VDD。
ALE:地址鎖存端。
AD0~AD7:地址/數(shù)據(jù)復(fù)用引腳。
CS:片選信號(hào)。
CLK:振蕩器輸出。
INT:中斷輸出。
RD和WR:讀、寫(xiě)控制端。
RESET:復(fù)位端、高電平有效。
RXD、TXD:分別為串行輸入、輸出端。
EXCLK、RXCLK、TXCLK:同步通訊控制端。
RXA,TXA:模擬輸入與輸出端。
XTL1、XTL2:11.0592MHz晶振接入端。
2 接口電路
73K222AL與單片機(jī)的接口電路如圖1所示,該電路主要由耦合電路、放大處理電路、modem電路和MCU電路等四部分組成。
2.1 耦合電路
該部分電路包括由光耦O1,電容C8,二極管D1等組成的鈴流檢測(cè)電路以及由PHL1音頻隔離變壓器組成的隔離電路。由于通訊系統(tǒng)被叫方摘機(jī)前,程控交換機(jī)將提供25Hz、POVAC的振鈴信號(hào)。因此可通過(guò)光耦產(chǎn)生方波以觸發(fā)微控制器,以使微控制器在響應(yīng)該觸發(fā)后吸合繼電器來(lái)形成直流通道。
PHL1為耦合變壓器,它的參數(shù)對(duì)整個(gè)電路影響很大。對(duì)于73K222AL芯片,筆者通過(guò)實(shí)踐得出了如圖2所示的該變壓器等效電路。該電路在600Hz~3.5kHz范圍內(nèi)的幅度變化在±0.65dB以內(nèi),等效阻抗為600Ω,原副級(jí)匝數(shù)比為1:1。
2.2 放大處理電路與modem電路
該部分電路由LM358集成運(yùn)放以及外圍器件所組成,可用于輸入、輸出信號(hào)的幅度調(diào)整。
由于所有modem芯片對(duì)電源的要求都比較高。因此應(yīng)在73K222AL的電源接入端接上0.1μF和22μF的旁路電容器組,以濾云電源噪音。此外,在PCD設(shè)計(jì)時(shí),還要注意使modem電路盡可能集中,以使其受外界的干擾可能的小。
2.3 MCU電路
MCU電路主要用來(lái)對(duì)modem芯片進(jìn)行設(shè)置以及串行數(shù)據(jù)的收發(fā)。在這里,筆者采用的是AT89C51單片機(jī)。
在單片機(jī)與modem的接口電路中,主要有三類信號(hào)。
(1)地址與數(shù)據(jù):它們由AD0~AD7所組成。
(2)控制信號(hào):由CS、RD、WR組成。
(3)串行通訊線:主要由RXD、TXD等組成。
圖1中的電路是經(jīng)過(guò)調(diào)試的實(shí)用電路,可以直接應(yīng)用到相關(guān)系統(tǒng)中。
3 73K222AL中的寄存器
73K222AL有5個(gè)寄存器,可用來(lái)對(duì)芯片進(jìn)行設(shè)置與控制。
3.1 寄存器0
寄存器0為控制寄存器,用來(lái)設(shè)置通訊方式和通訊速率,其D0~D7位的意義如下:
對(duì)于D0位:當(dāng)D0=1時(shí),為主叫方,D0=0時(shí)為被叫方。所謂主叫方與被叫方,其實(shí)就是規(guī)定一下數(shù)據(jù)傳輸通道。對(duì)于主叫方,它數(shù)據(jù)發(fā)送使用的是1200Hz通道,而接收方的數(shù)據(jù)發(fā)送使用的則是2400Hz通道。因?yàn)橹挥羞@樣規(guī)定一下,才可進(jìn)行全雙工通訊。
D1為0時(shí),表示不允許TXA輸出。D1為1時(shí),表示允許TXA輸出。
D6通常為0,其余各位的組合選用方式如表1和表2所列。
對(duì)于圖1所示接口電路,選擇波特率為1200bps,對(duì)于10位異步串行通訊可將寄存器0設(shè)置為:
主叫方:00011011B
被叫方:00011010B
3.2 寄存器1
該寄存器為控制發(fā)送單元,其中D0、D1位用于選擇工作模式。正常為00,其余為測(cè)試狀態(tài)。
D2為0時(shí)為正常工作狀態(tài)。為1時(shí)為省電狀態(tài)。D3為0時(shí)選擇11.0592MHz作為CLK腳輸出。為1時(shí)選擇16倍數(shù)據(jù)速率作為CLK腳輸出。
D4為0時(shí)選擇正常工作方式,此時(shí)DPSK數(shù)據(jù)要通過(guò)加擾器。D4為1時(shí)選擇不加擾方式。
D5為0時(shí)禁止INT輸出。為1時(shí)允許INT輸出。
D7和D6的組合選擇方式如表3所列。
3.3 寄存器2
該寄存器主要用于通訊過(guò)程中的監(jiān)測(cè),其各位的定義如表4所列。
3.4 寄存器3
寄存器3用于控制接收和產(chǎn)生應(yīng)答音、DTMF撥號(hào)音以及撥號(hào)音。
回應(yīng)答音時(shí),設(shè)置為10100001B。
發(fā)撥號(hào)音時(shí),設(shè)置為1001D3D2D1D0,其中D3D2D1D0組成撥號(hào)的16個(gè)鍵值[1]。
允許接收RXD時(shí),設(shè)置為00000000B。
除了上述3個(gè)寄存器外,寄存器4為身份識(shí)別寄存器,對(duì)于73K222AL芯片,其讀出值的D7位為1,D6位為0。
4 控制軟件程序
4.1 初始化
初始化的目的是設(shè)置波特率和中斷管理程序。具體程序如下:
MA2:MOV DPTR,#0E000H
MOV TMOD,#21H ;BAUD=1200
MOV TH1,#0E8H ;MODEM方式
MOV TL1,#0E8H
;
MA0:MOV SCON,#01010000B
MOV PCON,#00H
MOV TH0,4CH ;50mS 19456
MOV TL0,#00H
SETB TR1 ;START T1
SETB TR0 ;START T0
CLR ES ;不允許串行中斷
SETB EX0;允許INT0中斷,用于專線上信號(hào)的檢測(cè)
SETB EX1 ;允許T0中斷
SETB IT1
CLR IT0
SETB PT0
SETB EA
4.2 撥號(hào)子程序
如使用電話系統(tǒng),主叫方只有通過(guò)撥號(hào)才能與被叫進(jìn)行聯(lián)接。這個(gè)過(guò)程手工藝流程刺:吸合繼電器
DIAOUT:mov dptr,#0E000h
mov a,#00011001b
movx @dptr,a
inc dptr
mov a,#00110000b
movx @dptr,a
;
mov rl,#0
t-d0:mov a,r1
mov dptr,#hao1
movc a,@a+dptr
;
mov dptr,#0E003h
movx @dptr,a
;
mov dptr,#0E000h
mov a,#00011011b
movx @dptr,a
;
lcall edlay
;
mov dptr,#0E000h
mov a,#00011001b
movx @dptr,a
;
lcall edlay
inc rl
cjne r1,#4,t-d0
ret
hao1:DB 92h,9ah,91h,9ah
這里,被叫方的電話號(hào)碼2010,通過(guò)修改數(shù)據(jù)區(qū)hao1,就可容易地實(shí)現(xiàn)其它號(hào)碼的呼叫。
4.3 回應(yīng)答音
被叫方在接到鈴流信號(hào)后,由單片機(jī)產(chǎn)生中斷以吸合繼電器,發(fā)送應(yīng)答音給主叫方,程序如下:
INT_0:PUSH DPH ;用于吸合繼電器,回應(yīng)答音
PUSH DPL ;再看對(duì)方是否有數(shù)據(jù)來(lái)。
CLR P1.6
CLR ES
MOV 2FH,A
lcall edlay
lcall edlay
;
mov dptr,#0E001h
mov a,#00110000b
movx @dptr,a
;不允許RXD
mov a ,#10100001b
mov dptr,#0E003h
movx @dptr,a
;
mov dptr,#0E000h
mov a;#00011010b
movx @dptr,a
;允許TXA
LCALL EDLAY
LCALL EDLAY
在這里,被叫方是將發(fā)送的2100Hz信號(hào)作為應(yīng)答音。
4.4 主叫方正常通訊
在被叫方回應(yīng)答音后,主叫方可以監(jiān)測(cè)寄存器2的D2位,如果為1,則可對(duì)主叫的modem作如下設(shè)置:
mov a,#00000000b
mov dptr,#0E001h
movx @dptr,a
;
mov a,#0000001b
mov dptr,#0E003h
movx @dptr,a
;
mov a,#00011011b
mov dptr,#0E000h
mov @dptr,a
下面是0.5秒的延時(shí)子程序,可用來(lái)進(jìn)行上述程序的協(xié)調(diào)。
EDLAY:MOV R6,#255
EDLA1:MOV R7,#255
EDLA2:NOP
NOP
NOP
NOP
Nop
Nop
Nip
NOP
NOP
DJNZ R7,EDLA2
LCALL W
DJNZ R6,EDLA1
RET
4.5 被叫方的正常通訊設(shè)置
被叫方在回答音后,就可對(duì)73K222AL的幾個(gè)主要寄存器作如下設(shè)置,以便進(jìn)入通訊狀態(tài)。
; 允許RXD
mov a,#00011000b
mov dptr,#0E000h
movx @dptr,a
;
mov a,#0000000b
mov dptr,#0E001h
movx @dptr,a
;
movx a,#0000001b
mpvx @dptr,a
;
movx @dptr,a
;
mov a,#00011010b
mov dptr,#0E000h
movx @dptr,a
5 結(jié)束語(yǔ)
本文詳細(xì)闡明了73K222AL的使用要點(diǎn)。從目前的資料來(lái)看,73K222AL仍是一款性價(jià)比非常好的單片式modem芯片,TDK公司K系列的其它款modem芯片的基本原理與73K222AL相近,因此,本文的討論對(duì)于K系列的其它芯片也有參考意義。