1 概述
因为双音多频DTMF信号具有抗干扰能力强、传输间隔远、数据精确等特色,因此可广泛使用于通讯、遥控等范畴。使用DTMF信号可完结双总线的远间隔微机通讯,以完结操控或数据的传输。本文介绍选用DTMF信号产生芯片MT5087及接纳芯片MT8870来完结与AT89C51单片机的硬件接口电路,该电路经过软件编程可完结远间隔通讯,具有必定的使用价值。
2 DTMF信号产生器MT5087
MT5087是双音多频电话拨号器,经过该芯片可完结4×4矩阵编码。MT5087具有电源工作范围宽、输出电平可调、谐波失真小等特色。其引脚摆放如图1所示。各引脚功用如下:
●VDD、VSS(1,6脚):电源端;
●C1~C4(3、4、5、9脚):内部具有下拉电阻的键盘比值向输入端;
●R1~R4(14~11脚):内部具有上拉电阻的键盘横向输入端;
●OSC1、OSC0(7,8脚):振荡器输入、输出端;
●TONE1(15脚):单音按捺输入端,为“0”时制止单音输出;
●TONE0(16脚):双音频信号输出端,此端接内部NPN晶体管的发射极,外加接地电阻可构成射极输出器。
M5087的矩阵编码表如表1所列。
3 DTMF信号接纳器MT8870
MT8870是双音多频接纳芯片,可用来完结DTMF信号的接纳、别离和译码;能输出由相应16和DTMF频率组合4位并行二进制码。MT8870的引脚摆放如图2所示。各首要引脚功用如下:
●IN+、IN-:运放同相、反相输入端;
●FB:运放输出端;
●VREF:基准电压输出端;
●OSC1、OSC0:振荡器输入、输出端;
●EN:数据输出答应端。为“1”时答应数据输出;为“0”时制止数据输出;
●D4~D1:16种DTMF信号所对应的4位二进制并行码数据输出端;
●DV:推迟操控输出,当一组有用的双音频信号被接纳时输出“1”;不然输出“0”;
●EC0:初始操控输出端。若电路检测出可辨认的单音对,则此端变成高电平,若无输入接连失真,则EC0回来低电平;
●CI:时刻监控输出端。
表1一同也列出了MT8870的译码表。
表1 MT5087编码表及MT8870译码表
MT5087编码表 | 双音频率(Hz) | MT8870译码表 | |||||||||||||
C4 | C3 | C2 | C1 | R4 | R3 | R2 | R1 | NO. | fl | fH | D4 | D3 | D2 | D1 | 十六制码 |
L | L | L | × | H | H | H | × | 1 | 697 | 1209 | 0 | 0 | 0 | 1 | 1 |
L | L | × | L | H | H | H | × | 2 | 697 | 1336 | 0 | 0 | 1 | 0 | 2 |
L | × | L | L | H | H | H | × | 3 | 696 | 1477 | 0 | 0 | 1 | 1 | 3 |
L | L | L | × | H | H | × | H | 4 | 770 | 1209 | 0 | 1 | 0 | 0 | 4 |
L | L | × | L | H | H | × | H | 5 | 770 | 1336 | 0 | 1 | 0 | 1 | 5 |
L | × | L | L | H | H | × | H | 6 | 770 | 1477 | 0 | 1 | 1 | 0 | 6 |
L | L | L | × | H | × | H | H | 7 | 852 | 1209 | 0 | 1 | 1 | 1 | 7 |
L | L | × | L | H | × | H | H | 8 | 852 | 1366 | 1 | 0 | 0 | 0 | 8 |
L | × | L | L | H | × | H | H | 9 | 852 | 1477 | 1 | 0 | 0 | 1 | 9 |
L | L | × | L | × | H | H | H | 0 | 941 | 1336 | 1 | 0 | 1 | 0 | A |
L | L | L | × | × | H | H | H | * | 941 | 1209 | 1 | 0 | 1 | 1 | B |
L | × | L | L | × | H | H | H | # | 941 | 1477 | 1 | 1 | 0 | 0 | C |
× | L | L | L | H | H | H | × | A | 697 | 1633 | 1 | 1 | 0 | 1 | D |
× | L | L | L | H | H | × | H | B | 770 | 1633 | 1 | 1 | 1 | 0 | F |
× | L | L | L | H | × | H | H | C | 825 | 1633 | 1 | 1 | 1 | 1 | F |
× | L | L | L | × | H | H | H | D | 941 | 1633 | 0 | 0 | 0 | 0 | 0 |
表2 P2输出编码表
No. | P27 | P26 | P25 | P24 | P23 | P22 | P21 | P20 | 十六进制码 |
1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1EH |
2 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 3EH |
3 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 3EH |
4 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 1DH |
5 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 2DH |
6 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 3DH |
7 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 1BH |
8 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 2BH |
9 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 3BH |
0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 27H |
* | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 17H |
# | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 47H |
A | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 8EH |
B | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 8DH |
C | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 8BH |
D | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 87H |
4 硬件接口电路
图3所示是MT8870、MT5087与单片机进行接口以完结DTMF信号传输操控的硬件电路,在该硬件电器中,MT8870,MT5087的外转帐电路与一般的使用电路根本相同,接纳电路中MT8870的10脚EN与15脚DV接在一同,当一个有用双音频信号被接纳后,DV输出记电平。在脚EN为高电平常答应数据输出,一同经T1反相后以低电平送给AT89C51中止输进口INT1,以履行中止程序并接纳码处理;发码电路MT5087的15脚TONE1接地是为使能双音频信号输出,TONE0为双音频输出,内接NPN晶体管的发射极,外接电阻R11可构成射极输出器并连至总线,若通讯间隔较长,可考虑加一驱动级。矩阵键盘行R1、R2、R3、R4和列C1、C2、C3、C4与AT89C51的P2口衔接。发码时,只有当行、列端别离有一个端为VDD/2电平常才选中一组双音频信号宣布。该电路使用P2口线的内部上拉电阻与MT5087的内部上、下拉电阻合作来完结发码。
5 软件设计问题
在程序设计时,应考虑本身发码时对本身收码的屏蔽,即发码时应关掉INT1中止,发码完毕后再敞开中止。发送数据时P2口线的编码见表2所列。
6 完毕语
使用DTMF信号进行长途数据通讯能够将通讯间隔提高到几公里,可是,其数据传输速度可能会遭到DTMF信号的约束,尽管如此,选用本文所给定的DTMF信号与AT89C51的接口电路在些特别场仍具有必定的实用价值。