欢迎光临MCUWAY! 本站网名:单片机之路  永久域名:www.mcuway.com

设为首页

加入收藏

电子基础 初学MCU 单片机类型 MCU程序 MCU应用 设计软件 测控电路 技术论坛
 您现在的位置: 单片机之路 >> 单片机程序 >> 单片机编程 >> 文章正文

HT9200A DTMF电路与单片机的接口

      摘要:HT9200A是Holtek公司生产的串行式DTMF电路芯片。本文分析了HT9200A的电路结构与作用特点,给出了HT9200A与AT89C51单片机的接口电路,并结合公用电话网中的数据通讯给出了具体的软件编程。
关键词:通讯;单片机;HT9200A;DTMF
分类号:TN915.03    文献标识:B    文章编号:1006-6977(2000)11-0028-02
 
    在水、电、煤气表的自动抄录和IC卡电话机的话费统计等分布式测控系统中,人们希望能在现有的公用电话网上进行适当的网络联接以实现数据的传输与控制。Holtek公司新近推出的DTMF电路HT9200A便是专用于电话联网控制的模块,它可以方便地与微控制器系统接口,以便组成智能型电话网络的测控系统。
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输入组合与输出频率
D4D3D2D1D0符号输出频率(HZ)
000000941+1633
000011697+1209
000102697+1336
000113697+1477
001004770+1209
001015770+1336
001106770+1477
001117852+1209
010008852+1336
010019852+1477
010100941+1336
01011*941+1209
01100#941+1477
01101A697+1633
01110B770+1633
01111C852+1633
11111DTMF结束-
2 接口电路
    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左右。
→ 
 

普通文章28课:单片机音乐汇编程序设计
普通文章27课:单片机的一些基本概念
普通文章26课:单片机矩阵式键盘接口技术
普通文章51单片机教程(从原理开始基于汇编)
普通文章1课:单片机概述
普通文章2课:8051单片机引脚介绍
普通文章3课:单片机存储器结构结构分析
普通文章4课:第一个单片机小程序
普通文章5课:单片机延时程序分析
普通文章6课:单片机并行口结构
普通文章7课:单片机的特殊功能寄存器
普通文章8课:单片机寻址方式与指令系统
普通文章9课:单片机数据传递类指令
普通文章10课:单片机数据传送类指令
普通文章11课:单片机算术运算指令
普通文章12课:单片机逻辑运算类指令
普通文章13课:单片机逻辑与或异或指令祥解
普通文章14课:单片机条件转移指令
普通文章15课:单片机位操作指令
普通文章16课:单片机定时器与计数器
普通文章17课:单片机定时器/计数器的方式控制
普通文章18课:单片机的中断系统
普通文章19课:单片机定时器、中断试验
普通文章20课:单片机定时/计数器实验
普通文章21课:单片机串行口介绍

电子器件 基础电路 单片机语言 了解单片机
PIC系列 ARM系列 AVR系列 单片机源码
单片机编程 设计方法 应用实例 Protel
PowerPCD 知识点 练习题 单片机应用
  • 上一篇文章:
  • 下一篇文章:
  • 更多精彩内容>>>

    普通文章电流单位
    普通文章功率单位
    普通文章什么是达林顿管?
    普通文章晶闸管的作用与原理

    学习单片机的必经之路——单片机之路,永久域名:www.mcuway.com