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

📄 main.lst

📁 用于对无刷直流电机的启动及控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
 113          // @Description   This function initializes the microcontroller. It is 
 114          //                assumed that the SFRs are in their reset state.
 115          //
 116          //----------------------------------------------------------------------------
 117          // @Returnvalue   None
 118          //
 119          //----------------------------------------------------------------------------
 120          // @Parameters    None
 121          //
 122          //----------------------------------------------------------------------------
 123          // @Date          7/25/2005
 124          //
 125          //****************************************************************************
 126          
 127          // USER CODE BEGIN (MAIN_Init,1)
 128          
 129          // USER CODE END
 130          
 131          void MAIN_vInit(void)
 132          {
 133   1        // USER CODE BEGIN (MAIN_Init,2)
 134   1      
 135   1        // USER CODE END
 136   1      
 137   1        ///  -----------------------------------------------------------------------
 138   1        ///  Configuration of the System Clock:
 139   1        ///  -----------------------------------------------------------------------
 140   1        ///  - On Chip Osc is Selected
 141   1        ///  - PLL Mode, NDIV = 2
 142   1        ///  - input frequency is 10 MHz
 143   1      
 144   1      
 145   1      
 146   1        ///  *********************************************************************************
 147   1        ///  Note : All peripheral related IO configurations are done in the 
 148   1        ///  respective peripheral modules (alternate functions selection)
 149   1        ///  *********************************************************************************
 150   1      
 151   1      
 152   1        ///  Initialization of module 'Capture / Compare Unit 6 (CCU6)'
 153   1        CC6_vInit();
 154   1      
 155   1        //   Interrupt Priority
 156   1      
 157   1        IP            =  0x00;         // load Interrupt Priority Register
 158   1        IPH           =  0x00;         // load Interrupt Priority High Register
 159   1        IP1           =  0x00;         // load Interrupt Priority 1 Register
 160   1        IPH1          =  0x00;         // load Interrupt Priority 1 High Register
 161   1      
 162   1      
 163   1        // USER CODE BEGIN (MAIN_Init,3)
 164   1      
C51 COMPILER V7.50   MAIN                                                                  10/12/2005 16:46:09 PAGE 14  

 165   1        // USER CODE END
 166   1      
 167   1        //   globally enable interrupts
 168   1        EA            =  1;           
 169   1      
 170   1      } //  End of function MAIN_vInit
 171          
 172          
 173          //****************************************************************************
 174          // @Function      void main(void) 
 175          //
 176          //----------------------------------------------------------------------------
 177          // @Description   This is the main function.
 178          //
 179          //----------------------------------------------------------------------------
 180          // @Returnvalue   None
 181          //
 182          //----------------------------------------------------------------------------
 183          // @Parameters    None
 184          //
 185          //----------------------------------------------------------------------------
 186          // @Date          7/25/2005
 187          //
 188          //****************************************************************************
 189          
 190          // USER CODE BEGIN (MAIN_Main,1)
 191          
 192          // USER CODE END
 193          
 194          void main(void)
 195          {
 196   1        // USER CODE BEGIN (MAIN_Main,2)
 197   1       
 198   1      unsigned char i;
 199   1        // USER CODE END
 200   1      
 201   1        MAIN_vInit();
 202   1      
 203   1        // USER CODE BEGIN (MAIN_Main,3)
 204   1      #define MCM_transfer 0x80                                       //manual transfer from shadow registers
 205   1      
 206   1              i = (P2_DATA & 0x7);                                    //read in the current hall state
 207   1      
 208   1              CCU6_MCMOUTSH = HallPatt[i] | MCM_transfer;             //program the curr, exp hall states.
 209   1              CCU6_MCMOUTSL = OutputPatt[i] | MCM_transfer;   //program the output pattern to the CCU port.
 210   1      
 211   1              i=HallPatt[i]& 0x07;                                            //get expected hall state
 212   1      
 213   1              CCU6_MCMOUTSH = HallPatt[i];                    //program shadow registers with next state values
 214   1              CCU6_MCMOUTSL = OutputPatt[i];                  //the shadow transfer will be automatic
 215   1      
 216   1        // USER CODE END
 217   1      
 218   1        while(1)
 219   1        {
 220   2      
 221   2        // USER CODE BEGIN (MAIN_Main,4)
 222   2      
 223   2        // USER CODE END
 224   2      
 225   2        }
 226   1      
C51 COMPILER V7.50   MAIN                                                                  10/12/2005 16:46:09 PAGE 15  

 227   1      } //  End of function main
 228          
 229          
 230          // USER CODE BEGIN (MAIN_General,10)
 231          
 232          // USER CODE END
 233          
C51 COMPILER V7.50   MAIN                                                                  10/12/2005 16:46:09 PAGE 16  

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION MAIN_vInit (BEGIN)
                                           ; SOURCE LINE # 131
                                           ; SOURCE LINE # 132
                                           ; SOURCE LINE # 153
                 E     CALL    CC6_vInit
                                           ; SOURCE LINE # 157
                       CLR     A
                       MOV     IP,A
                                           ; SOURCE LINE # 158
                       MOV     IPH,A
                                           ; SOURCE LINE # 159
                       MOV     IP1,A
                                           ; SOURCE LINE # 160
                       MOV     IPH1,A
                                           ; SOURCE LINE # 168
                       SETB    EA
                                           ; SOURCE LINE # 170
                       RET     
             ; FUNCTION MAIN_vInit (END)

             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 194
                                           ; SOURCE LINE # 195
                                           ; SOURCE LINE # 201
                 R     CALL    MAIN_vInit
                                           ; SOURCE LINE # 206
                       MOV     A,P2_DATA
                       ANL     A,#07H
                       MOV     R7,A
;---- Variable 'i' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 208
                 R     MOV     DPTR,#HallPatt
                       MOVC    A,@A+DPTR
                       MOV     R6,A
                       ORL     A,#080H
                       MOV     CCU6_MCMOUTSH,A
                                           ; SOURCE LINE # 209
                       MOV     A,R7
                 R     MOV     DPTR,#OutputPatt
                       MOVC    A,@A+DPTR
                       ORL     A,#080H
                       MOV     CCU6_MCMOUTSL,A
                                           ; SOURCE LINE # 211
                       MOV     A,R6
                       ANL     A,#07H
                       MOV     R7,A
                                           ; SOURCE LINE # 213
                 R     MOV     DPTR,#HallPatt
                       MOVC    A,@A+DPTR
                       MOV     CCU6_MCMOUTSH,A
                                           ; SOURCE LINE # 214
                       MOV     A,R7
                 R     MOV     DPTR,#OutputPatt
                       MOVC    A,@A+DPTR
                       MOV     CCU6_MCMOUTSL,A
             ?C0002:
                                           ; SOURCE LINE # 218
                                           ; SOURCE LINE # 219
                                           ; SOURCE LINE # 225
C51 COMPILER V7.50   MAIN                                                                  10/12/2005 16:46:09 PAGE 17  

                 R     xJMP    ?C0002
             ; FUNCTION main (END)

C51 COMPILER V7.50   MAIN                                                                  10/12/2005 16:46:09 PAGE 18  

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P3_DATA. . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
CCU6_CC60RL. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FAH  1
CCU6_CC61RL. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FCH  1
ADC_EVINPR . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D3H  1
CCU6_CC62RL. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FEH  1
CCU6_CC63RL. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009AH  1
ADC_EVINSR . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D2H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
ADC_CRCR1. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00CAH  1
CCU6_MODCTRH . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FDH  1
BG . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BEH  1
NMISR. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BCH  1
CCU6_MODCTRL . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FCH  1
IEN0 . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A8H  1
ID . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B3H  1
EADC . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00E8H  1
IEN1 . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00E8H  1
CCU6_CMPMODIFH . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A7H  1
ADC_CRMR1. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00CCH  1
CCU6_PAGE. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A3H  1
SYSCON0. . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008FH  1
CCU6_CMPMODIFL . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A6H  1
IPH1 . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00F9H  1
CCU6_MCMOUTH . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009BH  1
ADC_CRPR1. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00CBH  1
MAIN_vInit . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
EO . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A2H  1
FEAH . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BDH  1
ADC_QINR0. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D2H  1
ADC_QBUR0. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D2H  1
EXF2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C6H  1
ECCIP0 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ECH  1
CCU6_T12PRH. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009DH  1
ECCIP1 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EDH  1
CCU6_T13PRH. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009FH  1
CCU6_MCMOUTL . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009AH  1
ECCIP2 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EEH  1
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
CCU6_IENH. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009DH  1
PADC . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00F8H  1
ECCIP3 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EFH  1
IP . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B8H  1
FEAL . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BCH  1
CCU6_T12PRL. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009CH  1
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
CCU6_T13PRL. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009EH  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
CCU6_IENL. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009CH  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
CCU6_TRPCTRH . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FFH  1
HallPatt . . . . . . . . . . . . . . .  PUBLIC   CODE   ARRAY    0000H  7
PCCIP0 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00FCH  1
CCU6_TRPCTRL . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00FEH  1
ADC_RESRA0H. . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00CBH  1
PCCIP1 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00FDH  1
WDTWINB. . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BDH  1
C51 COMPILER V7.50   MAIN                                                                  10/12/2005 16:46:09 PAGE 19  

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE

⌨️ 快捷键说明

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