📄 cmd3.lst
字号:
00192 movf FILE1, W
00193 sublw LIT1
00194 btfss STATUS, Z
00195 call WHERE
00196 endm
00197 ; *****************************************************************************
00198
00199 ; *****************************************************************************
00200 movff macro HERE, THERE
00201 movf HERE, W
00202 movwf THERE
00203 endm
00204 ; *****************************************************************************
00205
00206 ; *****************************************************************************
MPASM 5.20 CMD3.ASM 11-3-2008 15:53:43 PAGE 5
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00207 movlf macro DAT, THERE
00208 movlw DAT
00209 movwf THERE
00210 endm
00211 ; *****************************************************************************
00212
00213 ; *** Add Literal to File *****************************************************
00214 addlf macro LIT1, FILE1, DIR
00215 movlw LIT1
00216 addwf FILE1, DIR
00217 endm
00218 ; *****************************************************************************
00219
00220 ; *** Subtract Literal from File **********************************************
00221 sublf macro LIT1, FILE1, DIR
00222 movlw LIT1
00223 subwf FILE1, DIR
00224 endm
00225 ; *****************************************************************************
00226
00227 ; *** Branch if Carry *********************************************************
00228 brc macro WHERE
00229 btfsc STATUS, C
00230 goto WHERE
00231 endm
00232 ; *****************************************************************************
00233
00234 ; *** Branch if No Carry ******************************************************
00235 brnc macro WHERE
00236 btfss STATUS, C
00237 goto WHERE
00238 endm
00239 ; *****************************************************************************
00240
00241 ; *** OR file w/ file *********************************************************
00242 iorff macro FILE1, FILE2, DIR
00243 movf FILE2, W
00244 iorwf FILE1, DIR
00245 endm
00246 ; *****************************************************************************
00247
00248
00004 #include user_mac.inc ; Bring in application specific instructions
00001 #define dvron bsf PORTB, 3
00002 #define dvroff bcf PORTB, 3
00003
00004
00005 ; *****************************************************************************
00006 txdali macro MYREGH, MYREGL
00007 movff MYREGH, DALI_H
00008 movff MYREGL, DALI_L
00009 call SendData
00010 endm
MPASM 5.20 CMD3.ASM 11-3-2008 15:53:43 PAGE 6
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00011 ; *****************************************************************************
00012
00013
00014 ; *****************************************************************************
00015 rxdali macro
00016 call RecvData
00017 endm
00018 ; *****************************************************************************
00019
00020
00021 ; *****************************************************************************
00022 tx macro MYREG
00023 movff MYREG, TXREG
00024 endm
00025 ; *****************************************************************************
00026
00027
00028 ; *****************************************************************************
00029 delay macro MYLIT
00030 movlf high MYLIT, TMR1H
00031 movlf low MYLIT, TMR1L
00032 call DelayCyclesT1
00033 endm
00034 ; *****************************************************************************
00035
00036
00037 ; *****************************************************************************
00038 delayf macro MYFILE_H, MYFILE_L
00039 movff MYFILE_H, TMR1H
00040 movff MYFILE_L, TMR1L
00041 call DelayCyclesT1
00042 endm
00043 ; *****************************************************************************
00044
00045
00046 ; *** Set DALI Bus High *******************************************************
00047 outhi macro
00048 bcf PORTB, 4 ; Turn off clamp
00049 goto $ + 1
00050 bsf PORTB, 5 ; Turn on output
00051 ; goto $ + 1
00052 ; goto $ + 1
00053 endm
00054 ; *****************************************************************************
00055
00056
00057 ; *** Set DALI Bus Low ********************************************************
00058 outlo macro
00059 bcf PORTB, 5 ; Turn off output driver
00060 goto $ + 1 ; Wait a little for gate discharge
00061 bsf PORTB, 4 ; Turn on clamp
00062 ; goto $ + 1
00063 endm
MPASM 5.20 CMD3.ASM 11-3-2008 15:53:43 PAGE 7
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00064 ; *****************************************************************************
00065
00066
00067 ; *** Emergency Shutdown ******************************************************
00068 esdwn macro WHERE
00069 bcf PORTB, 3 ; Turn off output driver
00070 goto WHERE
00071 endm
00072 ; *****************************************************************************
00073
00074
00075 ; *****************************************************************************
00076 wrtee macro MYREG
00077 banksel EEADR
00078 movwf EEDATA ; Init the first values
00079 movlw TX_EDGE_DELAY_H
00080 sublw MYREG
00081 movwf EEADR
00082 call WriteEEData
00083 endm
00084 ; *****************************************************************************
00085
00086
00005 ; *****************************************************************************
00006
00007
00008
00009 ; *****************************************************************************
0000 00010 EXTERN SendData
0000 00011 EXTERN RecvData
00012
0000 00013 EXTERN Main
0000 00014 EXTERN DelayCyclesT1
00015
0000 00016 EXTERN WREG1, DALI_H, DALI_L
0000 00017 EXTERN MILLISECONDS
0000 00018 EXTERN BRIDGE_STATUS
00019
0000 00020 EXTERN DALI_H_BAK1, DALI_L_BAK1
0000 00021 EXTERN DALI_H_BAK2, DALI_L_BAK2
0000 00022 EXTERN DALI_H_BAK3, DALI_L_BAK3
00023
0000 00024 EXTERN DOUBLE_SEND_DELAY
0000 00025 EXTERN SEQUENCE_DELAY
00026 ; *****************************************************************************
00027
00028
00029
00030 ; *****************************************************************************
00031 SEQUENCE_DATA CODE
00032 ; *****************************************************************************
0000 00033 SingleSend
00034
MPASM 5.20 CMD3.ASM 11-3-2008 15:53:43 PAGE 8
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
0000 1900 00035 btfsc BRIDGE_STATUS, 2 ; Prevent transmission if overload
0001 2??? 00036 goto Main
00037
00038 txdali DALI_H, DALI_L
M movff DALI_H, DALI_H
0002 08?? M movf DALI_H, W
0003 00?? M movwf DALI_H
M movff DALI_L, DALI_L
0004 08?? M movf DALI_L, W
0005 00?? M movwf DALI_L
0006 2??? M call SendData
00039
0007 2??? 00040 goto Main
00041
0000 00042 GLOBAL SingleSend
00043 ; *****************************************************************************
00044
00045
00046 ; *****************************************************************************
0008 00047 DoubleSend
00048
0008 1900 00049 btfsc BRIDGE_STATUS, 2 ; Prevent transmission if overload
0009 2??? 00050 goto Main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -