双音多频发送接收器MT8870.docx

上传人:b****5 文档编号:8070793 上传时间:2023-01-28 格式:DOCX 页数:8 大小:173KB
下载 相关 举报
双音多频发送接收器MT8870.docx_第1页
第1页 / 共8页
双音多频发送接收器MT8870.docx_第2页
第2页 / 共8页
双音多频发送接收器MT8870.docx_第3页
第3页 / 共8页
双音多频发送接收器MT8870.docx_第4页
第4页 / 共8页
双音多频发送接收器MT8870.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

双音多频发送接收器MT8870.docx

《双音多频发送接收器MT8870.docx》由会员分享,可在线阅读,更多相关《双音多频发送接收器MT8870.docx(8页珍藏版)》请在冰豆网上搜索。

双音多频发送接收器MT8870.docx

双音多频发送接收器MT8870

双音多频发送接收器MT8870/MT8888及其应用

    本文介绍了双音多频(DTMF)发送接收器件MT8888的主要功能、基本组成和工作原理。

最多给出了MT8888与单片机80C32接口的硬件电路及软件程序。

1 基本功能

  MT8888是一种具有Intel微处理器接口的功能较强的双音多频(DTMF)发送和接收器件。

可用于寻呼系统、交换机系统和移动通信、转帐卡系统、互接拨号器、数字通信和计算机等领域。

其主要功能有:

(1)完整的DTMF发送和接收功能;

(2)高速Intel微处理器接口;(3)可工作于自动音频突发模式;(4)可调整保护时间;(5)呼叫音检测到-30dBm。

  MT8888引脚排列如图1所示。

各引脚功能如下:

  

图1 MT8888引脚图

  IN+、IN-(1,2)—运放的同相和反相输入端;GS(3)—增益选择端。

在该引脚与IN-引脚间接反馈电阻可调节运放增益;Vref(4)—基准电压输出端。

通常为VDD/2,作为运放的偏置电压;VSS(5)—芯片电源负端,接地;OSC1、OSC2(6、7)—时钟或振荡器的输入、输出端。

两引脚间接3.579545MHz晶体与内部电路构成芯片振荡器;若由外部电路提供时钟,则OSC2引脚开路;TONE(8)—DTMF信号输出端,也可通过编程设置为单音输出;(9)—微处理器写输入端,低电平有效,与TTL电平兼容;(10)—片选信号输入端,低电平有效。

该引脚可由微处理器的地址锁存信号(ALE)直接提供;RS0(11)—寄存器选择控制输入端;(12)—微处理器读输入端,低电平有效,与TTL电平兼容;/CP(13)—中断请求信号,为开漏输出。

在中断模式下,当一个有效DTMF信号突发发送或接收时,输出低电平信号。

若控制寄存器设定电路工作于呼叫处理(CALL)模式和中断使能,则该端输出代表运放输入的方波信号音,但该信号频率必须落在呼叫处理滤波器的带宽内;D0~D3(14-17)—数据总线,与TTL电平兼容。

输入需发送的DTMF编码或输出译码的DTMF信号数据。

当CS=1时呈高阻状态;Est(18)—初始控制输出。

若电路检测到一种有效的单音对时,Est为高电平;若信号丢失,则Est返回低电平;St/GT(19)—控制输入/时间监测输出。

若St电压大于门限VTSt,电路寄存被检测的DTMF单音对,并更新输出锁存器内容。

若St电压低于VTSt,则电路不接收一新单音对,GT输出的作用是设置外部时间监测常数;VDD(20)—芯片电源正端,典型值为+5V。

  2 工作原理

  MT8888是集DTMF发送和接收功能的器件,内带呼叫处理滤波器。

接收部分与DTMF接收器件MT8870类似,发送部分包括行、列计数器和D/A变换器,另外增加了一些控制寄存器和接口、数据总线缓冲器,很容易实现与微处理器的直接接口,其功能框图如图2所示。

MT8888通过微处理器接口可以由RS0、、、D0~D3等信号选择与设定内部寄存器,并控制电路的工作状态或工作模式。

它共有5个不同作用的寄存器:

发送数据寄存器(TDR)、接收数据寄存器(RDR)、状态寄存器(SR)、控制寄存器A(CRA)和控制寄存器B(CRB),其控制关系如表1所示。

表1 内部寄存器控制关系

RS0

功  能

0

0

1

数据写入TDR

0

1

0

数据从RDR读出

1

0

1

数据写入SR

1

1

0

数据从SR读出

图2 MT8888内部功能框图

  MT8888共有6种工作模式,它们分别为:

  

(1)DTMF模式:

发送与接收DTMF信号。

输入数据经TDR控制可编程行、列计数器、D/A变换器,合成需要发送的DTMF信号。

或DTMF信号经拨号音抑制、分离带通滤波器、监频与确认,译成相应的4比特码,经RDR输至数据总线。

DTMF编译码对应关系如表2所示。

表2 DTMF编译码对应关系

双音频键

0

1

2

3

4

5

6

7

8

9

*

#

A

B

C

D

十时制数

10

1

2

3

4

5

6

7

8

9

11

12

13

14

15

0

  

(2)呼叫处理(CALL)模式:

电路可以检测电话呼叫过程中的各种信号音,只要信号的频率落在320Hz-510Hz范围内,片内呼叫处理滤波器便可滤出。

经限幅得到的方波信号,由/CP端输出,以用于微处理器对呼叫性质和类别进行判断。

若无信号滤出,则/CP端始终保持低电平。

  (3)突发(BURST)模式:

在DTMF模式下,工作于突发状态,信号突发和暂停时间各为51±1ms;在CALL模式下,工作于突发状态,信号突发和暂停时间各为102±2ms,此时电路只可发送DTMF信号,但不能接收。

  (4)单/双音(S/)产生模式:

电路可产生单音或DTMF信号(由CRB控制),用于测试和监测。

  (5)测试(TEST)模式:

使电路从DTMF接收部分得到延迟监测信号,并从/CP端输出。

  (6)中断模式:

此模式下若选择DTMF状态,当DTMF信号被接收或出现在监测时间内,或准备发送更多数据(突发模式下)时,则/CP端下接至低电平。

  各种模式的选择由控制寄存器(CRA和CRB)的相应位完成,如表3和表4所示。

状态寄存器SR各位所表示的关系如表5所示。

表3 控制寄存器A(CRA)的功能

符号

功   能

b0

TOUT

信号音输出控制。

高电平有效,该位控制所有信号的发送。

b1

CP/

呼叫处理或DTMF模式选择。

低电平为DTMF模式;高电平为CALL模式。

可检测呼叫信号音,从

/CP端输出方波(IRQ=1时

b2

IRQ

中断允许位。

高电平有效,使电路工作于中断模式。

b3

RSEL

寄存器选择位。

高电平时,下一个写周期选CRB,继而写周期返回选CRA。

表4 控制寄存器B(CRB)的功能

符号

功   能

b0

突发模式选择位。

低电平选择突发模式。

此时数据写入TDR,产生突发/暂停各为51±1ms的DTMF信号,然后更新SR,使TDR准备接收下一指令。

若中断允许,则产生中断;若CALL模式允许,则产生102±2ms扩展突发信号。

b1

TEST

测试方式控制。

高电平设定电路工作于测试方式。

b2

S/

单/双音产生选择位。

低电平设定电路产生DTMF信号;高电平设定电路列或行(由C/位决定)单音频信号输出。

b3

S/

列或行单音选择。

高电平选择列单音输出;低电平选择行单音输出。

该位与S/位一起使用。

表5 状态寄存器(SR)的功能

名称

状态标志设定

状态标志清除

b0

中断请求

中断发生,b1或b2置位

中断禁止,SR读出后清除

b1

突发模式下

TDR空

暂停时间结束,准备发送新数据

SR读完数据后清除

b2

RDR满

RDR已有有效数据

SR读完数据后清除

b3

延迟控制

设定无DTMF信号有效检测功能

清除有效DTMF信号检测功能

  3 MT8888与80C32的接口

  MT8888提供了与微处理器相连的接口,以对其发送、接收和工作模式进行控制。

MT8888可与Intel微处理器直接接口,即使使用16MHz的单片机80C51,也无需插入等待周期。

与其它微处理器接口时,则必须通过转换构造MT8888所需的时序。

图3为MT8888的控制时序图。

图3 MT8888控制时序

图4 MT8888与80C32接口原理图

  图4是MT8888与单片机80C32的接口电路原理图,由于可以直接接口,因此,无需构造控制信号。

图中两片MT8888(S1和S2)共用一个时钟振荡器。

单片机的P0.0~P0.3口接4位数据总线,片选信号由单片机的地址锁存信号ALE提供,读写信号由微处理器的读写信号和译码信号经或门后产生。

寄存器选择信号接到地址线P2.0口,这样,对每一片MT8888均有两个地址。

两个中断信号经与门后送至单片机的INT1引脚。

电路中扩展了一片74365是用于软件判断是哪一路MT8888产生的中断而扩展的。

当MT8888向单片机80C32发出中断请求信号后,CPU响应中断,执行中断服务程序。

在中断服务程序中,首先读取74365的内容,以判断是哪一路MT8888所发出的中断请求后,再读取该路MT8888的状态寄存器,使中断自动清除以等待下一双音频信号。

由于读完状态寄存器后,其内容即自动清除,重新读状态寄存器的内容是无效的,因此,应先将状态寄存器内容暂存于缓冲区内,再对标志位进行判断该中断信号是发送中断还是接收中断,以执行下一步的操作。

需要注意的是,单片机80C32的INT1中断方式应设置为电平中断,才能同时检测两片MT8888的中断请求,防止信号丢失。

  若将MT8888设置于呼叫处理工作模式,则通过对一定时间内中断次数的判断可以识别不同的呼叫信号音,如振铃、回铃音、忙音、空号音以及拥塞音等。

  软件程序包括MT8888初始化子程序、发送数据子程序和中断服务子程序。

另外,在设计硬件电路时,由于MT8888发送DTMF信号同时又送到MT8888输入端,这样导致在发送数据时,要引起接收数据中断,为了正确判断,在程序中设置一个发送数据标志tflang,当tflag=1时,MT8888为处于发送数据状态;同时,下面只给出第1片MT8888(S1)的程序。

  MT8888(S1)初始化子程序

  movdptr,#a001h

  movxa@dptr ;读状态寄存器SR

  mova,#00h

  movxa@dptr,a ;写控制寄存器

  movxa@dptr,a ;写控制寄存器

  mova,#08h

  movxa@dptr,a ;写控制寄存器A

  mova,#00h

  movx@dptr,a ;写控制寄存器B

  movxa,@dptr ;读状态寄SR

  mova,#0dh ;设置MT8888工作方式

  movx@dptr,a ;写控制寄存器A

  mova,#00h

  movx@dptr,a ;写控制寄存器B

  ret

  MT8888(s1)数据发送子程序

  入口参数:

(r0)—待发送的DTMF数据。

Sendr02:

  mova,r0

  movdptr,#a000h

  movx@dptr,a ;待发送数据送至TDR

  ret

80C32INT1中断服务子程序

int1:

clrea ;关中断

  movdptr,#8000h ;读取74365内容

  movxa,@dptr

  jbacc.0,path1 ;转第1路MT8888

  jbacc.2,path2 ;转第2路MT8888

  ljmpend

path1:

mova,tflag ;判断工作方式标志字

  cjnea,#01h,rece1

  movdptr,#a001h

  movxa,@dptr ;读状态寄存器SR,清中断

  anla,#02h

  cjnea,#02h,end

  setbtransend ;发送结束标志置位

  ljmpend

recel:

movdptr,#a001h

  movxa,@dptr ;读状态寄存器SR,清中断

  movdptr,#a000h

  movxa,@dptr ;读DTMF信号的数据编码

  movr0,a ;结果存于r0

  setbreceiend ;收到结果标志置位

  ljmpend

path2:

(略)

end:

setbea ;开中断

reti

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1