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

📄 ccu6.lst

📁 xc164的t12
💻 LST
📖 第 1 页 / 共 2 页
字号:
  204  1                                       // for channel 1
  205  1      
  206  1        ///  -----------------------------------------------------------------------
  207  1        ///  Configuration of CCU6 Channel 2:
  208  1        ///  -----------------------------------------------------------------------
  209  1        ///  - compare mode 3 is selected
  210  1        ///  - T12 modulation for output CC62 is enabled
  211  1        ///  - T13 modulation for output CC62 is disabled
  212  1        ///  - the trap functionality of the pin CC62 is disabled
  213  1        ///  - the compare output CC62 drives passive level while CC62ST is '0'
  214  1        ///  - the passive level of the output CC62 is '0'
  215  1        ///  - T12 modulation for output COUT62 is enabled
  216  1        ///  - T13 modulation for output COUT62 is disabled
  217  1        ///  - the trap functionality of the pin COUT62 is disabled
  218  1        ///  - the compare output COUT62 drives passive level while CC62ST is '1'
  219  1        ///  - the passive level of the output COUT62 is '0'
  220  1        ///  - dead time generation is enabled
  221  1      
  222  1        ///  - generation interrupt on flag ICC62R is disabled
  223  1        ///  - generation interrupt on flag ICC62F is disabled
  224  1      
  225  1        CCU6_CC62SR    =  0x03E8;      // load CCU6 capture/compare shadow register 
  226  1                                       // for channel 2
  227  1      
  228  1        ///  -----------------------------------------------------------------------
  229  1        ///  Configuration of CCU6 Channel 3:
  230  1        ///  -----------------------------------------------------------------------
  231  1        ///  - T13 output is not inverted
  232  1      
  233  1      
  234  1        CCU6_CC63SR    =  0x0000;      // load CCU6 capture/compare shadow register 
  235  1                                       // for channel 3
  236  1      
  237  1      
  238  1        CCU6_T12DTC    =  0x0728;      // load CCU6 dead time control register for 
  239  1                                       // timer T12
  240  1      
  241  1        CCU6_T12MSEL   =  0x0333;      // load CCU6 T12 campture/compare mode 
C166 COMPILER V6.02, CCU6                                                                  08/08/2006 15:48:05 PAGE 5   

  242  1                                       // select register
  243  1      
  244  1        CCU6_CMPSTAT   =  0x2A00;      // load CCU6 compare status register
  245  1      
  246  1        CCU6_PSLR      =  0x0000;      // load CCU6 passive state level register
  247  1      
  248  1        CCU6_MODCTR    =  0x003F;      // load CCU6 modulation control register
  249  1      
  250  1        CCU6_MCMOUTS   =  0x0000;      // load CCU6 multi channel mode output 
  251  1                                       // control register
  252  1      
  253  1        CCU6_MCMCTR    =  0x0000;      // load CCU6 multi channel mode control 
  254  1                                       // register
  255  1      
  256  1        ///  - enable shadow transfer to T12 and T13
  257  1        CCU6_TCTR4     =  0x4040;      // load CCU6 timer control register 4
  258  1      
  259  1        ///  -----------------------------------------------------------------------
  260  1        ///  Configuration of CCU6 trap control:
  261  1        ///  -----------------------------------------------------------------------
  262  1        ///  - a trap can only be generated by SW by setting the bit TRPF
  263  1        ///  - the trap state is left when a zero-match of T12 (while counting up) 
  264  1        ///    is detected (synchronization to T12)
  265  1        ///  - bit TRPF is automatically cleared by HW (according to TRPPEN, TRPM0 
  266  1        ///    and TRPM1)
  267  1        ///  - trap interrupt is disabled
  268  1      
  269  1      
  270  1        CCU6_TRPCTR    =  0x0000;      // load CCU6 trap control register
  271  1      
  272  1        ///  -----------------------------------------------------------------------
  273  1        ///  Configuration of CCU6 interrupt control:
  274  1        ///  -----------------------------------------------------------------------
  275  1        ///  - for channel 0 interrupts is node I2 selected
  276  1        ///  - for channel 1 interrupts is node I2 selected
  277  1        ///  - for channel 2 interrupts is node I2 selected
  278  1        ///  - for correct hall event interrupt is node I2 selected
  279  1        ///  - for error interrupts is node I2 selected
  280  1        ///  - for T12 interrupts is node I2 selected
  281  1        ///  - for T13 interrupts is node I2 selected
  282  1      
  283  1      
  284  1        CCU6_INP       =  0x2AAA;      // load CCU6 capture/compare interrupt node 
  285  1                                       // pointer register
  286  1      
  287  1        CCU6_IEN       =  0x0280;      // load CCU6 capture/compare interrupt 
  288  1                                       // enable register
  289  1      
  290  1      
  291  1        ///  -----------------------------------------------------------------------
  292  1        ///  Configuration of the used CCU6 Channel Port Pins:
  293  1        ///  -----------------------------------------------------------------------
  294  1        ///  - P1L.0 is used for CAPCOM6 output (CC60)
  295  1        ///  - P1L.2 is used for CAPCOM6 output (CC61)
  296  1        ///  - P1L.4 is used for CAPCOM6 output (CC62)
  297  1        ///  - P1L.1 is used for CAPCOM6 output (COUT60)
  298  1        ///  - P1L.3 is used for CAPCOM6 output (COUT61)
  299  1        ///  - P1L.5 is used for CAPCOM6 output (COUT62)
  300  1      
  301  1        ALTSEL0P1L    |=  0x003F;      // select alternate output function
  302  1        P1L   = (P1L   & ~(uword)0x003F) | 0x003F;    //set data register
  303  1        DP1L  = (DP1L  & ~(uword)0x003F) | 0x003F;    //set direction register
C166 COMPILER V6.02, CCU6                                                                  08/08/2006 15:48:05 PAGE 6   

  304  1      
  305  1        ///  -----------------------------------------------------------------------
  306  1        ///  Configuration of the used CCU6 Channels Interrupts:
  307  1        ///  -----------------------------------------------------------------------
  308  1        ///  NodeI2 service request node configuration:
  309  1        ///  - NodeI2 interrupt priority level (ILVL) = 13
  310  1        ///  - NodeI2 interrupt group level (GLVL) = 1
  311  1        ///  - NodeI2 group priority extension (GPX) = 0
  312  1      
  313  1        CCU6_T12IC     =  0x0075;     
  314  1      
  315  1      
  316  1      
  317  1      
  318  1        CCU6_TCTR4     =  0x0002;      // load CCU6 timer control register 4
  319  1      
  320  1        // USER CODE BEGIN (Init,3)
  321  1      
  322  1        // USER CODE END
  323  1      
  324  1      } //  End of function CCU6_vInit
  325         
  326         
  327         //****************************************************************************
  328         // @Function      void CCU6_viNodeI2(void) 
  329         //
  330         //----------------------------------------------------------------------------
  331         // @Description   This is the interrupt service routine for the CCU6 node I2. 
  332         //                If the content of the corresponding compare timer 
  333         //                (configurable) equals the content of the capture/compare 
  334         //                register or if a capture event occurs at the associated 
  335         //                port pin, the interrupt request flag is set and an 
  336         //                interrupt is triggered (only if enabled).
  337         //                Please note that you have to add application specific code 
  338         //                to this function.
  339         //
  340         //----------------------------------------------------------------------------
  341         // @Returnvalue   None
  342         //
  343         //----------------------------------------------------------------------------
  344         // @Parameters    None
  345         //
  346         //----------------------------------------------------------------------------
  347         // @Date          2006-7-8
  348         //
  349         //****************************************************************************
  350         
  351         // USER CODE BEGIN (NodeI2,1)
  352         
  353         // USER CODE END
  354         
  355         void CCU6_viNodeI2(void) interrupt CCU6_NodeI2_INT
  356         {
  357  1        // USER CODE BEGIN (NodeI2,2)
  358  1      
  359  1        // USER CODE END
  360  1      
  361  1        if(CCU6_IS & 0x0080)  // if CCU6_IS_T12PM
  362  1        {
  363  2          // timer T12 period match detection
  364  2      
  365  2          // USER CODE BEGIN (NodeI2,19)
C166 COMPILER V6.02, CCU6                                                                  08/08/2006 15:48:05 PAGE 7   

  366  2      
  367  2          // USER CODE END
  368  2      
  369  2          CCU6_ISR = 0x0080;  // clear flag CCU6_IS_T12PM
  370  2        }
  371  1      
  372  1        if(CCU6_IS & 0x0200)  // if CCU6_IS_T13PM
  373  1        {
  374  2          // timer T13 period match detection
  375  2      
  376  2          // USER CODE BEGIN (NodeI2,21)
  377  2      
  378  2          // USER CODE END
  379  2      
  380  2          CCU6_ISR = 0x0200;  // clear flag CCU6_IS_T13PM
  381  2        }
  382  1      
  383  1      
  384  1      } //  End of function CCU6_viNodeI2
  385         
  386         
  387         
  388         
  389         // USER CODE BEGIN (CCU6_General,10)
  390         
  391         // USER CODE END
  392         


MODULE INFORMATION:   INITIALIZED  UNINITIALIZED
  CODE SIZE        =         220     --------
  NEAR-CONST SIZE  =    --------     --------
  FAR-CONST SIZE   =    --------     --------
  HUGE-CONST SIZE  =    --------     --------
  XHUGE-CONST SIZE =    --------     --------
  NEAR-DATA SIZE   =    --------     --------
  FAR-DATA SIZE    =    --------     --------
  XHUGE-DATA SIZE  =    --------     --------
  IDATA-DATA SIZE  =    --------     --------
  SDATA-DATA SIZE  =    --------     --------
  BDATA-DATA SIZE  =    --------     --------
  HUGE-DATA SIZE   =    --------     --------
  BIT SIZE         =    --------     --------
  INIT'L SIZE      =    --------     --------
END OF MODULE INFORMATION.


C166 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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