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

设为首页

加入收藏

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

MT8880的收发程序(8051系列)

 

 

 

说明 : 单片机的 P0.0-P0.3 分别接入 8880 的 D0-D3; 单片机的 P0.4-P0.7 分别接 8880 的 RS0\CS\R/W\Ø2.( 其中 Ø2 是由时钟和 P0.7 共同控制的 )

 

                                ORG    0000H

                        AJMP    MAIN

                                :

                                :

;********************

;*   8880 初始化     *

;********************

MAIN:            MOV    A,    #90H

                        MOV    P0,    A                ; 写 8880CRA

                        MOV    P0,    A                ; 写 8880CRA

                        MOV    A,    #98H

                        MOV    P0,    A                ; 写 8880CRA

                        MOV    A,    #90H

                        MOV    P0,    A                ; 写 8880CRB

                        MOV    A,    #94H

                        MOV    P0,    A                ; 写 8880CRA,8880 模式 1 为 DTMF,IRQ

                                :

                                :

;****************

;*   接收程序   *

;****************

                        MOV    R1,    #0

                        MOV    R0,    #10H

LOOP1:        MOV    A,    #0FFH

                   MOV    P0,    A

                        SETB    P0.7

                        SETB    P0.4

                        CLR    P0.5

                        SETB    P0.6

                        MOV    A,    P0            ; 读 8880 状态寄存器

                        JNB    ACC.2,    LOOP1

                        CLR    P0.4

                        MOV    A,    P0            ; 读 8880 接收数据寄存器

                        ANL    A,    #0FH            ; 屏蔽高四位

                        MOV    @R0,    A

                        INC    R0

                        INC    R1

                        CJNE    R1,    #07H,    LOOP1

                                :

                                :

;****************

;*   发码程序   *

;****************

                        MOV    R0,    #10H

                        MOV    R1,    #7

                        MOV    A,    #9DH            ; 写 8880CRA

                        MOV    P0,    A

                        MOV    A,    #90H

                        MOV    P0,    A                ; 写 8880CRB,8880 模式 2 为 TONE,DTMF,IRQ,BURST

LOOP2:        MOV    A,    @R0

                        ORL    A,    #0F0H

                        ANL    A,    #8FH

                         MOV    P0,    A                ; 发送数据

                        MOV    A,    #0FFH

                        MOV    P0,    A

                        SETB    P0.7

                        SETB    P0.4

                        CLR    P0.5

                        SETB    P0.6

LOOP3:        MOV    A,    P0                ; 读 8880 状态寄存器

                        JNB    ACC.1,    LOOP3

                        INC    R0

                        DJNZ    R1,    LOOP2

                                    :

                                    :

Note: 以上程序未经调试 , 请注意 CS 状态 .MT8880 的资料请参阅 DTMF信号发送/接收电路芯片 (

MT8880的收发程序(8051系列)

 

说明 : 单片机的 P0.0-P0.3 分别接入 8880 的 D0-D3; 单片机的 P0.4-P0.7 分别接 8880 的 RS0\CS\R/W\Ø2.( 其中 Ø2 是由时钟和 P0.7 共同控制的 )

 

                                ORG    0000H

                        AJMP    MAIN

                                :

                                :

;********************

;*   8880 初始化     *

;********************

MAIN:            MOV    A,    #90H

                        MOV    P0,    A                ; 写 8880CRA

                        MOV    P0,    A                ; 写 8880CRA

                        MOV    A,    #98H

                        MOV    P0,    A                ; 写 8880CRA

                        MOV    A,    #90H

                        MOV    P0,    A                ; 写 8880CRB

                        MOV    A,    #94H

                        MOV    P0,    A                ; 写 8880CRA,8880 模式 1 为 DTMF,IRQ

                                :

                                :

;****************

;*   接收程序   *

;****************

                        MOV    R1,    #0

                        MOV    R0,    #10H

LOOP1:        MOV    A,    #0FFH

                   MOV    P0,    A

                        SETB    P0.7

                        SETB    P0.4

                        CLR    P0.5

                        SETB    P0.6

                        MOV    A,    P0            ; 读 8880 状态寄存器

                        JNB    ACC.2,    LOOP1

                        CLR    P0.4

                        MOV    A,    P0            ; 读 8880 接收数据寄存器

                        ANL    A,    #0FH            ; 屏蔽高四位

                        MOV    @R0,    A

                        INC    R0

                        INC    R1

                        CJNE    R1,    #07H,    LOOP1

                                :

                                :

;****************

;*   发码程序   *

;****************

                        MOV    R0,    #10H

                        MOV    R1,    #7

                        MOV    A,    #9DH            ; 写 8880CRA

                        MOV    P0,    A

                        MOV    A,    #90H

                        MOV    P0,    A                ; 写 8880CRB,8880 模式 2 为 TONE,DTMF,IRQ,BURST

LOOP2:        MOV    A,    @R0

                        ORL    A,    #0F0H

                        ANL    A,    #8FH

                         MOV    P0,    A                ; 发送数据

                        MOV    A,    #0FFH

                        MOV    P0,    A

                        SETB    P0.7

                        SETB    P0.4

                        CLR    P0.5

                        SETB    P0.6

LOOP3:        MOV    A,    P0                ; 读 8880 状态寄存器

                        JNB    ACC.1,    LOOP3

                        INC    R0

                        DJNZ    R1,    LOOP2

                                    :

                                    :

Note: 以上程序未经调试 , 请注意 CS 状态 .MT8880 的资料请参阅 DTMF信号发送/接收电路芯片

→ 
 

普通文章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