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

📄 daa.asm

📁 盾安多连机程序 汇编语言 程序通过编译 调试 可直接用
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;本程序为海尔的主板程序
;MCU=MOTO68HC08SR12
;----------------------------------

;-------include section----------------
;应用的头文件
;$Include 'sr12regs.inc'

PTA     EQU  $0000     ; Ports and data direction
PTB     EQU  $0001
PTC     EQU  $0002
PTD     EQU  $0003
DDRA    EQU  $0004
DDRB    EQU  $0005
DDRC    EQU  $0006
DDRD    EQU  $0007
;
LEDA    EQU  $000C
LEDC    EQU  $000D    ; Port pull-up enables
AMCR    EQU  $000E
AMGCR   EQU  $000F
AMSCR   EQU  $0010    ; SPI (Syncronous communications)
SCC1    EQU  $0013    ; SPI (Asyncronous communications)
SCC2    EQU  $0014
SCC3    EQU  $0015
SCS1    EQU  $0016
SCS2    EQU  $0017
SCDR    EQU  $0018
SCBR    EQU  $0019
KBSCR   EQU  $001a
KBIER   EQU  $001b
INTSCR2  EQU $001c    ;
CONFIG2  EQU $001d    ;
INTSCR1  EQU $001e    ; System configuration
CONFIG1  EQU $001f
T1SC    EQU  $0020    ; Timer 1
T1CNTH  EQU  $0021
T1CNTL  EQU  $0022
T1MODH  EQU  $0023
T1MODL  EQU  $0024
T1SC0   EQU  $0025
T1CH0H  EQU  $0026
T1CH0L  EQU  $0027
T1SC1   EQU  $0028
T1CH1H  EQU  $0029
T1CH1L  EQU  $002a
T2SC    EQU  $002b    ; Timer 2
T2CNTH  EQU  $002c
T2CNTL  EQU  $002d
T2MODH  EQU  $002e
T2MODL  EQU  $002f
T2SC0   EQU  $0030
T2CH0H  EQU  $0031
T2CH0L  EQU  $0032
T2SC1   EQU  $0033
T2CH1H  EQU  $0034
T2CH1L  EQU  $0035
PTCL    EQU  $0036    ; Phase lock loop (for crystals)
PBWC    EQU  $0037
PMSH    EQU  $0038
PMSL    EQU  $0039
PMRS    EQU  $003A
PMDS    EQU  $003B
TBCR    EQU  $0046
MMADR   EQU  $0048
MMCR1   EQU  $0049
MMCR2   EQU  $004A
MMSR    EQU  $004B
MMDTR   EQU  $004C
MDDRR   EQU  $004D
MMCRDR  EQU  $004E
MMFDR   EQU  $004F
PWMCR   EQU  $0051
PWMCCR  EQU  $0052
PWMDR0  EQU  $0053
PWMDR1  EQU  $0054
PWMDR2  EQU  $0055
PWMPCR  EQU  $0056
ADSCR   EQU  $0057
ADCLK   EQU  $0058
ADRH0   EQU  $0059
ADRL0   EQU  $005A
ADRL1   EQU  $005B
ADRL2   EQU  $005C
ADRL3   EQU  $005D
ADASCR  EQU  $005E   ;

SBSR    EQU  $fe00    ; System integration
SRSR    EQU  $fe01
SBFCR   EQU  $fe03
INT1    EQU  $fe04    ; Interrupt status
INT2    EQU  $fe05
INT3    EQU  $fe06
FLCR    EQU  $fe08
FLBPR   EQU  $fe09
BRKH    EQU  $FE0C
BRKL    EQU  $fe0D
BRKSCR  EQU  $fe0E
LVISR   EQU  $fe0F
MOR     EQU  $ff80
COPCTL  EQU  $ffff    ; COP (Computer operating properly) control

;********************************************
;$Include 'haier.inc'
;常数定义
IOStart      EQU  $0000
RamStart     EQU  $0060
RomStart     EQU  $C000
VectorStart  EQU  $FFDA
;-----
TRUE            EQU 1
FALSE           EQU 0
;---A2D通道定义
CH_To          EQU 0  ;;To
;CH_Tr          EQU 3  ;;Tr
;CH_Te          EQU 4   ;Te
;CH_Ta1         EQU 5   ;Ta1
;CH_Ta2         EQU 6   ;Ta2
;CH_DY          EQU 2
CH_GG          EQU 7
TEMPT_MIN0     EQU $4A
TEMPT_MAX0     EQU $F9
TEMPT_MIN      EQU $30
TEMPT_MAX      EQU $E2
;
PageSize        equ 8T
mem_byte        equ 48T;32 ;should be 8*n
FaxAddr         equ 50H ;AFTER ROLC,IS A0H
PrgAddr         equ 00H
;ram变量定义
;-----------RAM AREA DEFINE---------------
            org RamStart
TX_BUFF     RMB 16T
RX_BUFF     RMB 16T
CRC_BUFF    RMB 1
;--------timer ram define-------------------
T_t         RMB 1                               ;T_t
T_AD1S      RMB 1
T_TX200MS   RMB 1
T_RecErr    RMB 1
T_REC50MS   RMB 1
TIMING_ONH  RMB 1
TIMING_ONM  RMB 1
TIMING_OFFH RMB 1
TIMING_OFFM RMB 1
;T3_COM1     RMB 2
;T3_COM2     RMB 2
;T3_COM3     RMB 2
;T3_COM4     RMB 2
;COM_LJ1     RMB 2
;COM_LJ2     RMB 2
;COM_LJ3     RMB 2
;COM_LJ4     RMB 2
;COM_LJ0     RMB 2
NEW0        RMB 1

T_1S        RMB 1
T_1M        RMB 1
T_LFP       RMB 1       ;内风机,冷却风机,水泵的开启间隔
DELAY_TIME  RMB 1
;--------counter ram define-----------------
CNT_165     RMB 1
;--------Tx AND Rx BUFF--------
RX_DADT     RMB 1
RX_COM     RMB 1
CNT_TX     RMB 1
CNT_RX     RMB 1
TX_NUM     RMB 1
RX_NUM     RMB 1
CNT_COM    RMB 1
;--------temperature ram define--------------
EC08_BUF  RMB 1
TEMP_ToZ RMB 1
TEMP_Tr RMB 1
TEMP_Te RMB 1
TEMP_Ta1 RMB 1
TEMP_Ta2 RMB 1
;TMPT_SET  RMB 1

;--------flag ram define--------------------
FLAG0         RMB 1
F_ONOFF       EQU 7
F_PROBE_FAIL  EQU 2
F_TIME_ON     EQU 6
F_TIME_OFF    EQU 5
;
FLAG1         RMB 1
F_STOP        EQU 7       ;FLAG1:7
B_KEYR0       EQU 6       ;FLAG1:6
F_STORE_CLK   EQU 5       ;FLAG1:5
F_STORE_E2P   EQU 4       ;FLAG1:4
F_SELF        EQU 3
F_SELF_START  EQU 2
;
FLAG2         RMB 1
F_TXOK        EQU 7       ;FLAG2:7
F_RXOK        EQU 6       ;FLAG2:6
F_TX          EQU 5           ;
F_RX          EQU 4
F_TXRX        EQU 3

R8            RMB 1
FLAGS0        RMB 1
;****************************
T_COM1   RMB  2
T_COM2   RMB  2
FDAN0    RMB  1
K_QQ     RMB  1
K_yd     RMB  1
FDAN     RMB  1
OUT1     RMB  1
OUT2    RMB  1
FDAN3    RMB  1
SL_JC    RMB  1
FDAN1    RMB  1
FDAN2    RMB  1
RX_CNT   RMB  1
;--------work ram define--------------------

K1_165_BUF RMB 1
K2_165_buf  RMB 1


;KEY_QZ RMB 1
JFLAG RMB 1
TIMES_DL RMB 1
T_MS   RMB 1
T3_COM1 RMB 2
TIMES_PQ RMB 1

FLAG3 RMB 1
;TEMP_Ta1 RMB 1
XXIN    RMB 1
XXTIME  RMB 1
FLAGX   RMB 1
T_PL    RMB 1
TIMES_PL   RMB 1
TIMES_PH  RMB 1
FLAG_CS    RMB 1
FGZDY  RMB 1

K22_165    RMB  1
TEMP_Ts    RMB 1
GZDY       RMB 1
flagg     RMB 1
POWER_M   EQU 0
FLAG       RMB 1
KEY_Q      EQU  7
POWER      EQU  0
FD_RUN     EQU  6
;FIRST      EQU 5

FLAG4          RMB 1
ERR_VALUE1     RMB 1
;ERR_VALUE2     RMB 1
;ERR_VALUE3     RMB 1
;ERR_VALUE4     RMB 1
;ERR_VALUE5     RMB 1
ERR_PH4        EQU 7;0
ERR_PH3        EQU 5;2
ERR_PH2        EQU 3;7
ERR_PH1        EQU 1;5
ERR_WAT        EQU 3;7
ERR_FAN        EQU 1;5
ERR_PL4        EQU 6;1
ERR_PL3        EQU 4;3
ERR_PL2        EQU 2;6
ERR_PL1        EQU 0;4
ERR_3PH        EQU 2;6
ERR_TMP        EQU 0;4

FLAG6              RMB 1
AD_CHANAL          RMB 1
FLAG5              RMB 1
;SETEMP_H           RMB 1
;SETEMP_C           RMB 1
MODE             RMB 1
K1_165      DS 1
K2_165      DS 1
WORN       DS  1;回风温度
FLAG7      DS  1;设定温度

F_COMP1    EQU 7
F_COMP2    EQU 6
F_COMP3    EQU 5
F_COMP4    EQU 4
F_PUMP    EQU 3
F_EHEAT1    EQU 2
F_EHEAT2    EQU 1
;
DS_SECOND   RMB 1
DS_MINUTE   RMB 1
DS_HOUR     RMB 1
DS_DATE     RMB 1
DS_MONTH    RMB 1
DS_DAY      RMB 1
DS_YEAR     RMB 1
R0          RMB 1
R2          RMB 1

;-----------
E2P_ADDR    RMB 1
MEM_BUFF0 RMB 1
SAX1   RMB 1 ;SA../8/7/6/5/4/3/2/1
SAX2   RMB 1 ;SA../././././././10/9
;
PC01   RMB 1
PC02   RMB 1
PC03   RMB 1
PC04   RMB 1
PC05   RMB 1
PC06   RMB 1
PC07   RMB 1
PC08   RMB 1

SP01   RMB 1
SP02   RMB 1
SP03   RMB 1
SP04   RMB 1
SP05   RMB 1
SP06   RMB 1
SP07   RMB 1
SP08   RMB 1
;TMPT_SETH RMB 1
;TMPT_SETC RMB 1
;
SC01   RMB 1
SC02   RMB 1
SC03   RMB 1
SC04   RMB 1
SC05   RMB 1
SC06   RMB 1
SC07   RMB 1
SC08   RMB 1
;
EP01   RMB 1
EP02   RMB 1
EP03   RMB 1
EP04   RMB 1
EP05   RMB 1
EP06   RMB 1
EP07   RMB 1
EP08   RMB 1

EC01   RMB 1
EC02   RMB 1
EC03   RMB 1
EC04   RMB 1
EC05   RMB 1
EC06   RMB 1
EC07   RMB 1
EC08   RMB 1
;
HF01   RMB 1
HF02   RMB 1
HF03   RMB 1
HF04   RMB 1
HF05   RMB 1
HF06   RMB 1
HF07   RMB 1
;MODE   RMB 1
;
PAGE   RMB 1
R7     RMB 1
NEW1        RMB 1


;*********************
;FDAN0    RMB 1

SWFJYS   RMB 1
SB_20S   RMB 1
SA04     RMB 1
f_ys     RMB 1
GYJ_YS1  RMB 1
KYJ_YS1  RMB 1
KYJ_YS2  RMB 1
GYJ_YS2  RMB 1
QID_YS1  RMB 1
;QID_YS2  RMB 1
T_GSB    RMB 1
GWFJ     RMB 1
KFYS     RMB 1
YS1_5S   RMB 1
;YS2_5S   RMB 1
T_STF    RMB 1
HF08     RMB 1
FD_YX    RMB 1
PH2_TIME RMB 1
PL2_TIME RMB 1
TEMP_ZH  RMB 1
TEMP_WH  RMB 1
T_5M     RMB 1
RE_3M    RMB 1
GSTF     RMB 1
TEMP_PQ1 RMB 1
TEMP_PQ2 RMB 1
CS_WFJ_YS RMB 1
CS_COM1   RMB 1
CS_COM2   RMB 1
CS_COM3   RMB 1
ADDR      RMB 1
CS_YS     RMB 1
CX_COMMAND RMB 1

TEMP_TO   RMB 1
TEMP_WP1  RMB 1
TEMP_WP1C RMB 1
TEMP_WP2  RMB 1
TEMP_WP2C RMB 1
COM_WORKING2  EQU  7
COM_WORKING1  EQU  6
COM_WORKING   EQU  5
f_comm_err EQU 5
ST1           EQU 0
ST2           EQU 0
comp1         EQU  0
comp2         EQU  0
;PUMP          EQU 0
WFJ       EQU 0
ph1_on   EQU 0
ph2_on   EQU 1
SLKG     EQU 1
;-----------------------------
TIMEOUT1 RMB 1   ; Allows three timeout routines to be called each of which
;-----口定义----------------------
LFAN    EQU 2                           ;PTD2,冷却风机
PUMP    EQU 1                           ;PTD1,冷却水泵
FAN     EQU 3                           ;PTC3,室内风机
COMP   EQU 0;pd7;6                     ;PA6,压缩机1
;-----------------
SCL   EQU 5;C5
SDA   EQU 4;C4
SDA_DR EQU 4;DDRC4
;----------------
LEDRUN  EQU 1;C1
LEDERR  EQU 2;C2
LEDTXRX   EQU 7;A7
;--------
DSCLK    EQU 0;PTC0
DSRST    EQU 5;PTD5
DSDATA   EQU 6;PTD6
DS_IO    EQU 6;DDRD:6
ENTXRX   EQU 0;PTD:4
;--------
JMP1    EQU 6;A6
JMP2    EQU 7;D7
;---------
SH165_LD    EQU 1;B4
SH165_CLK   EQU 2;B5
SH165_QH    EQU 3;B6
T_1MS       RMB 1
AD_01     RMB 1
AD_02     RMB 1
AD_03     RMB 1
AD_04     RMB 1
T0_COM1     RMB 1

T_DELAY1    RMB 1
T_DELAY2    RMB 1
T_DELAY3    RMB 1
;T_10     RMB 1
;T_PH1     RMB 1

T_PL1     RMB 1

COM_N     RMB 1
COM_N_SET   RMB 1
;T_LFP1     RMB 1
com_1     RMB 1

err_com  RMB 1
FD_T1   RMB 1

COM_OPEN_BUF  RMB 1
TT_COM        RMB 1
NEW2          RMB 1
T_ROOM       RMB 1
T_TUR1       RMB 1
T_TUR2       RMB 1
T_TUR3       RMB 1
T_TUR4       RMB 1
T_3S          RMB 1
T15S          RMB 1
ERR_TIME      RMB 1
EC05_BUF      RMB 1
T_CO_LM0      RMB 1
T_CO_LM1      RMB 1
T_CO_LM2      RMB 1
T_CO_LM3      RMB 1
K1_165_DAT    RMB 1
K2_165_DAT    RMB 1
K165_N        RMB 1
 ;K1_165_BUF    rmb 1

T_LFP3        RMB 1
T_LFP4        RMB 1
T_LFP6        RMB 1
;T_1MS          RMB 1
;TEMP_Te  RMB   1
;TEMP_To  RMB 1
;TIMES_PQ RMB 1
;COM_CON  RMB 1
;TEMP_Ta2 RMB 1
CS_JG    RMB 1
T_15S    RMB 1
TCS_8  RMB 1
COMP_TIME RMB 1
PUMP_T   RMB 1
CV_OFF EQU 5
FJ      EQU 3
XX1   EQU 4 ;3
XX2   EQU 5 ;0
STF   EQU 4

FIRST_RUN EQU 1
TF_3S   RMB 1
PH_TIME RMB 1
COMP_T  RMB 1
;TIMES_PH RMB 1
T_PH     RMB 1
T_PH_1   RMB 1
PL_TIME  RMB 1
T_PL_1   RMB 1

T_WAT  RMB 1
T_PQ  RMB 1
T_PQ_1 RMB 1
T_PQ_2  RMB 1
T_LL  RMB 1
GLZ  RMB 1
T_60S  RMB 1
HOU_3S  RMB 1
CS_60S  RMB 1
YAJI_YX RMB 1
DY_MIN  EQU $82
DY_MAX  EQU $B4
DL_MIN  EQU $50
DL_MAX  EQU $BB
t_44m    rmb 1
TEMP_WP3 RMB 1
TEMP_PQ3 RMB 1
T_ROOMDL RMB 1
T_ROOMDY RMB 1
DY_10S   RMB 1
T_DL_1  RMB 1
T_DL   RMB 1
FD_L10S RMB 1

;--------------code section--------------------
;program
;---------------------------------
    org RomStart
;--------------------------------
RESET:
            NOP
            NOP
;-------disable interrupt-----------------------
            SEI                 ; DISABLE interrupts to happen
;----------stack ini-----------------------------
            LDHX #$260
            TXS
;----------system initialize--------------------
            STA  COPCTL
            MOV #%00000010,INTSCR2
            CLRH
            CLRX
            clra                ; Initialize A,X so that interrupt
            clrx                ; processing doesn't stop with
            MOV   #$88,CONFIG1      ;系统状态寄存器初始化;89禁止WDT,88允许
            MOV   #$10,CONFIG2      ;11

;----------IO dir and data initialize------
          MOV #%00000000,PTA
          MOV #%11011111,DDRA             ;
          MOV #%00000000,PTB
          MOV #%00000111,DDRB
          MOV #0,MMCR1
          MOV #%00000000,PTC
          MOV #%00111111,DDRC
          MOV #%00000001,PTD
          MOV #%11100110,DDRD

⌨️ 快捷键说明

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