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

📄 main.lst

📁 DALI系统主控制器的软件代码
💻 LST
📖 第 1 页 / 共 5 页
字号:


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00196         endm
                      00197 ; *****************************************************************************
                      00198 
                      00199 ; *****************************************************************************
                      00200 movff   macro   HERE, THERE
                      00201         movf    HERE, W
                      00202         movwf   THERE
                      00203         endm
                      00204 ; *****************************************************************************
                      00205 
                      00206 ; *****************************************************************************
                      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 
MPASM  5.20                          MAIN.ASM   11-3-2008  15:53:48         PAGE  6


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00015 #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
                      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
MPASM  5.20                          MAIN.ASM   11-3-2008  15:53:48         PAGE  7


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      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
                      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 
                      00016 #include        main.inc
                      00001 ; *****************************************************************************
                      00002 ; This file contains all defined registers for the main task to run.
                      00003 
                      00004 
                      00005 ; *** Constants ***************************************************************
                      00006 
                      00007 ; *****************************************************************************
                      00008 
                      00009 
                      00010 ; *** Externals ***************************************************************
  0000                00011         EXTERN  TimeCounter
                      00012 
  0000                00013         EXTERN  ResetBridge, ReportStatus       ; Bridge commands
  0000                00014         EXTERN  SequenceDATA1, SequenceDATA2    ; Sequence storage commands
  0000                00015         EXTERN  SequenceDATA3
  0000                00016         EXTERN  SingleSend, DoubleSend          ; DALI bus commands
  0000                00017         EXTERN  SendSequence
  0000                00018         EXTERN  SendReceive
MPASM  5.20                          MAIN.ASM   11-3-2008  15:53:48         PAGE  8


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

  0000                00019         EXTERN  ChngTXEdgeDelay, ChngTXStopDelay
  0000                00020         EXTERN  ChngTXRegDelay, ChngRXWait, ChngRXStartDelay
  0000                00021         EXTERN  ChngRXSampleDelay, ChngRXDelayNext, ChngRXDebug
  0000                00022         EXTERN  ChngDblSendDelay, ChngSequenceDelay
  0000                00023         EXTERN  ChngBaudRate
  0000                00024         EXTERN  QueryTXEdge_H, QueryTXEdge_L, QueryTXStop_H, QueryTXStop_L
  0000                00025         EXTERN  QueryTXReg_H, QueryTXReg_L, QueryRXWait
  0000                00026         EXTERN  QueryRXStart_H, QueryRXStart_L, QueryRXSample_H, QueryRXSample_L
  0000                00027         EXTERN  QueryRXNext_H, QueryRXNext_L, QueryRXDebug
  0000                00028         EXTERN  QueryDblSendDel, QuerySeqDel
  0000                00029         EXTERN  LoadReset
                      00030 ;       EXTERN  SendData
                      00031 ; *****************************************************************************
                      00032 
                      00033         
                      00034 ; *** Variables ***************************************************************
                      00035 MAIN_DATA       udata   0x20
                      00036 ; *****************************************************************************
0020                  00037 TX_EDGE_DELAY_H         res     1
0021                  00038 TX_EDGE_DELAY_L         res     1
0022                  00039 TX_STOP_DELAY_H         res     1
0023                  00040 TX_STOP_DELAY_L         res     1
0024                  00041 TX_REG_DELAY_H          res     1
0025                  00042 TX_REG_DELAY_L          res     1
0026                  00043 RX_WAIT                 res     1
0027                  00044 RX_START_DELAY_H        res     1
0028                  00045 RX_START_DELAY_L        res     1
0029                  00046 RX_SAMPLE_DELAY_H       res     1
002A                  00047 RX_SAMPLE_DELAY_L       res     1
002B                  00048 RX_DELAY_NEXT_H         res     1
002C                  00049 RX_DELAY_NEXT_L         res     1
002D                  00050 RX_DEBUG                res     1
002E                  00051 DOUBLE_SEND_DELAY       res     1
002F                  00052 SEQUENCE_DELAY          res     1
0030                  00053 BAUD_RATE               res     1
                      00054 
  0000                00055         GLOBAL  TX_EDGE_DELAY_H, TX_EDGE_DELAY_L, TX_STOP_DELAY_H, TX_STOP_DELAY_L
  0000                00056         GLOBAL  TX_REG_DELAY_H, TX_REG_DELAY_L, RX_WAIT, RX_START_DELAY_H
  0000                00057         GLOBAL  RX_START_DELAY_L, RX_SAMPLE_DELAY_H, RX_SAMPLE_DELAY_L
  0000                00058         GLOBAL  RX_DELAY_NEXT_H, RX_DELAY_NEXT_L, DOUBLE_SEND_DELAY, SEQUENCE_DELAY
  0000                00059         GLOBAL  RX_DEBUG, BAUD_RATE
                      00060 
0031                  00061 COMMAND         res     1
0032                  00062 DALI_H          res     1
0033                  00063 DALI_L          res     1
0034                  00064 BRIDGE_STATUS   res     1
                      00065 
0035                  00066 DALI_H_BAK1     res     1
0036                  00067 DALI_L_BAK1     res     1
0037                  00068 DALI_H_BAK2     res     1
0038                  00069 DALI_L_BAK2     res     1
0039                  00070 DALI_H_BAK3     res     1
003A                  00071 DALI_L_BAK3     res     1
MPASM  5.20                          MAIN.ASM   11-3-2008  15:53:48         PAGE  9

⌨️ 快捷键说明

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