第一次提交
This commit is contained in:
186
CC6.H
Normal file
186
CC6.H
Normal file
@@ -0,0 +1,186 @@
|
||||
//****************************************************************************
|
||||
// @Module Capture / Compare Unit 6 (CCU6)
|
||||
// @Filename CC6.H
|
||||
// @Project CL2.0.dav
|
||||
//----------------------------------------------------------------------------
|
||||
// @Controller Infineon XC886CLM-8FF
|
||||
//
|
||||
// @Compiler Keil
|
||||
//
|
||||
// @Codegenerator 1.3
|
||||
//
|
||||
// @Description This file contains all function prototypes and macros for
|
||||
// the CCU6 module.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Date 2025/3/28 16:46:42
|
||||
//
|
||||
//****************************************************************************
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,1)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
|
||||
#ifndef _CC6_H_
|
||||
#define _CC6_H_
|
||||
|
||||
//****************************************************************************
|
||||
// @Project Includes
|
||||
//****************************************************************************
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,2)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Macros
|
||||
//****************************************************************************
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,3)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Defines
|
||||
//****************************************************************************
|
||||
|
||||
// This parameter identifies CC6 timer 12
|
||||
#define CC6_TIMER_12 12
|
||||
|
||||
// This parameter identifies CC6 timer 13
|
||||
#define CC6_TIMER_13 13
|
||||
|
||||
// This parameter identifies CC6 channel 0
|
||||
#define CC6_CHANNEL_0 0
|
||||
|
||||
// This parameter identifies CC6 channel 1
|
||||
#define CC6_CHANNEL_1 1
|
||||
|
||||
// This parameter identifies CC6 channel 2
|
||||
#define CC6_CHANNEL_2 2
|
||||
|
||||
// This parameter identifies CC6 channel 3
|
||||
#define CC6_CHANNEL_3 3
|
||||
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,4)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Typedefs
|
||||
//****************************************************************************
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,5)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Imported Global Variables
|
||||
//****************************************************************************
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,6)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Global Variables
|
||||
//****************************************************************************
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,7)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Prototypes Of Global Functions
|
||||
//****************************************************************************
|
||||
|
||||
void CC6_vInit(void);
|
||||
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,8)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Macro CC6_vEnableShadowTransfer(TimerNr)
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Description This macro enables the transfer from the shadow registers
|
||||
// to the actual CC6 registers.
|
||||
//
|
||||
// The following definitions for TimerNr are available:
|
||||
// CC6_TIMER_12
|
||||
// CC6_TIMER_13
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Returnvalue None
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Parameters TimerNr:
|
||||
// Name of the CC6 timer to be used
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Date 2025/3/28
|
||||
//
|
||||
//****************************************************************************
|
||||
|
||||
#define CC6_vEnableShadowTransfer(TimerNr) CC6_vEnableShadowTransfer_##TimerNr()
|
||||
#define CC6_vEnableShadowTransfer_CC6_TIMER_12() CCU6_TCTR4L |= 0x40
|
||||
#define CC6_vEnableShadowTransfer_CC6_TIMER_13() CCU6_TCTR4H |= 0x40
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Macro CC6_vLoadChannelShadowRegister(RegName, uwValue)
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Description This macro loads the selected CC6 channel shadow register
|
||||
// with the parameter Value.
|
||||
//
|
||||
// The following definitions are available for RegName:
|
||||
// CC6_CHANNEL_0 .. CC6_CHANNEL_3 (see @Defines in header file)
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Returnvalue None
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Parameters RegName:
|
||||
// Name of the CC6 channel to be loaded
|
||||
// @Parameters uwValue:
|
||||
// 16-bit Value with which the CC6 shadow register is to be
|
||||
// loaded
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
// @Date 2025/3/28
|
||||
//
|
||||
//****************************************************************************
|
||||
|
||||
#define CC6_vLoadChannelShadowRegister(RegName, uwValue) CC6_vLoadChannelShadowRegister_##RegName(uwValue)
|
||||
#define CC6_vLoadChannelShadowRegister_CC6_CHANNEL_0(uwValue) CCU6_CC60SRLH = uwValue
|
||||
#define CC6_vLoadChannelShadowRegister_CC6_CHANNEL_1(uwValue) CCU6_CC61SRLH = uwValue
|
||||
#define CC6_vLoadChannelShadowRegister_CC6_CHANNEL_2(uwValue) CCU6_CC62SRLH = uwValue
|
||||
#define CC6_vLoadChannelShadowRegister_CC6_CHANNEL_3(uwValue) CCU6_CC63SRLH = uwValue
|
||||
|
||||
|
||||
//****************************************************************************
|
||||
// @Interrupt Vectors
|
||||
//****************************************************************************
|
||||
|
||||
// Shared interrupt vector definitions are defined in SHARED_INT.H
|
||||
|
||||
|
||||
// USER CODE BEGIN (CCU6_Header,10)
|
||||
|
||||
// USER CODE END
|
||||
|
||||
|
||||
#endif // ifndef _CC6_H_
|
||||
Reference in New Issue
Block a user