62 lines
2.0 KiB
C
62 lines
2.0 KiB
C
//************************************************************
|
|
// Copyright (c) 深圳市赛元微电子有限公司
|
|
// 文件名称 : sc92f_timerx.h
|
|
// 作者 :
|
|
// 模块功能 : TIMER4固件库函数头文件
|
|
// 最后更正日期: 2021/01/18
|
|
// 版本 : V1.10000
|
|
// 说明 :该文件仅适用于SC92F系列芯片
|
|
//*************************************************************
|
|
|
|
#ifndef _sc92f_TIMER4_H_
|
|
#define _sc92f_TIMER4_H_
|
|
|
|
#include "sc92f.H"
|
|
|
|
typedef enum
|
|
{
|
|
TIM4_PRESSEL_FSYS_D12 = ((uint8_t)0x00), //TIMER4计数源来自系统时钟12分频
|
|
TIM4_PRESSEL_FSYS_D1 = ((uint8_t)0x01) //TIMER4计数源来自系统时钟
|
|
} TIM4_PresSel_TypeDef;
|
|
|
|
typedef enum
|
|
{
|
|
TIM4_MODE_TIMER = ((uint8_t)0x01), //TIMER2做定时器
|
|
TIM4_MODE_COUNTER = ((uint8_t)0x02) //TIMER2做计数器
|
|
} TIM4_CountMode_TypeDef;
|
|
|
|
typedef enum
|
|
{
|
|
TIM4_COUNTDIRECTION_UP = ((uint8_t)0x00), //向上计数模式
|
|
TIM4_COUNTDIRECTION_DOWN_UP = ((uint8_t)0x10) //向上/向下计数模式
|
|
} TIM4_CountDirection_TypeDef;
|
|
|
|
typedef enum
|
|
{
|
|
TIM4_FLAG_TF4 = (uint8_t)0x80, //中断标志位TF4
|
|
TIM4_FLAG_EXF4 = (uint8_t)0x40 //中断标志位EXF4
|
|
} TIM4_Flag_TypeDef;
|
|
|
|
typedef enum
|
|
{
|
|
TIM4_WORK_MODE0 = ((uint8_t)0x00), //TIMER4选择工作模式0
|
|
TIM4_WORK_MODE1 = ((uint8_t)0x01), //TIMER4选择工作模式1
|
|
TIM4_WORK_MODE3 = ((uint8_t)0x03), //TIMER4选择工作模式3
|
|
} TIM4_WorkMode_TypeDef;
|
|
|
|
void TIM4_DeInit();
|
|
void TIM4_PrescalerSelection(TIM4_PresSel_TypeDef TIM4_PrescalerSelection);
|
|
void TIM4_WorkMode1Config(uint16_t TIM4_SetCounter);
|
|
void TIM4_Cmd(FunctionalState NewState);
|
|
void TIM4_ITConfig(FunctionalState NewState, PriorityStatus Priority);
|
|
FlagStatus TIM4_GetFlagStatus(TIM4_Flag_TypeDef TIM4_Flag);
|
|
void TIM4_ClearFlag(TIM4_Flag_TypeDef TIM4_Flag);
|
|
|
|
void TIM4_TimeBaseInit(TIM4_CountMode_TypeDef TIM4_CountMode,
|
|
TIM4_CountDirection_TypeDef TIM4_CountDirection);
|
|
void TIM4_WorkMode0Config(uint16_t TIM4_SetCounter);
|
|
void TIM4_WorkMode3Config(uint16_t TIM4_SetCounter);
|
|
void TIM4_WorkModeConfig(TIM4_WorkMode_TypeDef TIM4_WorkMode, uint16_t TIM4_SetCounter);
|
|
void TIM4_SetEXEN4(FunctionalState NewState);
|
|
|
|
#endif |