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

📄 cmd5.lst

📁 DALI系统主控制器的软件代码
💻 LST
📖 第 1 页 / 共 4 页
字号:
                      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                          CMD5.ASM   11-3-2008  15:53:45         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                          CMD5.ASM   11-3-2008  15:53:45         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 ; *****************************************************************************
  0000                00009         EXTERN  SendData
  0000                00010         EXTERN  RecvData
                      00011 
  0000                00012         EXTERN  WriteEEData
                      00013 
  0000                00014         EXTERN  Main
  0000                00015         EXTERN  DelayCyclesT1
                      00016 
  0000                00017         EXTERN  WREG1, DALI_H, DALI_L
  0000                00018         EXTERN  MILLISECONDS
  0000                00019         EXTERN  BRIDGE_STATUS
                      00020 
  0000                00021         EXTERN  DALI_H_BAK1, DALI_L_BAK1
  0000                00022         EXTERN  DALI_H_BAK2, DALI_L_BAK2
  0000                00023         EXTERN  DALI_H_BAK3, DALI_L_BAK3
                      00024 
  0000                00025         EXTERN  TX_EDGE_DELAY_H, TX_EDGE_DELAY_L, TX_STOP_DELAY_H, TX_STOP_DELAY_L
  0000                00026         EXTERN  TX_REG_DELAY_H, TX_REG_DELAY_L, RX_WAIT, RX_START_DELAY_H
  0000                00027         EXTERN  RX_START_DELAY_L, RX_SAMPLE_DELAY_H, RX_SAMPLE_DELAY_L
  0000                00028         EXTERN  RX_DELAY_NEXT_H, RX_DELAY_NEXT_L, DOUBLE_SEND_DELAY, SEQUENCE_DELAY
  0000                00029         EXTERN  RX_DEBUG, BAUD_RATE
                      00030 ; *****************************************************************************
                      00031 
                      00032 
                      00033 ; *****************************************************************************
                      00034 CHANGE_SETTINGS CODE
MPASM  5.20                          CMD5.ASM   11-3-2008  15:53:45         PAGE  8


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00035 ; *****************************************************************************
0000                  00036 ChngTXEdgeDelay
                      00037         
                      00038         movff   DALI_H, TX_EDGE_DELAY_H
0000   08??               M         movf    DALI_H, W
0001   00??               M         movwf   TX_EDGE_DELAY_H
                      00039         wrtee   TX_EDGE_DELAY_H
0002   1683 1303          M         banksel EEADR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0004   009A               M         movwf   EEDATA                          ; Init the first values 
0005   30??               M         movlw   TX_EDGE_DELAY_H
0006   3C??               M         sublw   TX_EDGE_DELAY_H
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0007   009B               M         movwf   EEADR 
0008   2???               M         call    WriteEEData
                      00040 
                      00041         movff   DALI_L, TX_EDGE_DELAY_L
0009   08??               M         movf    DALI_L, W
000A   00??               M         movwf   TX_EDGE_DELAY_L
                      00042         wrtee   TX_EDGE_DELAY_L
000B   1683 1303          M         banksel EEADR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
000D   009A               M         movwf   EEDATA                          ; Init the first values 
000E   30??               M         movlw   TX_EDGE_DELAY_H
000F   3C??               M         sublw   TX_EDGE_DELAY_L
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0010   009B               M         movwf   EEADR 
0011   2???               M         call    WriteEEData
                      00043 
0012   2???           00044         goto    Main
                      00045 
  0000                00046         GLOBAL  ChngTXEdgeDelay
                      00047 ; *****************************************************************************
                      00048 
                      00049 
                      00050 ; *****************************************************************************
0013                  00051 ChngTXStopDelay
                      00052 
                      00053         movff   DALI_H, TX_STOP_DELAY_H
0013   08??               M         movf    DALI_H, W
0014   00??               M         movwf   TX_STOP_DELAY_H
                      00054         wrtee   TX_STOP_DELAY_H
0015   1683 1303          M         banksel EEADR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0017   009A               M         movwf   EEDATA                          ; Init the first values 
0018   30??               M         movlw   TX_EDGE_DELAY_H
0019   3C??               M         sublw   TX_STOP_DELAY_H
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
001A   009B               M         movwf   EEADR 
001B   2???               M         call    WriteEEData
                      00055 
                      00056         movff   DALI_L, TX_STOP_DELAY_L
001C   08??               M         movf    DALI_L, W
MPASM  5.20                          CMD5.ASM   11-3-2008  15:53:45         PAGE  9


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

001D   00??               M         movwf   TX_STOP_DELAY_L
                      00057         wrtee   TX_STOP_DELAY_L
001E   1683 1303          M         banksel EEADR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0020   009A               M         movwf   EEDATA                          ; Init the first values 
0021   30??               M         movlw   TX_EDGE_DELAY_H
0022   3C??               M         sublw   TX_STOP_DELAY_L
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0023   009B               M         movwf   EEADR 
0024   2???               M         call    WriteEEData
                      00058 
0025   2???           00059         goto    Main
                      00060 
                      00061 
  0000                00062         GLOBAL  ChngTXStopDelay
                      00063 ; *****************************************************************************
                      00064 
                      00065 
                      00066 ; *****************************************************************************
0026                  00067 ChngTXRegDelay
                      00068 
                      00069         movff   DALI_H, TX_REG_DELAY_H
0026   08??               M         movf    DALI_H, W
0027   00??               M         movwf   TX_REG_DELAY_H
                      00070         wrtee   TX_REG_DELAY_H
0028   1683 1303          M         banksel EEADR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
002A   009A               M         movwf   EEDATA                          ; Init the first values 
002B   30??               M         movlw   TX_EDGE_DELAY_H
002C   3C??               M         sublw   TX_REG_DELAY_H
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
002D   009B               M         movwf   EEADR 
002E   2???               M         call    WriteEEData
                      00071 
                      00072         movff   DALI_L, TX_REG_DELAY_L
002F   08??               M         movf    DALI_L, W
0030   00??               M         movwf   TX_REG_DELAY_L
                      00073         wrtee   TX_REG_DELAY_L
0031   1683 1303          M         banksel EEADR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0033   009A               M         movwf   EEDATA                          ; Init the first values 
0034   30??               M         movlw   TX_EDGE_DELAY_H
0035   3C??               M         sublw   TX_REG_DELAY_L
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0036   009B               M         movwf   EEADR 
0037   2???               M         call    WriteEEData

⌨️ 快捷键说明

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