目前,单片机等嵌入式系统在国民经济和人民群众的日常生活中得到了广泛的应用,而数据的远距离传输是一个很重要的应用领域。实现单片机与PC机之间的远距离数据传输的方法有多种,而利用电话网通过MODEM来实现远距离的数据传输则越来越受到人们的青睐,本文将介绍一种利用TDK公司生产的单片MODEM芯片73M2901C实现单片机与PC机之间的远距离数据传输的方法。
1 MODEM芯片73M2901C简介
73M2901C是一个真正的单片MODEM,它包含有数据泵和所有的控制器(数据终端设备),是符合V.22bis标准的智能MODEM。它以8032为处理核心,包含有A/D和D/A转换器和一个模拟前端,并集成了必要的RAM和ROM。另外,73M2901C还提供了一个混合驱动器。73M2901C的工作电压为5V,属于低功耗器件(5V工作电压下的功耗为250mW),支持自动备用休眠模式,也可以接收来自数据终端设备的命令进行断电操作,从而完成该芯片的核心控制逻辑而无需用到其它器件,因而它可广泛应用于直接由电话网供电的通信装置,如销售终端、手动通信仪、计量器、销售机、信用卡机等。
73M2901C具有如下特点:
●是真正意义上的嵌入式单片MODEM;
●具有250mW的低功耗,并具有便捷的备用电源和自动断电模式;
●设计工作电压为+5V(±10%);
●支持V.22bis、V.22/Bell212、V.21/Bell103、V.23、Bell202;
●支持国际电话进程FCC68、CTR21、JATE;
●具有广域ID呼叫功能;
●可进行双音多频传输信号的产生与检测;
●带有一片混合驱动器;
●具有黑名单记忆功能;
●具有占线、并行摘机检测功能;
●具有生产商自测功能;
●带有丰富的AT指令集合数据泵;
●带有便捷的用户管脚;
●带有同步/异步串行数据I/O端口。
2硬件电路设计
2.1 73M2901C与单片机的接口电路
本设计中的单片机采用W78E516B,该单片机内部含有64k主FALSH EPROM和4k的辅助FALSHEPROM,而辅助的4k FALSHEPROM允许64k主FALSHEPROM由加载的程序更新,加载的程序由辅助的4k FALSHEPROM定位,并与32k的静态存储器CY7C199组成单片机系统的程序和数据存储系统。另外,加上由MAX813L构成的看门狗电路和GAL20V8构成的译码电路便可组成一个完整的单片机控制系统。单片机与MODEM芯片的接口电路框图如图1所示。
由于MODEM采用全双工的工作方式,其数据终端始终处于工作状态,因此,允许不用检测发送信号(CTS)和终端准备好(DTR)等信号,而仅仅检测振铃信号(RING)和载波信号(DCD)就能完成正常的工作。单片机与MODEM之间的数据通信直接通过串口来完成。也就是说,单片机向MODEM发送AT命令、MODEM向单片机返回结果码以及单片机通过MODEM向远端数据终端传送数据都可通过串口来实现。
2.2 MODEM与PSDN的接口电路
在基于73M2901C的远距离数据传输设计中,电话线的接口电路包括73M2901C与单片机的接口电路和73M2901C与电话线的接口电路两部分,而73M2901C与电话线的接口电路又包括拨号脉冲发生电路、振铃检测电路两部分。
MODEM与电话线的接口电路主要完成MO-DEM内部不平衡电路与平衡型电话线路之间的转换、MODEM内部四线电路与二线电话线之间的转换以及识别沿电话线路来的交流振铃信号等功能。工作时,该电路可为电话线路提供约600Ω的直流负载;拨号时,它能发出符合国标标准的拨号信号。其具体电路如图2所示。
在图2所示电路中,拨号脉冲发生电路由继电器K1、限流电阻R15、音频变压器T1组成。当MO-DEM芯片的RELAY为高电平时,继电器K1没有电流流过,常开触点不能吸合,电话线没有形成回路,所以呈挂机状态。当MODEM芯片的为低电平时,继电器K1由于有电流流过,常开触点吸合,电话线形成回路,所以呈摘机状态。当MODEM芯片的
为低电平时,继电器K1由于有电流流过,常开触点吸合,电话线形成回路,所以呈摘机状态。对于程控交换机来讲,只要回路中有不低于18mA的电流存在,就认为用户话机为摘机状态。当MODEM芯片的
端在MODEM通讯软件的控制下执行“ATDTNNNNNNN”(NNNNNNN代表远方计算机系统)命令时,
端将在程序控制下,在高电平和低电平之间变化,从而使得继电器不断地吸合,这就相当于发出了拨号脉冲。电路中电阻R30、电容C21的作用是消除由于继电器吸合而引起的火花,电容C20是为了滤除高频干扰。
振铃检测电路主要由隔直电容C12、限流电阻R8、保护二极管D3、稳压二极管D4、D5和光电耦合器U14组成。当电话线没有振铃信号(25±3Hz,90±15V交流)时,光电耦合器中的发光二极管没有电流流过,因而不发光,此时三极管截止,脚为高电平。当电话线有振铃信号时,光电耦合器中的发光二极管有电流流过,因而发光,此时三极管导通,
脚为低电平。
由于光电耦合器中的发光二极管是直流驱动,而振铃信号是交流信号,并且电压比较高,因此,必须在光电耦合器中的发光二极管的两端反向并接一个保护二极管,以滤掉振铃信号中的负半周信号,从而达到保护光电耦合器中的发光二极管不被反相击穿之目的。图2电路中的信号通道由耦合变压器T1、平衡网络R7、高频滤波电容C11组成。MODEM芯片的TXAP和TXAN是模拟信号发送端,其输出为差分信号,可直接驱动特性阻抗为600Ω的耦合变压器。MODEM芯片的RXA是模拟信号的输入端,该输入端为不平衡输入端,接收的信号为单端对地的模拟信号。通过平衡网络电阻R7可将MODEM芯片的TXAP、TXAN差分输出端的输出信号最大限度地分配到耦合变压器T1的初级上,以使得输出功率达到最大。高频滤波电容C11的作用是消除高频干扰。
3软件设计
MODEM一般都具有自动拨号/应答功能,并具有两种基本状态,即命令状态和联机状态。在命令状态下,MODEM接受数据终端发给它的命令;而在联机状态下,系统将接收数据并将其传送出去,即通讯双方在联机状态下可相互交换数据。当MODEM监测到DCD时,它将进入联机状态;而当DCD消失后,MODEM又自动进入命令状态。
在进行软件设计时,首先应在主程序中对单片机和MODEM进行初始化。单片机的初始化包括串行口工作状态的设定、波特率的设定等;MODEM的初始化包括各寄存器的设置,同时应在寄存器默认值的基础上根据具体要求利用AT指令将MODEM进行初始化。其具体程序如下:
本文关键字:单片机 综合-其它,单片机-工控设备 - 综合-其它