⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gb_bh.asm

📁 一、 模块功能简介 &nbsp &#1048698 支持串口通信与电力线载波通信之间的转发; &nbsp &#1048698 ZF3106串口‐载波通讯模块可以完成载波信道到TTL串口
💻 ASM
字号:
;************************************************************
;文档类型: 原代码 
;项目编号: 
;文档编号: 
;修订版本: 
;生成日期: 
;文档作者: 
;审    核: 
;************************************************************
;相关文档: 
;文档编号      
;************************************************************
;修订说明
;修订版本
;************************************************************
$INCLUDE	(RAML128.INC)
$INCLUDE	(PL3105.INC)
$INCLUDE	(IO.INC)

CODE_REG	SEGMENT CODE
RSEG		CODE_REG
PUBLIC          GB_BH
EXTRN    CODE   (CLR_ZB)
;--------------------------------------------------------------
;强制键按下时通过载波发送本表表号
GB_BH:
         NOP
         NOP
         NOP
         MOV	R0,#ZB_OK		
	 MOV	A,@R0
	 CJNE	A,#'O',GB_BH_RET   ; 07-3-23 LIHENG 必须有载波命令才可载波响应
         JB     READ_BH,GB_BH_RET  ; 07-3-23 LIHENG 必须短接才可载波响应
         CALL   CLR_ZB           ;清载波缓存
         MOV    ZB_09H,#09H
         MOV    ZB_AFH,#0AFH
                  
         MOV    R0,#TAR_ADDR0    ;集中器地址
         MOV    R5,#3
GB_BH_ADDR:                 
         MOV    A,#0BBH
         MOV    @R0,A
         INC    R0
         DJNZ   R5,GB_BH_ADDR
         
         MOV    ZB_CTR,#81H       ;控制码
         
         MOV    ZB_L,#12          ;数据域长度
         MOV    FS_L,#21          ;发送数据长度
         MOV    FS_JYL,#17        ;校验数据长度
         
         MOV    ZB_DI0,#32H
         MOV    ZB_DI1,#0C0H       ;标识码
         
         MOV    R0,#ZB_BUF2        ;主叫表号
         MOV    R1,#BH_0
         MOV    R5,#3
GB_BH_ADDR0:
         MOV    A,@R1
         MOV    @R0,A
         INC    R0
         INC    R1
         DJNZ   R5,GB_BH_ADDR0
         
         MOV    ZB_BUF5,B_STATE     ;继电器状态
         
         MOV    R0,#ZB_BUF6         ;表号
         MOV    R1,#BH_0
         MOV    R5,#6
GB_BH_ADDR1:
         MOV    A,@R1
         MOV    @R0,A
         INC    R0
         INC    R1
         DJNZ   R5,GB_BH_ADDR1
         
         MOV    R0,#TAR_ADDR0        ;数据校验
         MOV    R6,#0
         MOV    R7,#0
GB_ZB_JY0:                  
         MOV    A,@R0
         INC    R0
         ADD    A,R6
         MOV    R6,A
         MOV    A,R7
         ADDC   A,#0
         MOV    R7,A
         DJNZ   FS_JYL,GB_ZB_JY0
         MOV    A,R6
         MOV    @R0,A              ;存低字节数据校验
         INC    R0
         MOV    A,R7               ;存高字节数据校验
         MOV    @R0,A
         MOV    A,FS_L
         ADD    A,#2               ;多发送2字节
         MOV    FS_L,A
         
         JB      READ_BH,GB_BH_RET       ; 07-3-23 LIHENG 必须短接才可载波响应
         
         MOV     EIE,#1
         
         MOV     EXT_CFG,#01H            ;//070131, 置位 PLM_SSC ,同时使其他位为0
        ; SETB    PLM_SSC                ;//防止误出现红外使能,是串口0无法工作
         SETB    PLM_RS
         MOV     PLM_RS0,#'F'
GB_BH_RET:         
         MOV     HW_OK,#0
         MOV     ZB_HW,#0
         RET
         
         END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -