📄 toya2_pdic_timer.c
字号:
/*
* @file toya2_pdic_timer.c
* @brief GPTimer Control
* @author 2005/06/27 Masatoshi Kawashima
* Copyright (C)SEIKO EPSON Corp. All Rights Reserved.
*/
/*=== Include =============================================================*/
#include "SPRDEF.h"
#include "reg_mx21.h"
#include "toya2_pdic_timer.h"
/*=== define =============================================================*/
#define TOYA2_TMR_CLK 16*1024*1024 /* Timer clock (16MHz)*/
#define TOYA2_TMR_1MS_CNT (TOYA2_TMR_CLK/1000) /* Timer counter value for 1ms */
/*=== const ==============================================================*/
unsigned int* cReg_TCTL[3] = {
(unsigned int*)(DMX21_REG_TCTL_BASE + DMX21_REG_GPT1_OFFSET),
(unsigned int*)(DMX21_REG_TCTL_BASE + DMX21_REG_GPT2_OFFSET),
(unsigned int*)(DMX21_REG_TCTL_BASE + DMX21_REG_GPT3_OFFSET)
} ;
/*=============================================================================
// Function_Name: TOYA2_GPTiemrInit
// description : Initialzie GPTimer
// argument : None
// return : None
// =============================================================================
*/
void TOYA2_GPTimerInit( void )
{
/* Set initial value for Timer1 - 3 */
*cReg_TCTL[0] = 0x00000212;
*cReg_TCTL[1] = 0x00000212;
*cReg_TCTL[2] = 0x00000212;
/* GPTimer1-3 Clock Enable */
rlMX21_PCCR1 |= 0x0E000000 ;
return;
}
/*=============================================================================
// Function_Name: TOYA2_GPTimerSetting
// description : Set GPTimer parameter
// argument : no: timer number (1 - 3)
// : setting: setting value
// return : None
// =============================================================================
*/
void TOYA2_GPTimerSetting( UCHAR no, ULONG setting )
{
/* Check Number */
if( (no<1) || (no>3) )
{
return;
}
*cReg_TCTL[no-1] = setting;
}
/*=============================================================================
// Function_Name: TOYA2_GPTimerStart
// description : Start GPTimer
// argument : no: Timer number (1 - 3)
// return : None
// =============================================================================
*/
void TOYA2_GPTimerStart( UCHAR no )
{
/* Check Number */
if( (no<1) || (no>3) )
{
return;
}
/* Timer Enable Bit On */
*cReg_TCTL[no-1] |= 1 ;
}
/*=============================================================================
// Function_Name: TOYA2_GPTimerStop
// description : Stop GPTimer
// argument : no: Timer Number (1 - 3)
// return : None
// =============================================================================
*/
void TOYA2_GPTimerStop( UCHAR no )
{
/* Check Number */
if( (no<1) || (no>3) )
{
return;
}
/* Timer Enable Bit On */
*cReg_TCTL[no-1] &= ~1 ;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -