You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
397 lines
16 KiB
397 lines
16 KiB
/*********************************************************
|
|
*Copyright (C), 2015, Shanghai Eastsoft Microelectronics Co., Ltd.
|
|
*文件名: lib_timer.h
|
|
*作 者: AE Team
|
|
*版 本: V1.01
|
|
*日 期: 2021/06/09
|
|
*描 述: Timer模块库函数头文件
|
|
*备 注:
|
|
本软件仅供学习和演示使用,对用户直接引用代码所带来的风险或后果不承担任何法律责任。
|
|
**********************************************************/
|
|
#ifndef __LIB_TIMER_H__
|
|
#define __LIB_TIMER_H__
|
|
|
|
#include <stdint.h>
|
|
#include "ES8P5066.h"
|
|
#include "type.h"
|
|
#include "system_ES8P5066.h"
|
|
|
|
|
|
/* 时钟源选择 */
|
|
typedef enum
|
|
{
|
|
|
|
T16Nx_ClkS_PCLK = 0x0, /* 时钟源选择:内部PCLK */
|
|
T16Nx_ClkS_CK0 = 0x1, /* 时钟源选择:外部CK0时钟输入 */
|
|
T16Nx_ClkS_CK1 = 0x2, /* 时钟源选择:外部CK1时钟输入 */
|
|
} T16Nx_TYPE_CLKS;
|
|
|
|
/* 外部时钟计数边沿选择 */
|
|
typedef enum
|
|
{
|
|
T16Nx_EDGE_Rise = 0x0, /* 外部时钟计数边沿选择:上升沿 */
|
|
T16Nx_EDGE_Fall = 0x1, /* 外部时钟计数边沿选择:下降沿 */
|
|
T16Nx_EDGE_All = 0x2, /* 外部时钟计数边沿选择:所有 */
|
|
} T16Nx_TYPE_EDGE;
|
|
|
|
|
|
/* 工作模式选择 */
|
|
typedef enum
|
|
{
|
|
T16Nx_Mode_TC0 = 0x0, /* 工作模式:定时、计数模式 */
|
|
T16Nx_Mode_TC1 = 0x1, /* 工作模式:定时、计数模式 */
|
|
T16Nx_Mode_CAP = 0x2, /* 工作模式:捕捉模式 */
|
|
T16Nx_Mode_PWM = 0x3, /* 工作模式:调制模式 */
|
|
} T16Nx_TYPE_MODE;
|
|
|
|
/* T16Nx初始化配置结构体定义 */
|
|
typedef struct
|
|
{
|
|
T16Nx_TYPE_CLKS T16Nx_ClkS; /* 时钟源选择 */
|
|
TYPE_FUNCEN T16Nx_SYNC; /* 外部时钟同步 */
|
|
T16Nx_TYPE_EDGE T16Nx_EDGE; /* 外部时钟计数边沿选择 */
|
|
T16Nx_TYPE_MODE T16Nx_Mode; /* 工作模式选择 */
|
|
unsigned int T16Nx_PREMAT; /* 设置预分频比,范围 :0x00-0xFF */
|
|
} T16Nx_BaseInitStruType;
|
|
|
|
/* 捕捉次数控制 */
|
|
typedef enum
|
|
{
|
|
T16Nx_CapTime_1 = 0x0, /* 捕捉次数控制:1 */
|
|
T16Nx_CapTime_2 = 0x1, /* 捕捉次数控制:2 */
|
|
T16Nx_CapTime_3 = 0x2, /* 捕捉次数控制:3 */
|
|
T16Nx_CapTime_4 = 0x3, /* 捕捉次数控制:4 */
|
|
T16Nx_CapTime_5 = 0x4, /* 捕捉次数控制:5 */
|
|
T16Nx_CapTime_6 = 0x5, /* 捕捉次数控制:6 */
|
|
T16Nx_CapTime_7 = 0x6, /* 捕捉次数控制:7 */
|
|
T16Nx_CapTime_8 = 0x7, /* 捕捉次数控制:8 */
|
|
T16Nx_CapTime_9 = 0x8, /* 捕捉次数控制:9 */
|
|
T16Nx_CapTime_10 = 0x9, /* 捕捉次数控制:10 */
|
|
T16Nx_CapTime_11 = 0xA, /* 捕捉次数控制:11 */
|
|
T16Nx_CapTime_12 = 0xB, /* 捕捉次数控制:12 */
|
|
T16Nx_CapTime_13 = 0xC, /* 捕捉次数控制:13 */
|
|
T16Nx_CapTime_14 = 0xD, /* 捕捉次数控制:14 */
|
|
T16Nx_CapTime_15 = 0xE, /* 捕捉次数控制:15 */
|
|
T16Nx_CapTime_16 = 0xF, /* 捕捉次数控制:16 */
|
|
} T16Nx_TYPE_CAPT;
|
|
|
|
/* 捕捉功能初始化结构体定义 */
|
|
typedef struct
|
|
{
|
|
TYPE_FUNCEN T16Nx_CAPCAPL1; /* 捕捉1重载计数器使能 */
|
|
|
|
TYPE_FUNCEN T16Nx_CAPCAPL0; /* 捕捉0重载计数器使能 */
|
|
|
|
TYPE_FUNCEN T16Nx_CapRise; /* 上升沿捕捉使能 */
|
|
|
|
TYPE_FUNCEN T16Nx_CapFall; /* 下降沿捕捉使能 */
|
|
|
|
TYPE_FUNCEN T16Nx_CapIS0; /* 输入端口0使能 */
|
|
|
|
TYPE_FUNCEN T16Nx_CapIS1; /* 输入端口1使能 */
|
|
|
|
T16Nx_TYPE_CAPT T16Nx_CapTime; /* 捕捉次数控制 */
|
|
|
|
} T16Nx_CapInitStruType;
|
|
|
|
|
|
/* 匹配寄存器值匹配后的工作模式 */
|
|
typedef enum
|
|
{
|
|
T16Nx_Go_No = 0x0, /* 匹配寄存器值匹配后的工作模式:继续计数,不产生中断 */
|
|
T16Nx_Hold_Int = 0x1, /* 匹配寄存器值匹配后的工作模式:保持计数,产生中断 */
|
|
T16Nx_Clr_Int = 0x2, /* 匹配寄存器值匹配后的工作模式:清零并重新计数,产生中断 */
|
|
T16Nx_Go_Int = 0x3, /* 匹配寄存器值匹配后的工作模式:继续计数,产生中断 */
|
|
} T16Nx_TYPE_MATCON;
|
|
|
|
|
|
|
|
/* 中断配置 */
|
|
typedef enum
|
|
{
|
|
T16Nx_IT_MAT0 = 0x01, /* 匹配0中断 */
|
|
T16Nx_IT_MAT1 = 0x02, /* 匹配1中断 */
|
|
T16Nx_IT_MAT2 = 0x04, /* 匹配2中断 */
|
|
T16Nx_IT_MAT3 = 0x08, /* 匹配3中断 */
|
|
T16Nx_IT_TOP0 = 0x10, /* T16N_CNT0匹配计数器峰值中断 */
|
|
T16Nx_IT_TOP1 = 0x20, /* T16N_CNT1匹配计数器峰值中断 */
|
|
T16Nx_IT_CAP0 = 0x40, /* 输入端口T16NxIN0输入捕捉中断 */
|
|
T16Nx_IT_CAP1 = 0x80, /* 输入端口T16NxIN1输入捕捉中断 */
|
|
T16Nx_IT_PBK0 = 0x100, /* PWM通道0刹车中断 */
|
|
T16Nx_IT_PBK1 = 0x200, /* PWM通道1刹车中断 */
|
|
} T16Nx_TYPE_IT;
|
|
|
|
|
|
/* PWM输出极性类型 */
|
|
typedef enum
|
|
{
|
|
POSITIVE = 0x00, /* 正极性 */
|
|
NEGATIVE = 0x01, /* 负极性 */
|
|
} T16Nx_PWMOUT_POLAR_Type;
|
|
|
|
/* PWM工作模式选择 */
|
|
typedef enum
|
|
{
|
|
T16Nx_PWMMode_INDEP = 0x0, /* 独立模式 */
|
|
T16Nx_PWMMode_SYNC = 0x2, /* 同步模式 */
|
|
T16Nx_PWMMode_COMPLE = 0x3, /* 互补模式 */
|
|
} T16Nx_PWMTYPE_MODE;
|
|
|
|
|
|
/* 调制功能初始化结构体定义 */
|
|
typedef struct
|
|
{
|
|
TYPE_FUNCEN T16Nx_MOE0; /* 输出端口0使能 */
|
|
TYPE_FUNCEN T16Nx_MOE1; /* 输出端口1使能 */
|
|
T16Nx_PWMOUT_POLAR_Type T16Nx_POL0; /* T16NxOUT0输出极性选择位 */
|
|
T16Nx_PWMOUT_POLAR_Type T16Nx_POL1; /* T16NxOUT1输出极性选择位 */
|
|
T16Nx_PWMTYPE_MODE T16Nx_PWMMODE; /* T16PWM输出模式选择 */
|
|
TYPE_FUNCEN PWMDZE; /* PWM互补模式死区使能 */
|
|
TYPE_FUNCEN REGBUFEN; /* 缓冲寄存器使能 */
|
|
} T16Nx_PWMInitStruType;
|
|
|
|
|
|
/* 匹配寄存器值匹配后输出端口的工作模式 */
|
|
typedef enum
|
|
{
|
|
T16Nx_Out_Hold = 0x0, /* 匹配寄存器值匹配后输出端口的工作模式:保持 */
|
|
T16Nx_Out_Low = 0x1, /* 匹配寄存器值匹配后输出端口的工作模式:清0 */
|
|
T16Nx_Out_High = 0x2, /* 匹配寄存器值匹配后输出端口的工作模式:置1 */
|
|
T16Nx_Out_Switch = 0x3, /* 匹配寄存器值匹配后输出端口的工作模式:取反 */
|
|
} T16Nx_TYPE_MATOUT;
|
|
|
|
/* PWM刹车输出电平 */
|
|
typedef enum
|
|
{
|
|
PWMBKOUT_Low = 0,
|
|
PWMBKOUT_High = 1,
|
|
} T16Nx_PWMBKOUT_LEVEl;
|
|
|
|
|
|
/* PWM刹车信号极性选择 */
|
|
typedef enum
|
|
{
|
|
PWMBKP_High = 0,
|
|
PWMBKP_Low = 1,
|
|
} T16Nx_PWMBKP_LEVEl;
|
|
|
|
|
|
|
|
/*PWM输出刹车控制*/
|
|
typedef struct
|
|
{
|
|
TYPE_FUNCEN T16Nx_PWMBK_EN0; /* PWM通段0刹车使能 */
|
|
TYPE_FUNCEN T16Nx_PWMBK_EN1; /* PWM通段0刹车使能 */
|
|
T16Nx_PWMBKOUT_LEVEl T16Nx_PWMBK_L0; /* PWM通道0刹车输出电平选择 */
|
|
T16Nx_PWMBKOUT_LEVEl T16Nx_PWMBK_L1; /* PWM通道1刹车输出电平选择 */
|
|
T16Nx_PWMBKP_LEVEl T16Nx_PWMBK_P0; /* PWM通道0刹车信号极性选择 */
|
|
T16Nx_PWMBKP_LEVEl T16Nx_PWMBK_P1; /* PWM通道1刹车信号极性选择 */
|
|
} T16Nx_PWMBK_Type;
|
|
|
|
|
|
|
|
/*PWM调制模式ADC触发使能控制*/
|
|
|
|
typedef enum
|
|
{
|
|
T16Nx_P0MAT0 = 0x02, /* PWM通道0匹配0触发使能 */
|
|
T16Nx_P0MAT1 = 0x04, /* PWM通道0匹配1触发使能 */
|
|
T16Nx_P0TOP0 = 0x08, /* PWM通道0峰值0触发使能 */
|
|
T16Nx_P1MAT2 = 0x20, /* PWM通道1匹配2触发使能 */
|
|
T16Nx_P1MAT3 = 0x40, /* PWM通道1匹配3触发使能 */
|
|
T16Nx_P1TOP1 = 0x80, /* PWM通道1峰值1触发使能 */
|
|
} T16Nx_PWMTRE_type;
|
|
|
|
|
|
|
|
|
|
/****************************************32位时钟数据结构定义*********************************/
|
|
|
|
|
|
/* 时钟源选择 */
|
|
typedef enum
|
|
{
|
|
|
|
T32Nx_ClkS_PCLK = 0x0, /* 时钟源选择:内部PCLK */
|
|
T32Nx_ClkS_CK0 = 0x1, /* 时钟源选择:外部CK0时钟输入 */
|
|
T32Nx_ClkS_CK1 = 0x2, /* 时钟源选择:外部CK1时钟输入 */
|
|
} T32Nx_TYPE_CLKS;
|
|
|
|
/* 外部时钟计数边沿选择 */
|
|
typedef enum
|
|
{
|
|
T32Nx_EDGE_Rise = 0x0, /* 外部时钟计数边沿选择:上升沿 */
|
|
T32Nx_EDGE_Fall = 0x1, /* 外部时钟计数边沿选择:下降沿 */
|
|
T32Nx_EDGE_All = 0x2, /* 外部时钟计数边沿选择:所有 */
|
|
} T32Nx_TYPE_EDGE;
|
|
|
|
|
|
/* 工作模式选择 */
|
|
typedef enum
|
|
{
|
|
T32Nx_Mode_TC0 = 0x0, /* 工作模式:定时、计数模式 */
|
|
T32Nx_Mode_TC1 = 0x1, /* 工作模式:定时、计数模式 */
|
|
T32Nx_Mode_CAP = 0x2, /* 工作模式:捕捉模式 */
|
|
T32Nx_Mode_PWM = 0x3, /* 工作模式:调制模式 */
|
|
} T32Nx_TYPE_MODE;
|
|
|
|
/* T32Nx初始化配置结构体定义 */
|
|
typedef struct
|
|
{
|
|
T32Nx_TYPE_CLKS T32Nx_ClkS; /* 时钟源选择 */
|
|
TYPE_FUNCEN T32Nx_SYNC; /* 外部时钟同步 */
|
|
T32Nx_TYPE_EDGE T32Nx_EDGE; /* 外部时钟计数边沿选择 */
|
|
T32Nx_TYPE_MODE T32Nx_Mode; /* 工作模式选择 */
|
|
unsigned int T32Nx_PREMAT; /* 设置预分频比,范围 :1-256 */
|
|
} T32Nx_BaseInitStruType;
|
|
|
|
|
|
|
|
/* 捕捉次数控制 */
|
|
typedef enum
|
|
{
|
|
T32Nx_CapTime_1 = 0x0, /* 捕捉次数控制:1 */
|
|
T32Nx_CapTime_2 = 0x1, /* 捕捉次数控制:2 */
|
|
T32Nx_CapTime_3 = 0x2, /* 捕捉次数控制:3 */
|
|
T32Nx_CapTime_4 = 0x3, /* 捕捉次数控制:4 */
|
|
T32Nx_CapTime_5 = 0x4, /* 捕捉次数控制:5 */
|
|
T32Nx_CapTime_6 = 0x5, /* 捕捉次数控制:6 */
|
|
T32Nx_CapTime_7 = 0x6, /* 捕捉次数控制:7 */
|
|
T32Nx_CapTime_8 = 0x7, /* 捕捉次数控制:8 */
|
|
T32Nx_CapTime_9 = 0x8, /* 捕捉次数控制:9 */
|
|
T32Nx_CapTime_10 = 0x9, /* 捕捉次数控制:10 */
|
|
T32Nx_CapTime_11 = 0xA, /* 捕捉次数控制:11 */
|
|
T32Nx_CapTime_12 = 0xB, /* 捕捉次数控制:12 */
|
|
T32Nx_CapTime_13 = 0xC, /* 捕捉次数控制:13 */
|
|
T32Nx_CapTime_14 = 0xD, /* 捕捉次数控制:14 */
|
|
T32Nx_CapTime_15 = 0xE, /* 捕捉次数控制:15 */
|
|
T32Nx_CapTime_16 = 0xF, /* 捕捉次数控制:16 */
|
|
} T32Nx_TYPE_CAPT;
|
|
|
|
/* 捕捉功能初始化结构体定义 */
|
|
typedef struct
|
|
{
|
|
TYPE_FUNCEN T32Nx_CAPCAPL1; /* 捕捉1重载计数器使能 */
|
|
TYPE_FUNCEN T32Nx_CAPCAPL0; /* 捕捉0重载计数器使能 */
|
|
TYPE_FUNCEN T32Nx_CapRise; /* 上升沿捕捉使能 */
|
|
TYPE_FUNCEN T32Nx_CapFall; /* 下降沿捕捉使能 */
|
|
TYPE_FUNCEN T32Nx_CapIS0; /* 输入端口0使能 */
|
|
TYPE_FUNCEN T32Nx_CapIS1; /* 输入端口1使能 */
|
|
T32Nx_TYPE_CAPT T32Nx_CapTime; /* 捕捉次数控制 */
|
|
} T32Nx_CapInitStruType;
|
|
|
|
/* 调制功能初始化结构体定义 */
|
|
typedef struct
|
|
{
|
|
TYPE_FUNCEN T32Nx_MOE0; /* 输出端口0使能 */
|
|
TYPE_FUNCEN T32Nx_MOE1; /* 输出端口1使能 */
|
|
} T32Nx_PWMInitStruType;
|
|
|
|
/* 匹配寄存器值匹配后的工作模式 */
|
|
typedef enum
|
|
{
|
|
T32Nx_Go_No = 0x0, /* 匹配寄存器值匹配后的工作模式:继续计数,不产生中断 */
|
|
T32Nx_Hold_Int = 0x1, /* 匹配寄存器值匹配后的工作模式:保持计数,产生中断 */
|
|
T32Nx_Clr_Int = 0x2, /* 匹配寄存器值匹配后的工作模式:清零并重新计数,产生中断 */
|
|
T32Nx_Go_Int = 0x3, /* 匹配寄存器值匹配后的工作模式:继续计数,产生中断 */
|
|
} T32Nx_TYPE_MATCON;
|
|
|
|
/* 匹配寄存器值匹配后输出端口的工作模式 */
|
|
typedef enum
|
|
{
|
|
T32Nx_Out_Hold = 0x0, /* 匹配寄存器值匹配后输出端口的工作模式:保持 */
|
|
T32Nx_Out_Low = 0x1, /* 匹配寄存器值匹配后输出端口的工作模式:清0 */
|
|
T32Nx_Out_High = 0x2, /* 匹配寄存器值匹配后输出端口的工作模式:置1 */
|
|
T32Nx_Out_Switch = 0x3, /* 匹配寄存器值匹配后输出端口的工作模式:取反 */
|
|
} T32Nx_TYPE_MATOUT;
|
|
|
|
|
|
/* 中断配置 */
|
|
typedef enum
|
|
{
|
|
T32Nx_IT_MAT0 = 0x01, /* 匹配0中断 */
|
|
T32Nx_IT_MAT1 = 0x02, /* 匹配1中断 */
|
|
T32Nx_IT_MAT2 = 0x04, /* 匹配2中断 */
|
|
T32Nx_IT_MAT3 = 0x08, /* 匹配3中断 */
|
|
T32Nx_IT_IT = 0x10, /* T32N匹配0xFFFFFFFF中断使能位 */
|
|
T32Nx_IT_CAP0 = 0x20, /* T32N_CNT0匹配计数器峰值中断 */
|
|
T32Nx_IT_CAP1 = 0x40, /* T32N_CNT0匹配计数器峰值中断 */
|
|
} T32Nx_TYPE_IT;
|
|
|
|
|
|
/*********************T16Nx模块函数声明 *********************/
|
|
void T16Nx_BaseInit(T16N_TypeDef *T16Nx, T16Nx_BaseInitStruType *T16Nx_BaseInitStruct);
|
|
void T16Nx_CapInit(T16N_TypeDef *T16Nx, T16Nx_CapInitStruType *T16Nx_CapInitStruct);
|
|
void T16Nx_PMWOutInit(T16N_TypeDef *T16Nx, T16Nx_PWMInitStruType *T16Nx_PWMInitStruct);
|
|
void T16Nx_PWMPDZ_Config(T16N_TypeDef *T16Nx, unsigned int PWM_PDZ_data);
|
|
void T16Nx_MAT0ITConfig(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATCON Type);
|
|
void T16Nx_MAT1ITConfig(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATCON Type);
|
|
void T16Nx_MAT2ITConfig(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATCON Type);
|
|
void T16Nx_MAT3ITConfig(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATCON Type);
|
|
void T16Nx_MAT0Out0Config(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATOUT Type);
|
|
void T16Nx_MAT1Out0Config(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATOUT Type);
|
|
void T16Nx_MAT2Out1Config(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATOUT Type);
|
|
void T16Nx_MAT3Out1Config(T16N_TypeDef *T16Nx, T16Nx_TYPE_MATOUT Type);
|
|
void T16Nx_ITConfig(T16N_TypeDef *T16Nx, T16Nx_TYPE_IT Type, TYPE_FUNCEN NewState);
|
|
void T16Nx_SetCNT0(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetCNT1(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetPREMAT(T16N_TypeDef *T16Nx, uint8_t Value);
|
|
void T16Nx_SetPRECNT(T16N_TypeDef *T16Nx, uint8_t Value);
|
|
void T16Nx_SetMAT0(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetMAT1(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetMAT2(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetMAT3(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetTOP0(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
void T16Nx_SetTOP1(T16N_TypeDef *T16Nx, uint16_t Value);
|
|
uint16_t T16Nx_GetMAT0(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetMAT1(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetMAT2(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetMAT3(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetTOP0(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetTOP1(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetCNT0(T16N_TypeDef *T16Nx);
|
|
uint16_t T16Nx_GetCNT1(T16N_TypeDef *T16Nx);
|
|
FlagStatus T16Nx_GetFlagStatus(T16N_TypeDef *T16Nx, T16Nx_TYPE_IT T16Nx_Flag);
|
|
FlagStatus T16Nx_GetITStatus(T16N_TypeDef *T16Nx, T16Nx_TYPE_IT T16Nx_Flag);
|
|
void T16Nx_ClearITPendingBit(T16N_TypeDef *T16Nx, T16Nx_TYPE_IT TIM_Flag);
|
|
void T16Nx_Enable(T16N_TypeDef *T16Nx);
|
|
void T16Nx_Disable(T16N_TypeDef *T16Nx);
|
|
void T16Nx_PWMBK_Config(T16N_TypeDef *T16Nx, T16Nx_PWMBK_Type *type);
|
|
FlagStatus T16Nx_GetPWMBKF(T16N_TypeDef *T16Nx);
|
|
void T16Nx_ResetPWMBKF(T16N_TypeDef *T16Nx);
|
|
void T16Nx_PTR_Config(T16N_TypeDef *T16Nx, T16Nx_PWMTRE_type Type, TYPE_FUNCEN NewState);
|
|
|
|
/***************************32位定时器函数声明********************************/
|
|
|
|
void T32Nx_BaseInit(T32N_TypeDef *T32Nx, T32Nx_BaseInitStruType *T32Nx_BaseInitStruct);
|
|
void T32Nx_CapInit(T32N_TypeDef *T32Nx, T32Nx_CapInitStruType *T32Nx_CapInitStruct);
|
|
void T32Nx_PMWOutInit(T32N_TypeDef *T32Nx, T32Nx_PWMInitStruType *T32Nx_PWMInitStruct);
|
|
void T32Nx_MAT0ITConfig(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATCON Type);
|
|
void T32Nx_MAT1ITConfig(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATCON Type);
|
|
void T32Nx_MAT2ITConfig(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATCON Type);
|
|
void T32Nx_MAT3ITConfig(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATCON Type);
|
|
void T32Nx_MAT0Out0Config(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATOUT Type);
|
|
void T32Nx_MAT1Out0Config(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATOUT Type);
|
|
void T32Nx_MAT2Out1Config(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATOUT Type);
|
|
void T32Nx_MAT3Out1Config(T32N_TypeDef *T32Nx, T32Nx_TYPE_MATOUT Type);
|
|
void T32Nx_ITConfig(T32N_TypeDef *T32Nx, T32Nx_TYPE_IT Type, TYPE_FUNCEN NewState);
|
|
void T32Nx_SetCNT(T32N_TypeDef *T32Nx, uint32_t Value);
|
|
void T32Nx_SetPREMAT(T32N_TypeDef *T32Nx, uint8_t Value);
|
|
void T32Nx_SetPRECNT(T32N_TypeDef *T32Nx, uint8_t Value);
|
|
void T32Nx_SetMAT0(T32N_TypeDef *T32Nx, uint32_t Value);
|
|
void T32Nx_SetMAT1(T32N_TypeDef *T32Nx, uint32_t Value);
|
|
void T32Nx_SetMAT2(T32N_TypeDef *T32Nx, uint32_t Value);
|
|
void T32Nx_SetMAT3(T32N_TypeDef *T32Nx, uint32_t Value);
|
|
uint32_t T32Nx_GetMAT0(T32N_TypeDef *T32Nx);
|
|
uint32_t T32Nx_GetMAT1(T32N_TypeDef *T32Nx);
|
|
uint32_t T32Nx_GetMAT2(T32N_TypeDef *T32Nx);
|
|
uint32_t T32Nx_GetMAT3(T32N_TypeDef *T32Nx);
|
|
uint32_t T32Nx_GetCNT(T32N_TypeDef *T32Nx);
|
|
FlagStatus T32Nx_GetFlagStatus(T32N_TypeDef *T32Nx, T32Nx_TYPE_IT T32Nx_Flag);
|
|
FlagStatus T32Nx_GetITStatus(T32N_TypeDef *T32Nx, T32Nx_TYPE_IT T32Nx_Flag);
|
|
void T32Nx_ClearITPendingBit(T32N_TypeDef *T32Nx, T32Nx_TYPE_IT TIM_Flag);
|
|
void T32Nx_Enable(T32N_TypeDef *T32Nx);
|
|
void T32Nx_Disable(T32N_TypeDef *T32Nx);
|
|
void BUZC_Frequence(uint32_t Frequence, TYPE_FUNCEN sys_buz);
|
|
|
|
#endif
|