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

📄 jrmaincpu.asm

📁 用增强型单片机51RD2做的控制器
💻 ASM
📖 第 1 页 / 共 4 页
字号:

;       智能控制器主要功能:

;       1、在 DC600V 地面电源与列车连接后能够自动实现对列车正负线间及对
;          地间的绝缘检测。 (线间绝缘电阻 > 0.2M)

;       2、运行参数记录及数据存储:能够实现对 DC600V 列车库内整备电源送
;          电时间、断电时间、电压、电流、线路绝缘值、漏电电流值等运行、
;          安全参数实时检测、存储、调用。记录数据作为对现场作业控制、故障
;          分析的原始依据。
;
; TRULY LCD TYPE: MSP-G320240DBCW-21N
;
;
;******* 远程终端操作控制器功能码 ******************************
;
RecvFarFucCd32  EQU     32     ; 写系统复位
RecvFarFucCd31  EQU     31     ; 微波炉用

RecvFarFucCd30  EQU     30     ; 微波炉用
RecvFarFucCd29  EQU     29     ; 微波炉用

RecvFarFucCd28  EQU     28     ; 微波炉用
RecvFarFucCd27  EQU     27     ; 微波炉用

RecvFarFucCd26  EQU     26     ; 微波炉用
RecvFarFucCd25  EQU     25     ; 微波炉用

RecvFarFucCd24  EQU     24     ; 微波炉用
RecvFarFucCd23  EQU     23     ; 微波炉用

RecvFarFucCd22  EQU     22     ; 微波炉用
RecvFarFucCd21  EQU     21     ; 微波炉用

RecvFarFucCd20  EQU     20     ; 微波炉用
RecvFarFucCd19  EQU     19     ; 微波炉用

RecvFarFucCd18  EQU     18     ; 微波炉用
RecvFarFucCd17  EQU     17     ; 微波炉用

RecvFarFucCd16  EQU     16     ; 微波炉用
RecvFarFucCd15  EQU     15     ; 微波炉用

RecvFarFucCd14  EQU     14     ; 微波炉用
RecvFarFucCd13  EQU     13     ; 微波炉用

RecvFarFucCd12  EQU     12     ; 微波炉用
RecvFarFucCd11  EQU     11     ; 微波炉用

RecvFarFucCd10  EQU     10     ; 微波炉用
RecvFarFucCd09  EQU     09     ; 微波炉用

RecvFarFucCd08  EQU     08     ; 微波炉用
RecvFarFucCd07  EQU     07     ; 微波炉用

RecvFarFucCd06  EQU     06     ; 写用户密码
RecvFarFucCd05  EQU     05     ; 读用户密码

RecvFarFucCd04  EQU     04     ; 写系统密码
RecvFarFucCd03  EQU     03     ; 读系统密码

RecvFarFucCd02  EQU     02     ; 写系统时钟
RecvFarFucCd01  EQU     01     ; 读系统时钟

;
;******* SubCpu3 功能码定义(键盘模块)******************************
;
RecvCpu3Func08  EQU     08     ;
RecvCpu3Func07  EQU     07     ;
RecvCpu3Func06  EQU     06     ;
RecvCpu3Func05  EQU     05     ;
RecvCpu3Func04  EQU     04     ;
RecvCpu3Func03  EQU     03     ;
RecvCpu3Func02  EQU     02     ;
RecvCpu3Func01  EQU     01     ; 接收键值
;
SendCpu3Func08  EQU     08     ;
SendCpu3Func07  EQU     07     ;
SendCpu3Func06  EQU     06     ;
SendCpu3Func05  EQU     05     ;
SendCpu3Func04  EQU     04     ;
SendCpu3Func03  EQU     03     ;
SendCpu3Func02  EQU     02     ; 启动键盘操作
SendCpu3Func01  EQU     01     ; 停止键盘操作
;
;******* SubCpu2 功能码定义(调速模块) *******************************
;
RecvCpu2Func16  EQU     16     ;
RecvCpu2Func15  EQU     15     ;
RecvCpu2Func14  EQU     14     ;
RecvCpu2Func13  EQU     13     ;
RecvCpu2Func12  EQU     12     ;
RecvCpu2Func11  EQU     11     ;
RecvCpu2Func10  EQU     10     ;
RecvCpu2Func09  EQU     09     ;

RecvCpu2Func08  EQU     08     ;
RecvCpu2Func07  EQU     07     ;
RecvCpu2Func06  EQU     06     ;
RecvCpu2Func05  EQU     05     ;
RecvCpu2Func04  EQU     04     ;
RecvCpu2Func03  EQU     03     ;
RecvCpu2Func02  EQU     02     ; 接收 DTMF 状态
RecvCpu2Func01  EQU     01     ; 接收开关量状态
;
SendCpu2Func08  EQU     08     ; 步进电机停
SendCpu2Func07  EQU     07     ; 步进电机反转
SendCpu2Func06  EQU     06     ; 步进电机正转
SendCpu2Func05  EQU     05     ; 写开关量
SendCpu2Func04  EQU     04     ; 读开关量
SendCpu2Func03  EQU     03     ; 启动步进电机
SendCpu2Func02  EQU     02     ; 时钟设置
SendCpu2Func01  EQU     01     ; 地址设置
;
;******* SubCpu1 功能码定义(远程模块)******************************
;

RecvCpu1Func32  EQU     32     ;
RecvCpu1Func31  EQU     31     ;
RecvCpu1Func30  EQU     30     ;
RecvCpu1Func29  EQU     29     ;
RecvCpu1Func28  EQU     28     ;
RecvCpu1Func27  EQU     27     ;
RecvCpu1Func26  EQU     26     ; 接收远程显示板密码、操作代码、车次代码
RecvCpu1Func25  EQU     25     ; 接收远程显示板时钟

RecvCpu1Func24  EQU     24     ;
RecvCpu1Func23  EQU     23     ;
RecvCpu1Func22  EQU     22     ;
RecvCpu1Func21  EQU     21     ;
RecvCpu1Func20  EQU     20     ;
RecvCpu1Func19  EQU     19     ;
RecvCpu1Func18  EQU     18     ;
RecvCpu1Func17  EQU     17     ; 将接收下位机采集的 A/D 值装入 A/D 缓冲区

RecvCpu1Func16  EQU     16     ;
RecvCpu1Func15  EQU     15     ;
RecvCpu1Func14  EQU     14     ;
RecvCpu1Func13  EQU     13     ;
RecvCpu1Func12  EQU     12     ;
RecvCpu1Func11  EQU     11     ;
RecvCpu1Func10  EQU     10     ; 远程功能码
RecvCpu1Func09  EQU     09     ; 远程键盘控制
;
RecvCpu1Func08  EQU     08     ;
RecvCpu1Func07  EQU     07     ;
RecvCpu1Func06  EQU     06     ;
RecvCpu1Func05  EQU     05     ;
RecvCpu1Func04  EQU     04     ;
RecvCpu1Func03  EQU     03     ;
RecvCpu1Func02  EQU     02     ;
RecvCpu1Func01  EQU     01     ;
;
SendCpu1Func35  EQU     35     ; 绝缘检测不合格确认
SendCpu1Func34  EQU     34     ; 绝缘检测合格确认
SendCpu1Func33  EQU     33     ; 显示板密码错误确认
SendCpu1Func32  EQU     32     ; 显示板密码正确确认

SendCpu1Func31  EQU     31     ; 显示板时间确认
SendCpu1Func30  EQU     30     ; 写远程显示板数据

SendCpu1Func27  EQU     27     ; 写 A/D D/A 打印板数据 (打印数据)
SendCpu1Func26  EQU     26     ; 写 A/D D/A 打印板数据 (D/A数据)
SendCpu1Func25  EQU     25     ; 读 A/D D/A 打印板数据
SendCpu1Func24  EQU     24     ;
SendCpu1Func23  EQU     23     ;
SendCpu1Func22  EQU     22     ;
SendCpu1Func21  EQU     21     ;
SendCpu1Func20  EQU     20     ;
SendCpu1Func19  EQU     19     ; 远程操作错误
SendCpu1Func18  EQU     18     ; 远程操作正确
SendCpu1Func17  EQU     17     ; 向远程终端发送数据
SendCpu1Func16  EQU     16     ; 键盘确认代码
;
SendCpu1Func15  EQU     15     ; 继电器位控
SendCpu1Func14  EQU     14     ; 还未使用
SendCpu1Func13  EQU     13     ; 微波炉用
SendCpu1Func12  EQU     12     ; 微波炉用
SendCpu1Func11  EQU     11     ; 微波炉用
SendCpu1Func09  EQU     09     ; 微波炉用

SendCpu1Func08  EQU     08     ; 微波炉用
SendCpu1Func07  EQU     07     ; 微波炉用
SendCpu1Func06  EQU     06     ; 状态监视
SendCpu1Func05  EQU     05     ; 微波炉用
SendCpu1Func04  EQU     04     ; 微波炉用
SendCpu1Func03  EQU     03     ; 微波炉用
SendCpu1Func02  EQU     02     ; 时钟设置
SendCpu1Func01  EQU     01     ; 地址设置
;
;      *******  系统常量宏定义 ********
;

;********************************************************************
RCT0            EQU     0A1H    ; 0 区读控制字(AT24C256)
WCT0            EQU     0A0H    ; 0 区写控制字(AT24C256)
;********************************************************************
FarPcAdr        EQU     0FFH    ; 远程控制PC地址
FarShowAdr      EQU      34     ; 远程显示板地址
SelfAddr        EQU     00H     ; 本机地址
CurrentAdr      EQU     0A5H    ; 通用广播地址
DataHead        EQU     0AAH    ; 数据贞头
RecvNum         EQU     32      ; 接收一条记录的最大字节数
SendNum         EQU     31      ; 发送一条记录的最大字节数
RecvTime        EQU     2       ; 接收一条记录的最大延时(秒)
BaudVal         EQU     181     ; 波特率 2400
StrtVal         EQU     90      ;
Baud            EQU     0FDH    ; Baud:4800=0FAH,9600=0FDH (XT=11.059MHZ)


;********************************************************************
WDTSFR          EQU     0A6H    ; 看门狗特殊寄存器
StartWdt        EQU     1EH     ; 起动看门狗定时器
ResetWdt        EQU     0E1H    ; 喂狗
;********************************************************************
;
SysCloseTime    EQU     15      ; 系统关闭时间(分)
CloselightTime  EQU     15      ; 屏幕保护时间(分)
SPEED3          EQU     240     ;
SPEED2          EQU     20      ;
SPEED1          EQU     20      ;
PassNum         EQU     04H



;
XWK             EQU     16
YW7             EQU     15
YW6             EQU     14
YW5             EQU     13
YW4             EQU     12
YW3             EQU     11
YW2             EQU     10
YW1             EQU     09
;
TSK             EQU     08
;
ZW7             EQU     07
ZW6             EQU     06
ZW5             EQU     05
ZW4             EQU     04
ZW3             EQU     03
ZW2             EQU     02
ZW1             EQU     01

;
;************** 最小绝缘电阻 ****************************************
;
;XjJcDz          EQU     250     ; 线间基础电阻 (由于正负线间并有两个电压表其电阻值为250K)

FjYdDzZdzH      EQU     01H     ; 负极与地电阻最小值(100K)
FjYdDzZdzL      EQU     64H

ZjXdDzZdzH      EQU     01H     ; 正极与地电阻最小值(100K)
ZjXdDzZdzL      EQU     64H

ZfXjDzZdzH      EQU     00H     ; 正负线间电阻最小值(10K)
ZfXjDzZdzL      EQU     0AH
;
;************** 量程电位域值 ****************************************
;
LcDwYz2H        EQU     27H     ; 270FH = 9999
LcDwYz2L        EQU     0FH

LcDwYz1H        EQU     03H     ; 03E7H = 999
LcDwYz1L        EQU     0E7H

;
;************** 保护电流域值 ****************************************
;
;
;************** 电压电流域值 ****************************************
;
FjYdDyZdz       EQU     10      ; 负极与地电压最大值(1000V)
ZjXdDyZdz       EQU     10      ; 正极与地电压最大值(1000V)
ZfXjDyZdz       EQU     06      ; 正负线间电压最大值(650V)

MaxDlH          EQU     02H     ; 最大电流高8位 700A
MaxDlL          EQU     0BCH    ; 最大电流低8位

MaxDyH          EQU     02H     ; 最大电压高8位 650V
MaxDyL          EQU     8AH     ; 最大电压低8位

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



SRom_Dat        EQU     P1.7    ; 数据线对应端口
SRom_Clk        EQU     P1.6    ; 时钟线对应端口

RxdPortB        EQU     P3.3    ; 通信接收口B (INT1)
TxdPortB        EQU     P3.6    ; 通信发送口B

RxdPortA        EQU     P3.2    ; 通信接收口A (INT0)
TxdPortA        EQU     P2.2    ; 通信发送口A

FmqCtrl         EQU     P1.5    ; 蜂鸣器控制
ComCtrl         EQU     P3.7    ; 通信口方向
TimeRst         EQU     P1.3    ; HT1380 复位
TimeDat         EQU     P1.2    ; HT1380 IO口
TimeClk         EQU     P1.1    ; HT1380 时钟
SRamDat         EQU     P1.7    ; AT24C256 IO口
SRamClk         EQU     P1.6    ; AT24C256 时钟
FqmCtrl         EQU     P1.5    ; 蜂鸣器控制
LcdComOrDat     EQU     P2.6    ; 指令或数据地址
TelBell         EQU     P1.0    ; 电话振铃检测
LcdPort         EQU     P0      ; LCD 数据接口
RelayIn         EQU     P1.4    ; 无源接地继电器吸合输入检测

CloselightCtrl  EQU     P2.7    ; 屏幕保护控制
LcdAddr         EQU     P2.6    ; LCD 控制接口
LcdCs           EQU     P2.5    ; LCD 控制接口
LcdRead         EQU     P2.4    ; LCD 控制接口
LcdWrite        EQU     P2.3    ; LCD 控制接口

SerialDat       EQU     P2.1
SerialClk       EQU     P2.0

;************** Buffer **********************************************
;
SpStart         EQU     0E0H    ; 系统堆栈换冲区(32Byte)
TempBuf         EQU     0A0H    ; 临时数据缓冲区(64Byte)
TimeBuf         EQU     098H    ; 时钟数据缓冲区(08Byte)
Int1Buf         EQU     090H    ; 通信接收缓冲区(08Byte)



;************** Clock ***********************************************
Year            EQU     7FH     ;
Week            EQU     7EH     ;
Month           EQU     7DH     ;
Day             EQU     7CH     ;
Hour            EQU     7BH     ;
Min             EQU     7AH     ;
Sec             EQU     79H     ;
Time            EQU     78H     ;

⌨️ 快捷键说明

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