94 lines
4.3 KiB
C
94 lines
4.3 KiB
C
|
|
|||
|
|
|||
|
// #define T0_INT 1 //T<>жϿ<D0B6><CFBF><EFBFBD>
|
|||
|
//#define T1_INT 1
|
|||
|
#define T2_INT 1
|
|||
|
// #define T2_CAP 1
|
|||
|
|
|||
|
extern UINT8 Tim_3ms;
|
|||
|
|
|||
|
extern UINT8 FLAG;
|
|||
|
extern UINT16 Cap[8];
|
|||
|
|
|||
|
//CH554 Timer0ʱ<30><CAB1>ѡ<EFBFBD><D1A1>
|
|||
|
//bTMR_CLKͬʱӰ<CAB1><D3B0>Timer0&1&2,ʹ<><CAB9>ʱҪע<D2AA><D7A2> (<28><><EFBFBD><EFBFBD>ʱʹ<CAB1>ñ<EFBFBD>ʱ<D7BC><CAB1>)
|
|||
|
#define mTimer0Clk12DivFsys( ) (T2MOD &= ~bT0_CLK) //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys/12 T0<54><30>ʱ<D7BC><CAB1>
|
|||
|
#define mTimer0ClkFsys( ) (T2MOD |= bTMR_CLK | bT0_CLK) //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys
|
|||
|
#define mTimer0Clk4DivFsys( ) (T2MOD &= ~bTMR_CLK;T2MOD |= bT0_CLK) //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys/4
|
|||
|
#define mTimer0CountClk( ) (TMOD |= bT0_CT) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,T0<54><30><EFBFBD>ŵ<EFBFBD><C5B5>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>Ч
|
|||
|
|
|||
|
//CH554 Timer0 <20><>ʼ(SS=1)/<2F><><EFBFBD><EFBFBD>(SS=0)
|
|||
|
#define mTimer0RunCTL( SS ) (TR0 = SS ? START : STOP)
|
|||
|
|
|||
|
|
|||
|
#define mTimer1Clk12DivFsys( ) (T2MOD &= ~bT1_CLK) //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys/12 T1<54><31>ʱ<D7BC><CAB1>
|
|||
|
#define mTimer1ClkFsys( ) (T2MOD |= bTMR_CLK | bT1_CLK) //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys
|
|||
|
#define mTimer1Clk4DivFsys( ) (T2MOD &= ~bTMR_CLK;T2MOD |= bT1_CLK) //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys/4
|
|||
|
#define mTimer1CountClk( ) (TMOD |= bT1_CT) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,T0<54><30><EFBFBD>ŵ<EFBFBD><C5B5>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>Ч
|
|||
|
|
|||
|
//CH554 Timer1 <20><>ʼ(SS=1)/<2F><><EFBFBD><EFBFBD>(SS=0)
|
|||
|
#define mTimer1RunCTL( SS ) (TR1 = SS ? START : STOP)
|
|||
|
|
|||
|
|
|||
|
#define mTimer2Clk12DivFsys( ) {T2MOD &= ~(bTMR_CLK | bT2_CLK);C_T2 = 0;} //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys/12 T2<54><32>ʱ<D7BC><CAB1>
|
|||
|
#define mTimer2ClkFsys( ) {T2MOD |= (bTMR_CLK | bT2_CLK);C_T2=0;} //<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys
|
|||
|
#define mTimer2Clk4DivFsys( ) {T2MOD &= ~bTMR_CLK;T2MOD |= bT2_CLK;C_T2 = 0;}//<2F><>ʱ<EFBFBD><CAB1>,ʱ<><CAB1>=Fsys/4
|
|||
|
#define mTimer2CountClk( ) {C_T2 = 1;} //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,T2<54><32><EFBFBD>ŵ<EFBFBD><C5B5>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>Ч
|
|||
|
|
|||
|
//CH554 Timer2 <20><>ʼ(SS=1)/<2F><><EFBFBD><EFBFBD>(SS=0)
|
|||
|
#define mTimer2RunCTL( SS ) {TR2 = SS ? START : STOP;}
|
|||
|
#define mTimer2OutCTL( ) (T2MOD |= T2OE) //T2<54><32><EFBFBD><EFBFBD> Ƶ<><C6B5>TF2/2
|
|||
|
#define CAP1Alter( ) (PIN_FUNC |= bT2_PIN_X;) //CAP1<50><31>P10 ӳ<>䵽P14
|
|||
|
#define CAP2Alter( ) (PIN_FUNC |= bT2EX_PIN_X;) //CAP2<50><32>P11 ӳ<><D3B3>RST
|
|||
|
|
|||
|
/*******************************************************************************
|
|||
|
* Function Name : mTimer_x_ModInit(UINT8 x ,UINT8 mode)
|
|||
|
* Description : CH554<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>xģʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* Input : UINT8 mode,Timerģʽѡ<EFBFBD><EFBFBD>
|
|||
|
0<EFBFBD><EFBFBD>ģʽ0<EFBFBD><EFBFBD>13λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>TLn<EFBFBD>ĸ<EFBFBD>3λ<EFBFBD><EFBFBD>Ч
|
|||
|
1<EFBFBD><EFBFBD>ģʽ1<EFBFBD><EFBFBD>16λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
|
|||
|
2<EFBFBD><EFBFBD>ģʽ2<EFBFBD><EFBFBD>8λ<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
|
|||
|
3<EFBFBD><EFBFBD>ģʽ3<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8λ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD> Timer0
|
|||
|
3<EFBFBD><EFBFBD>ģʽ3<EFBFBD><EFBFBD>Timer1ֹͣ
|
|||
|
UINT8 x <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD> 0 1 2
|
|||
|
* Output : None
|
|||
|
* Return : <EFBFBD>ɹ<EFBFBD> SUCCESS
|
|||
|
ʧ<EFBFBD><EFBFBD> FAIL
|
|||
|
*******************************************************************************/
|
|||
|
UINT8 mTimer_x_ModInit(UINT8 x ,UINT8 mode);
|
|||
|
|
|||
|
/*******************************************************************************
|
|||
|
* Function Name : mTimer_x_SetData(UINT8 x,UINT16 dat)
|
|||
|
* Description : CH554Timer
|
|||
|
* Input : UINT16 dat;<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|||
|
UINT8 x <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD> 0 1 2
|
|||
|
* Output : None
|
|||
|
* Return : None
|
|||
|
*******************************************************************************/
|
|||
|
void mTimer_x_SetData(UINT8 x,UINT16 dat);
|
|||
|
|
|||
|
/*******************************************************************************
|
|||
|
* Function Name : CAP2Init(UINT8 mode)
|
|||
|
* Description : CH554<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2 T2EX<EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD>ʼ<EFBFBD><EFBFBD>
|
|||
|
UINT8 mode,<EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD>ģʽѡ<EFBFBD><EFBFBD>
|
|||
|
0:T2ex<EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
1:T2ex<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>
|
|||
|
3:T2ex<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* Input : None
|
|||
|
* Output : None
|
|||
|
* Return : None
|
|||
|
*******************************************************************************/
|
|||
|
void CAP2Init(UINT8 mode);
|
|||
|
|
|||
|
/*******************************************************************************
|
|||
|
* Function Name : CAP1Init(UINT8 mode)
|
|||
|
* Description : CH554<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2 T2<EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD>ʼ<EFBFBD><EFBFBD>T2
|
|||
|
UINT8 mode,<EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD>ģʽѡ<EFBFBD><EFBFBD>
|
|||
|
0:T2ex<EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
1:T2ex<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>
|
|||
|
3:T2ex<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* Input : None
|
|||
|
* Output : None
|
|||
|
* Return : None
|
|||
|
*******************************************************************************/
|
|||
|
void CAP1Init(UINT8 mode);
|