mt8880c的智能电话.docx

上传人:b****7 文档编号:10164829 上传时间:2023-02-09 格式:DOCX 页数:43 大小:492.98KB
下载 相关 举报
mt8880c的智能电话.docx_第1页
第1页 / 共43页
mt8880c的智能电话.docx_第2页
第2页 / 共43页
mt8880c的智能电话.docx_第3页
第3页 / 共43页
mt8880c的智能电话.docx_第4页
第4页 / 共43页
mt8880c的智能电话.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

mt8880c的智能电话.docx

《mt8880c的智能电话.docx》由会员分享,可在线阅读,更多相关《mt8880c的智能电话.docx(43页珍藏版)》请在冰豆网上搜索。

mt8880c的智能电话.docx

mt8880c的智能电话

目录

1绪论1

2设计要求1

3系统结构2

3.1基于MT8880C的DTMF收发单元2

3.1.1DTMF信号的介绍3

3.1.2DTMF芯片MT8880C3

3.1.3MT8880C硬件电路6

3.2基于ISD4002的语音电路单元7

3.2.1ISD4002语音芯片的介绍7

3.2.2ISD4002语音芯片9

3.2.3语音单元硬件电路11

3.3外部存储单元11

3.3.1掉电存储器24C32介绍11

3.3.2掉电存储器24C32读写操作12

3.4其他单元电路13

3.4.1显示单元13

3.4.2键盘操作单元和主控制器单元14

4系统软件设计14

4.1整体系统软件设计14

4.1.1录音模块15

4.1.2放音模块15

4.1.3增删号码模块15

4.1.4模拟拨号模块16

4.2从机软件设计17

5结束语19

致谢20

参考文献20

附录1整体电路图21

附录2主机程序22

附录3从机程序27

1绪论

社会的发展和科学技术的进步给人们的生产、生活、工作方式及工作环境带来了很大的变化,它们以更加便捷、快速、智能、方便的方式给人们提供着服务,使人们的生活和工作变得更加的轻松和高效。

在科学技术的发展中,通信科技的产生和发展更是给人们带来了前所未有的改变,使得人们虽相隔万里也能随时相互保持联系,使得人们之间的交流不受时间和地点的限制,极大地方便了人们的生活和工作。

特别是在现在的时代,我们都称之为“信息时代”,人们对信息的要求更是要快速和准确,这样将更有利于提高人们的工作效率。

科学技术改变着人们的生活方式,但是它也体现着人们对更加理想的生活的追求。

人们总是在想着各种各样的方法和设计出各种各样的工具去方便人们的各个方面,特别是在现在这样一个电子技术非常成熟的时代利用电子器件可以设计出非常智能和人性化的产品,给我们的生活带来的极大地便利。

本次设计也是从人们的生活和工作需要出发,依靠现有的发达的通信网络和电子器件来设计的。

电话机在我们的生活中已经是一个必不可少的工具了,通知个事情我们不再需要直接跑过去见到了对方之后才能告诉对方,一个电话打过去什么信息都能传达到。

但是随着人们对工作效率的要求和对电器件更加智能化的要求,人们总是希望设计出更加智能化的电话。

由于人们的工作性质等方面的不同人们对智能化的要求方向也是不一样的,本次设计是针对一些办公人员而设计的,特别是那些为会议做安排的一些人员。

当需要开会时我们必须把每一个参加会议的人员都通知到,但是通知的内容还都是一样的,这样就使得工作显得既麻烦而且还无聊,十分影响工作效率,并且当参加会议的人员很多时既费时又费力,在这种情况下就十分有必要根据这种情况设计一种能够适应这种情况的电话机,使得我们在通知一些工作和会议时只需将我们要通知的内容先录制好后,再将要通知的人员的电话号码输入到电话本里,电话机就会自动地将其中的人员一一的通知到,这样将会十分方便我们的工作。

还可以根据需要添加一些其他的功能,比如可以设定一个会议模式,当我们在开会时电话机会自动的进入静音模式不影响我们开会,并且可以自动摘机自动的通知打电话的人现在正在开会请稍后再打来等等的一些非常人性化的设计。

这样既不会打扰我们开会,还不会耽误我们的工作。

这样的一种智能会议电话将会给我们的工作带来非常大的帮助,提高我们的工作效率,使得我们的工作轻松快捷。

2设计要求

系统的具体设计要求为:

(1)能够录音且有电话薄,能够把所录制的声音按照电话薄中的号码一一的自动拨通后播放给对方听。

(2)当没有拨通后能够将电话号码记录下来,以便进行重拨。

(3)可以重复的录音更新录音的内容及电话薄中的号码能增加能删除。

(4)操作要简单方便,显示要明了简洁,便于一般人群使用。

3系统结构

该智能会议电话系统主要包括:

基于ISD4002的语音单元、基于MT8880C的DTMF收发单元、外部存储设备单元、显示单元、键盘操作单元、输出控制单元、基于AT89S52的智能控制单元等几大部分组成。

由于系统的单元电路比较多及控制单元采用的AT89S52芯片的I/O只有40个,单个这样的芯片并不能满足该系统的要求所以本系统的控制单元采用了两个芯片一片AT89S52及一片AT89C2051,这样两个芯片的I/O口加起来就有60个就能够满足使用要求了。

系统的总体设计框图如图1所示。

图1系统总体设计框图

通过系统的具体设计要求和系统的总体设计框图我们可以对系统有一个整体而全面的了解,下面对系统的各个单元电路分别进行详细的阐述和分析。

3.1基于MT8880C的DTMF收发单元

本系统的一个重要的功能就是要能够实现模拟拨号及能够检测电话线上的音信号以便能够判断电话线的状态:

现在是否能拨号、对方是否正在通话、对方是否摘机、对方电话是否有人接听等,这些信号都是双音多频信号。

为了能够系统的了解双音多频信号,对于DTMF双音多频信号可以做一个简单的介绍。

3.1.1DTMF信号的介绍

DTMF信号是双音多频信号的英文缩写,这种信号不是单一频率的信号而是由两种不同频率的信号叠加而成的。

两个不同频率的信号一个取自高频群另一个取自低频群,高低频群各包括4个频率,所以由高低群频率可以组成16种不同的DTMF信号。

这样的一种频率组合结构正好和电话机上的4×4矩阵键盘相对应,每一行代表一个低频,每一列代表一个高频,每按一个键就可以发送一个高频和低频的正弦信号组合。

对于高频群和低频群中的各个频率信号的选择不是任意的,是经过考虑了电路中的各种干扰信号频率和信号音频率而选择的。

16种不同的组合和电话机上的按键是一一对应的,详细的对应关系如表1所示。

表1DTMF信号的频率组合及对应编码

低频组(Hz)

高频组(Hz)

D4D3D2D1

键号

697

1209

0001

1

697

1336

0010

2

697

1477

0011

3

770

1209

0100

4

770

1336

0101

5

770

1477

0110

6

852

1209

0111

7

852

1336

1000

8

852

1477

1001

9

941

1336

1010

0

941

1209

1011

*

941

1477

1100

#

697

1633

1101

A

770

1633

1110

B

852

1633

1111

C

941

1633

0000

D

对于DTMF信号的发送与接收也是有专门的芯片的,比较常用的一种芯片是MT8880C。

该芯片具有功耗低、集成度高、可编程控制、容易和微机接口等功能和优点所以在众多的DTMF电路中普遍应用。

3.1.2DTMF芯片MT8880C

首先对MT8880C芯片做一个简单的引述和介绍。

MT8880是MITEL公司生产的DTMF发送与接收器,它是一种功能较强的DTMF发送与接收器可与多种单片机配接完成DTMF信号发送接收、信号音检测等功能。

发送部分采用开关电容式D/A转换器,发送的DTMF信号失真小、频率精度高。

接收器采用两组六阶开关电容式带通滤波器,分离出音调信号的低频群和高频群。

解码器采用数字计数方式检测双音信号的频率并映射为相应的二进制码,且有多种工作模式。

它的内部寄存器、控制接口和数据总线器便于实现与微处理器的直接接口和对电路进行工作模式控制,获得更多的功能和灵活性。

通过微机接口可以由CP、RSO、R/W、CS、D0~D3等信号选择内部寄存器并控制电路的工作状态或工作模式[1]。

MT8880C的管脚图如图2所示。

图2MT8880C管脚图

其各脚的功能描述如下:

IN+、IN-:

分别为内部放大器的同相输入端和反相输入端,即接收DTMF信号的输入端。

GS:

内部放大器的输出端,外接一个负反馈电阻至IN-端。

UREF:

内部参考电压输出端,该参考电压等于UDD/2。

UDD、USS:

分别为电源的正、负端,供电电压为5V。

OSCl、OSC2:

外接一个3.58MHz晶体,形成晶体振荡器。

TONE:

双音频信号输出端。

R/W:

读/写控制端,该端施以高电平时读MT8880,施以低电平时写MT8880。

RSO:

用于选择内部各寄存器的控制端,该端施以高电平时选中控制寄存器或状态寄存器,施以低电平时选中发送数据寄存器或接收数据寄存器。

更具体的对应关系必须根据R/W端的状态共同确定,具体的对应关系见表2所示。

IRQ:

在双音频模式并且在中断模式时,当收到有效DTMF信号或准备发送DTMF信号时该端由高电平变到低电平;在呼叫处理模式且检测到有效信号音时,该端输出方波。

D0~D3:

写入命令或读出状态的数据线。

表2MT8880C内部状态寄存器选择表

RS0

R/W

内部寄存器及功能

0

0

写数据发送寄存器

0

1

读数据接收寄存器

1

0

控制寄存器CRA或CRB

1

1

读状态寄存器

MT8880C具有很强大的功能,共有6种工作模式下面介绍常用的3种模式。

(1)双音频模式:

在该模式下,芯片能接收并译码DTMF信号或产生并发送DTMF信号。

接收信号从IN—端输入,发送信号从TONE端输出。

(2)呼叫处理模式:

在该模式下,芯片可以从输入信号中检测电话呼叫过程的各种信号音(回铃音、拨号音、忙音,拨号音是450Hz的连续信号,忙音为0.35秒通、0.35秒断,回铃音为1秒通、4秒断)。

当信号频率落在320~510Hz范围以内时能从IRQ端输出方波,否则IRQ端为低电平。

(3)中断模式:

在该模式下,若芯片同时被设置为接收或发送DTMF信号模式,那么当收到有效DTMF信号并译码后,IRQ端变为低电平;在准备发出DTMF信号时,IRQ端变为低电平。

中断模式下,若芯片同时被设置为呼叫处理模式,在收到有效信号音时,IRQ端能输出对应的方波。

MT8880内部有5个寄存器:

数据发送寄存器TDR、数据接收寄存器RDR、控制寄存器CRA及CRB、状态寄存器SR。

芯片工作于何种功能,取决于在单片机的控制下写入控制寄存器CRA和CRB的内容,而芯片的某些状态可以根据读出状态寄存器SR的内容来判断。

当需要接收DTMF信号时,首先往控制寄存器CRA和CRB写入相应的控制字,把芯片设置为DTMF模式,通过读取状态寄存器中的D2位可以判断是否收到一个有效的DTMF信号并已译码。

若已收到则读取内部“接收数据寄存器”的内容(从芯片的D0一D3脚读出)。

当需要发送DTMF信号时,同样应先往控制寄存器CRA和CRB写入相应的控制字,把芯片设置为DTMF模式,通过读取状态寄存器中的D2位,可以判断是否发送完一个DTMF信号。

若已发送完,则把下一个要发送的数字由D0~D3写入到内部“发送数据寄存器”。

如果芯片同时又被设置为中断模式,则通过检测IRQ端状态,也能判断一个DTMF信号收到或发送完毕与否。

如何选中“接收数据寄存器”或“发送数据寄存器”应根据表3的规定,给引脚RSO和R/W施以相应电平。

如果要检测电话信号音(回铃音、拨号音、忙音),则应首先向控制寄存器CRA、CRB写入对应于该工作模式的控制字,然后检测IRQ端的方波信号,根据方波信号的间歇、间隔规律来判断是哪一种信号音。

控制寄存器CRA、CRB以及状态寄存器都只有4个位(比特),分别记为D0、Dl、D2、D3,要写控制寄存器或读状态寄存器,只要按照表3的规定给RSO引脚及R/W引脚施以相应电平就可以通过引脚D0~D3写入或读出。

控制寄存器和状态寄存器各个位的功能意义简述如下:

(1)控制寄存器CRA。

D0:

把该位设置为“1”则芯片被设置成DTMF模式,允许收、发双音频信号。

D1:

把该位设置为“1”则芯片被设置为信号音检测模式(呼叫处理模式),当D2也设为“1”时,引脚IRQ端能输出与各种信号音对应的方波。

D2:

把该位设置为“1”则芯片被设置成中断模式,其具体功能见前述的3种模式介绍。

D3:

把该位设置为“1”,表明允许选择控制寄存器CRB,因此应在写入控制寄存器CRA后,接着写控制寄存器CRB。

(2)控制寄存器CRB。

D0:

把该位设置为“0”时芯片工作于普通双音频模式,设置为“1”时芯片工作于突发模式,突发和暂停长度各为(51土2)ms。

D2:

把该位设置为“0”时允许产生双音频,否则只产生单音频。

D3:

行/列音选择,当D2为1(单音模式)时D3用于选择行音或列音(即音频频率的选择)。

(3)状态寄存器SR。

D0:

发生中断时该位为“1”读取状态寄存器后自动清“0”。

D1:

准备发送新数据时为“1”读取状态寄存器后自动清“0”。

D2:

接收数据寄存器满(即收到有效数据)时为“1”读取状态寄存器后自动清“0”。

D3:

一定时间内检测不到DTMF信号时为“1”,检测到DTMF信号时清“0”[2]。

3.1.3MT8880C硬件电路

通过对MT8880C功能的整体描述可进行相关软件方面的设计,再配合硬件电路便可以完成DTMF信号的接收和发送,其硬件连接电路如图3所示。

在上述电路中还包括了模拟摘机电路部分,模拟摘机电路完成拨号前的自动摘机功能,由于电话线上传来的信号的极性没有确定,圆桥可以稳定信号的极性,从正极输出端输出的永远是正极性,负极输出端输出的永远是负极性。

模拟摘机电路工作与否由控理器传送到光耦第二个管脚的高低电平决定,当控理器传送过来的是低电平时,光耦合器导通使三极管导通从而使回路电流值突增,电话交换机检测到该电流,将线路电压变为十几伏的直流,模拟摘机得以实现。

当摘机成功后便可以通过对MT8880C的寄存器进行操作来完成相应的双音多频收发功能。

对于MT8880C的12脚输入的接口控制信号可以采用由单片机产生的方波脉冲也可以采用由3.58M的晶振产生的振荡信号经过一个104的电容耦合到12脚形成。

对于后者来说由于该信号不依赖于单片机产生这样对于单片机的控制来说就比较的方便和简单,但是这样也存在着一些弊端,因为该脉冲不受单片机的控制所以对于单片机的控制来说就比较的被动了,也就是说单片机产生的对于MT8880的控制信号的时序要满足MT8880的硬件要求。

图3MT8880C硬件连接图

3.2基于ISD4002的语音电路单元

本系统的一个重要的功能就是进行自动电话通知,那就必须的要有一个能够存储语音的芯片,以便能够将要通知的内容先录制下来然后再让系统自动的进行通知。

在这个过程中就体现出了对语音芯片的功能要求,首先要能够在线录音,其次就是要能够多次的擦写以便进行录音内容的随时改变。

对于这样的要求一般的语音芯片是不能够满足的,现在大多数的语音芯片多是一次性擦写的而且还需要专门的系统进行语音的录制,使用这种芯片对于本系统来说很不方便而且也是不现实的。

这就需要使用一些专门的语音芯片来完成系统所需要的功能。

3.2.1ISD4002语音芯片的介绍

ISD4002是美国ISD公司制造的一种新款语音芯片。

与ISD其它系列语音产品不同的是,ISD4002是一种微控制器“从”设备,而“主”控制器可以是内置有SPI兼容接口的微控制器,也可以用I/O口仿真SPI通信协议。

ISD4002系列工作电压为3V,单片录放时间为2~4分钟,音质好,适用于移动电话及其它便携式电子产品中。

该芯片采用CMOS技术,内含振荡器、抗混叠滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。

芯片的所有操作必须由微控制器控制,操作命令可通过串行通信接口送入。

ISD4004采用多电平直接模拟量存储技术,每个采样值直接存贮在片内闪烁存贮器中,因此能非常真实、自然地再现语音、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。

采样频率可为4.0、5.3、6.4、8.0kHz,频率越低,录放时间越长,音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。

ISD4002的管脚图如图4所示。

图4ISD4002管脚图

各个管脚的功能描述如下:

电源(VCCA、VCCD):

为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上。

模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。

地线(VSSA、VSSD):

芯片内部的模拟和数字电路也使用不同的地线。

同相模拟输人(ANAIN+):

录音信号的同相输入端。

输入放大器可用单端或差分驱动。

单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3K电阻输人阻抗决定了芯片频带的低端截止频率。

差分驱动时,信号最大幅度为峰峰值16mV。

反相模拟输入(ANAIN-):

差分驱动时,为录音信号的反相输入端。

信号通过耦合电容输入,最大幅度为峰峰值16mV。

音频输出(AUDOUT):

提供音频输出,可驱动5K的负载。

片选(SS):

此端为低,即向该ISD4002芯片发送指令,两条指令之间为高电平。

串行输入(MOSI):

此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。

串行输出(MISO):

ISD的串行输出端。

ISD未选中时,本端呈高阻态。

串行时钟(SCLK):

ISD的时钟输入端,由主控制器产生用于同步MOSI和MISO的数据传输。

数据在SCLK上升沿锁存到ISD,在下降沿移出ISD。

中断(INT):

本端为漏极开路输出。

ISD在任何操作(包括快进)中检测到EOM或OVF时,本端变低并保持。

中断状态在下一个SPI周期开始时清除。

中断状态也可用RINT指令读取。

OVF标志用来指示ISD的录、放操作已到达存储器的末尾。

EOM是只在放音中检测到内部的EOM标志时此状态位才置1。

行地址时钟(RAC):

漏极开路输出。

每个RAC周期表示ISD存储器的操作进行了一行ISD4002系列中的存贮器共1200行,该端可用于存储管理技术。

3.2.2ISD4002语音芯片

对ISD的任何操作都是要通过控制器给其发送相应的命令来实现的,控制器要想和ISD互传数据就必须遵循ISD的通信协议。

ISD采用的是的SPI通信协议。

SPI协议是一个同步串行数据传输协议,协议假定微控制器的SPI移位寄存器在SCLK的下降沿动作。

ISD4002工作于SPI工作模式,因此对于ISD4002而言,在时钟上升沿锁存MOSI引脚的数据,在下降沿将数据送至MISO引脚。

通讯协议的具体内容如下:

(1)所有串行数据传输开始于SS下降沿。

(2)SS在数据传输期间必须保持低电平,在两条指令之间则保持高电平。

(3)数据在时钟上升沿移入,在下降沿移出。

(4)SS变低时,输入指令和地址后,ISD才能开始录放操作。

(5)指令格式是5位控制码加11位地址码。

(6)ISD的任何操作(含快进)如果遇到EOM(信息结束标志)或OVF(溢出)则产生一个中断,该中断状态在下一个SPI周期开始时被清除。

(7)使用“读”指令使中断状态位移出ISD的MISO引脚时,控制及地址数据也应同步从MOSI端移入。

因此要注意移入的数据是否与器件当前进行的操作兼容。

(8)所有操作在运行位(RUN)置“1”时开始,置“0”时结束。

(9)所有指令都在SS上升沿开始执行[5]。

上面是对SPI协议的整体描述,SPI的端口控制位如图5所示。

SPI控制寄存器的功能描述如表3所示。

由SPI控制存储器功能表可以非常清楚地了解其端口控制位的具体内容,再配合其指令表就可以完成对ISD4002的操作,以完成录放音操作。

ISD4002的指令表如表4所示。

但是在发送指令是需要注意的是:

在发送指令时在两个指令之间SS必须保持高电平这一点在使用中很关键。

对于向ISD发送的任何信号数据都要严格的按照其通信协议来进行,协议就是不同设备之间进行通信的桥梁。

图5SPI端口控制位图

表3SPI控制寄存器功能表

名称

功能

C4

RUN

1

开始

0

停止

C3

P/R

1

放音

0

录音

C2

PU

1

上电

0

掉电

C1

IAB

1

忽略输入地址寄存器的内容

0

使用输入地址寄存器的内容

C0

MC

1

允许快进

0

禁止快进

 

P9-P0

 

行指针寄存器输出

 

A9-A0

 

输入地址寄存器

表4ISD4002指令表

指令

5位控制码<11位地址>

操作摘要

POWERUP

00100

上电,等待TPUD后器件可以工作

SETPLAY

11100

从指定地址开始放音必须后跟PLAY指令使放音继续

PLAY

11110

从当前地址开始放音(直至EOM或OVF)

SETREC

10100

从指定地址开始录音,必须后跟REC指令录音继续

REC

10110

从当前地址开始录音(直至OVF或停止)

SETMC

11101

从指定地址开始快进,必须后跟MC指令快进继续

MC

11111

执行快进,直到EOM若再无信息则进入OVF状态

STOP

0X110

停止当前操作

STOPWRDN

0X01X

停止当前操作并掉电

RINT

0X110

读状态:

OVF和EOM

从上面的资料中我们可以看出ISD上电后是需要等待一段时间才能给其发送命令的,下面以从00地址开始放音和录音为例分别说明两种情况的操作顺序。

从00地址开始放音的操作顺序是:

1、发送POWERUP命令2、等待TPUD时间3、发送地址为00的SETPLAY命令4、发送PLAY命令。

从00地址开始录音的操作顺序是:

1、发送POWERUP命令2、等待TPUD时间3、发送POWERUP命令4、等待2倍的TPUD时间5、发送地址为00的SETREC命令6、发送REC命令[7]。

3.2.3语音单元硬件电路

主控器通过I/O口和ISD进行通信,通过发送给ISD相应的命令来完成语音的录制和播放。

语音的输入采用一个麦克风加一个前级放大电路组成,放大后输入到芯片的内部。

输出部分采用一个专门的音频功放芯片LM386来实现语音输出的功率放大。

ISD4002的硬件连接电路如图6所示。

图6ISD4002的硬件连接电路

3.3外部存储单元

系统要实现自动拨号进行电话通知就必须要有一个用来存储电话号码的器件,将要通知人员的电话号码事先记录起来作为电话通知的依据。

考虑到使用的实用性设计中使用了一种掉电存储器,因为在实际的使用中要通知的对象一般是不会变的或者变化很小的,这样使用掉电存储器进行电话号码的存储就不会因为系统掉电而需要重新对设定的电话号码进行输入。

当然,当我们想要重新更换通知人员的名单时我们也是可以通过软件很方便地进行任意的删除和增加的。

设计中使用的掉电存储器是具有I2C接口的存储芯片24C32。

3.3.1掉电存储器24C32介绍

该存储器有4K的存储空间,采用I2C协议和单片机之间进行数据传输。

I2C总线上允许挂接多从机,采用发送不同的地址信息和严格的时序信号进行主机和从机之间的数据传输。

具有I2C协议的从机其地址端都是可编程的,通过接地或接高电平来形成不同的地址,如果总线上只有一个从机一般都是将地址端全部接地,对于24C32芯片其可编程的地址

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

当前位置:首页 > 表格模板 > 合同协议

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

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