|
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
// File name : pwm_reg.h
|
|
|
// Version : V0.1
|
|
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
#ifndef PWM_REG_H_
|
|
|
#define PWM_REG_H_
|
|
|
|
|
|
#include "type.h"
|
|
|
#pragma anon_unions
|
|
|
typedef struct
|
|
|
{
|
|
|
union
|
|
|
{
|
|
|
__IO unsigned int PWM_PR;//0x00
|
|
|
struct
|
|
|
{
|
|
|
__IO unsigned char PWM_PR_CP0;//0x00
|
|
|
__IO unsigned char PWM_PR_CP1;//0x01
|
|
|
__IO unsigned char PWM_PR_DZ0;//0x02
|
|
|
__IO unsigned char PWM_PR_DZ1;//0x03
|
|
|
};
|
|
|
};
|
|
|
__IO unsigned int PWM_CSR;//0x04
|
|
|
union
|
|
|
{
|
|
|
__IO unsigned int PWM_CR;//0x08
|
|
|
struct
|
|
|
{
|
|
|
__IO unsigned char PWM_CR_CH0;//0x08
|
|
|
__IO unsigned char PWM_CR_CH1;//0x09
|
|
|
__IO unsigned char PWM_CR_CH2;//0x0a
|
|
|
__IO unsigned char PWM_CR_CH3;//0x0b
|
|
|
};
|
|
|
};
|
|
|
__IO unsigned int PWM_CNR0;//0x0c
|
|
|
__IO unsigned int PWM_CMR0;//0x10
|
|
|
__IO unsigned int PWM_TR0;//0x14
|
|
|
|
|
|
__IO unsigned int PWM_CNR1;//0x18
|
|
|
__IO unsigned int PWM_CMR1;//0x1c
|
|
|
__IO unsigned int PWM_TR1;//0x20
|
|
|
|
|
|
__IO unsigned int PWM_CNR2;//0x24
|
|
|
__IO unsigned int PWM_CMR2;//0x28
|
|
|
__IO unsigned int PWM_TR2;//0x2c
|
|
|
|
|
|
__IO unsigned int PWM_CNR3 ;//0x30
|
|
|
__IO unsigned int PWM_CMR3;//0x34
|
|
|
__IO unsigned int PWM_TR3;//0x38
|
|
|
|
|
|
__IO unsigned int PWM_IER;//0x3c
|
|
|
__IO unsigned char PWM_IFR ;//0x40
|
|
|
unsigned char RESERVED1[3];//0x41~0x43
|
|
|
union
|
|
|
{
|
|
|
__IO unsigned int PWM_CCR0 ;//0x44
|
|
|
struct
|
|
|
{
|
|
|
__IO unsigned char PWM_CCR0_CH0;//0x44
|
|
|
unsigned char RESERVED2[1];//0x45
|
|
|
__IO unsigned char PWM_CCR0_CH1;//0x46
|
|
|
unsigned char RESERVED3[1];//0x47
|
|
|
};
|
|
|
};
|
|
|
union
|
|
|
{
|
|
|
__IO unsigned int PWM_CCR1;//0x48
|
|
|
struct
|
|
|
{
|
|
|
__IO unsigned char PWM_CCR1_CH2;//0x48
|
|
|
unsigned char RESERVED4[1];//0x49
|
|
|
__IO unsigned char PWM_CCR1_CH3;//0x4a
|
|
|
unsigned char RESERVED5[1];//0x4b
|
|
|
};
|
|
|
};
|
|
|
__IO unsigned int PWM_CRLR0 ;//0x4c
|
|
|
__IO unsigned int PWM_CFLR0 ;//0x50
|
|
|
__IO unsigned int PWM_CRLR1 ;//0x54
|
|
|
__IO unsigned int PWM_CFLR1 ;//0x58
|
|
|
__IO unsigned int PWM_CRLR2 ;//0x5c
|
|
|
|
|
|
__IO unsigned int PWM_CFLR2;// 0x60)
|
|
|
__IO unsigned int PWM_CRLR3;// 0x64
|
|
|
__IO unsigned int PWM_CFLR3;// 0x68
|
|
|
union
|
|
|
{
|
|
|
__IO unsigned int PWM_PCR;//0x6c
|
|
|
struct
|
|
|
{
|
|
|
__IO unsigned char PWM_PCR_PDR;//0x6c
|
|
|
__IO unsigned char PWM_PCR_PULLEN;//0x6d
|
|
|
__IO unsigned char PWM_PCR_PDDR;//0x6e
|
|
|
unsigned char RESERVED6[1];//0x6f
|
|
|
};
|
|
|
};
|
|
|
|
|
|
}PWM_TypeDef;
|
|
|
|
|
|
//PWM_CR
|
|
|
#define CH0EN 0x00000001
|
|
|
#define CH0INV 0x00000004
|
|
|
#define CH0MOD 0x00000008
|
|
|
|
|
|
#define CH1EN 0x00000001
|
|
|
#define CH1INV 0x00000004
|
|
|
#define CH1MOD 0x00000008
|
|
|
|
|
|
#define CH2EN 0x00000001
|
|
|
#define CH2INV 0x00000004
|
|
|
#define CH2MOD 0x00000008
|
|
|
|
|
|
#define CH3EN 0x00000001
|
|
|
#define CH3INV 0x00000004
|
|
|
#define CH3MOD 0x00000008
|
|
|
|
|
|
#define DZEN0 0x00000010
|
|
|
#define DZEN1 0x00000020
|
|
|
//PWM_IER
|
|
|
#define PIER0 0x00000001
|
|
|
#define PIER1 0x00000002
|
|
|
#define PIER2 0x00000004
|
|
|
#define PIER3 0x00000008
|
|
|
//PWM_IFR
|
|
|
#define PIFR0 0x00000001
|
|
|
#define PIFR1 0x00000002
|
|
|
#define PIFR2 0x00000004
|
|
|
#define PIFR3 0x00000008
|
|
|
//PWM_CCR0&PWM_CCR1
|
|
|
#define INV 0x00000001
|
|
|
#define RL_IE 0x00000002
|
|
|
#define FL_IE 0x00000004
|
|
|
#define CAPCHxEN 0x00000008
|
|
|
#define CAPIF 0x00000010
|
|
|
#define CFLRD 0x00000080
|
|
|
#define CRLRD 0x00000040
|
|
|
|
|
|
#define PWM_INT_NUM 24
|
|
|
|
|
|
#endif /* PWM_REG_H_ */
|