1 HT9200A芯片介绍
HT9200A是串行式DTMF电路,具有很好的温度适应性,其工作温度范围为-20℃~+70℃,它采用8脚DIP或SOP封装形式,其管脚排列昭图1所示。各引脚的功能说明如下:
●CE:片选信号输入端,低电平有效;
●X1、X2:3.579545MHz晶振接入端;
●VDD、VSS:电源正负输入端,正常工作电压范围为2~5.5V,工作电流为2mA左右;
●CLK:串行数据的同步信号输入端,fCLK为100kHz左右;
●DATA:串行数据输入端;
●DTMF:DTMF信号输出端。
图2所示为HT9200A的输入输出时序图当CE为低电平时,选中芯片并在CLK的下降沿将串行口DATA上的数据锁存。每个数据为5位二进制码,在CLK下降沿到来时,选锁存低位,再锁存高位。当5位均为1时,结束DTMF的发送。
HT9200A的输入与输出频率由5位(D4~D0)不同的位码组合决定,表1所列为HT9200的输入位码组合与输出频率的对应关系。
表1 HT9200A输入组合与输出频率
D4
| D3
| D2
| D1
| D0
| 符号
| 输出频率(HZ)
|
0
| 0
| 0
| 0
| 0
| 0
| 941+1633
|
0
| 0
| 0
| 0
| 1
| 1
| 697+1209
|
0
| 0
| 0
| 1
| 0
| 2
| 697+1336
|
0
| 0
| 0
| 1
| 1
| 3
| 697+1477
|
0
| 0
| 1
| 0
| 0
| 4
| 770+1209
|
0
| 0
| 1
| 0
| 1
| 5
| 770+1336
|
0
| 0
| 1
| 1
| 0
| 6
| 770+1477
|
0
| 0
| 1
| 1
| 1
| 7
| 852+1209
|
0
| 1
| 0
| 0
| 0
| 8
| 852+1336
|
0
| 1
| 0
| 0
| 1
| 9
| 852+1477
|
0
| 1
| 0
| 1
| 0
| 0
| 941+1336
|
0
| 1
| 0
| 1
| 1
| *
| 941+1209
|
0
| 1
| 1
| 0
| 0
| #
| 941+1477
|
0
| 1
| 1
| 0
| 1
| A
| 697+1633
|
0
| 1
| 1
| 1
| 0
| B
| 770+1633
|
0
| 1
| 1
| 1
| 1
| C
| 852+1633
|
1
| 1
| 1
| 1
| 1
| DTMF结束
| -
|
HT9200A主要用于分布式电话网络测控系统,它与89C51微控制器的接口电路如图3所示。
在图3中,89C51单片机的P1.0用于产生串行同步信号,P1.1用于输出串行数据,由P2.7产生低电平的片选信号。
MSM7512B为嵌入式调制解调专用电路[1],它采用CCITTV.23标准,具有1200bps半双工或1200bps接收/75bps发送两种通讯方式。图中,由单片机控制HT9200A并产生DTMF信号,以供MSM7512B的EAI输入端使用,经MSM7512B内部放大器处理后,再由MSM7512B的AO脚输出。在主叫机与被叫分机通过电信程控交换机建立联接后,MSM7512B就可在89C51单片机控制下进行数据收发工作。
可以看出,HT9200A主要起着拔号联接的作用,以使主叫机与被叫分机建立联系。
3 编程
根据图3所示电路,现给出AT89C51与HT9200A进行接口控制的软件编程
:
…
MOV R1,#30H
TEL:MOV A,@R1 ;发8位电话号码
TCALL DTMF
INC R1
CJNE R1,#38H,TEL
…
DTMF:MOV R0,#0
LA: SETB P1.0 ;准备接收
CLR C
RRC A
MOV P1.1,C ;送数据到P1.1口
LCALL D50US
CLR P1.0 ;锁存
LCALL D50US
INCR0
CJNE R0,#5,LA
RET
D50US:MOV R7,#10
DD1:NOP
NOP
DJNZ R7,DD1
RET
工作时,首先从89C51内部RAM的30H~37H单元取出被叫方的8位电话号码,然后调OTMF子程序并移位到P1.1口,最后通过P1.0下降沿锁存。由于HT9200A的CLK频率范围为100kHz~500kHz,因此,在发送过程中,需调用50μs延时子程序以使fCLK处在100kHz左右。
© 2010 IC邮购网 icyougou.com版权所有