73K222AL单片式调制解调器与单片机的接口电路
1 概述
73K222AL是TDK公司新近推出的K系列单片式调制解调器,是专门用于和微控制器配套以组成远距离数据通信与控制系统的集成电路芯片。73K222AL芯片是73K212的替代产品,其主要功能如下:
●符合CCITTV.22,V.21,Bell 212A和Bell 103标准协议;
●全双工,速度可达1200bps(DPSK方式);
●具有DTMF拨号功能;
●具有应答音、防卫音的发送与检测功能;
●接口与MCS51系列微控制器兼容;
●可异步、同步串行通讯;
●采用单一5V电源供电。
73K222AL具有TQFP44、DIP28和PLCC28三种封装形式,各主要引脚的功能如下:
VDD与GND:电源接入端。
VREF:内部参考电压,与地之间应接0.1μF旁路电容。
Iset:芯片参考电流端,应外接2MΩ电阻到VDD。
ALE:地址锁存端。
AD0~AD7:地址/数据复用引脚。
CS:片选信号。
CLK:振荡器输出。
INT:中断输出。
RD和WR:读、写控制端。
RESET:复位端、高电平有效。
RXD、TXD:分别为串行输入、输出端。
EXCLK、RXCLK、TXCLK:同步通讯控制端。
RXA,TXA:模拟输入与输出端。
XTL1、XTL2:11.0592MHz晶振接入端。
2 接口电路
73K222AL与单片机的接口电路如图1所示,该电路主要由耦合电路、放大处理电路、modem电路和MCU电路等四部分组成。
2.1 耦合电路
该部分电路包括由光耦O1,电容C8,二极管D1等组成的铃流检测电路以及由PHL1音频隔离变压器组成的隔离电路。由于通讯系统被叫方摘机前,程控交换机将提供25Hz、POVAC的振铃信号。因此可通过光耦产生方波以触发微控制器,以使微控制器在响应该触发后吸合继电器来形成直流通道。
PHL1为耦合变压器,它的参数对整个电路影响很大。对于73K222AL芯片,笔者通过实践得出了如图2所示的该变压器等效电路。该电路在600Hz~3.5kHz范围内的幅度变化在±0.65dB以内,等效阻抗为600Ω,原副级匝数比为1:1。
2.2 放大处理电路与modem电路
该部分电路由LM358集成运放以及外围器件所组成,可用于输入、输出信号的幅度调整。
由于所有modem芯片对电源的要求都比较高。因此应在73K222AL的电源接入端接上0.1μF和22μF的旁路电容器组,以滤云电源噪音。此外,在PCD设计时,还要注意使modem电路尽可能集中,以使其受外界的干扰可能的小。
2.3 MCU电路
MCU电路主要用来对modem芯片进行设置以及串行数据的收发。在这里,笔者采用的是AT89C51单片机。
在单片机与modem的接口电路中,主要有三类信号。
(1)地址与数据:它们由AD0~AD7所组成。
(2)控制信号:由CS、RD、WR组成。
(3)串行通讯线:主要由RXD、TXD等组成。
图1中的电路是经过调试的实用电路,可以直接应用到相关系统中。
3 73K222AL中的寄存器
73K222AL有5个寄存器,可用来对芯片进行设置与控制。
3.1 寄存器0
寄存器0为控制寄存器,用来设置通讯方式和通讯速率,其D0~D7位的意义如下:
对于D0位:当D0=1时,为主叫方,D0=0时为被叫方。所谓主叫方与被叫方,其实就是规定一下数据传输通道。对于主叫方,它数据发送使用的是1200Hz通道,而接收方的数据发送使用的则是2400Hz通道。因为只有这样规定一下,才可进行全双工通讯。
D1为0时,表示不允许TXA输出。D1为1时,表示允许TXA输出。
D6通常为0,其余各位的组合选用方式如表1和表2所列。
对于图1所示接口电路,选择波特率为1200bps,对于10位异步串行通讯可将寄存器0设置为:
主叫方:00011011B
被叫方:00011010B
3.2 寄存器1
该寄存器为控制发送单元,其中D0、D1位用于选择工作模式。正常为00,其余为测试状态。
D2为0时为正常工作状态。为1时为省电状态。D3为0时选择11.0592MHz作为CLK脚输出。为1时选择16倍数据速率作为CLK脚输出。
D4为0时选择正常工作方式,此时DPSK数据要通过加扰器。D4为1时选择不加扰方式。
D5为0时禁止INT输出。为1时允许INT输出。
D7和D6的组合选择方式如表3所列。
3.3 寄存器2
该寄存器主要用于通讯过程中的监测,其各位的定义如表4所列。
3.4 寄存器3
寄存器3用于控制接收和产生应答音、DTMF拨号音以及拨号音。
回应答音时,设置为10100001B。
发拨号音时,设置为1001D3D2D1D0,其中D3D2D1D0组成拨号的16个键值[1]。
允许接收RXD时,设置为00000000B。
除了上述3个寄存器外,寄存器4为身份识别寄存器,对于73K222AL芯片,其读出值的D7位为1,D6位为0。
4 控制软件程序
4.1 初始化
初始化的目的是设置波特率和中断管理程序。具体程序如下:
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中断,用于专线上信号的检测
SETB EX1 ;允许T0中断
SETB IT1
CLR IT0
SETB PT0
SETB EA
接口 电路 单片机 调制解调器 单片 73K222AL 相关文章:
- μC/OS-II下通用驱动框架的设计与实现(07-23)
- 基于S3C44B0X+μcLinux的嵌入式以太网设计(07-08)
- 基于DSP Builder的VGA接口设计(04-10)
- 基于DSP的嵌入式显微图像处理系统的设计(06-28)
- DSP和Flash接口技术的实现(08-15)
- dsPIC33F系列DSC的 SD存储卡接口设计(01-05)