Files
2025-08-31 21:43:17 +08:00

70 lines
1.5 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef __PWM_H__
#define __PWM_H__
#include "common.h"
#define PWM_DUTY_MAX 10000
typedef enum
{
//PWMA和PWMB是两组不同的PWM
//以下是PWMA通道。
//同一组PWM同一时刻只能有同一个PWM输出。
//例如:PWMA_CH1P_P10 和 PWMA_CH1N_P11不能一起输出。
PWMA_CH1P_P10 = 0x00,PWMA_CH1N_P11,
PWMA_CH1P_P20, PWMA_CH1N_P21,
PWMA_CH1P_P60, PWMA_CH1N_P61,
PWMA_CH2P_P12 = 0x10,//该引脚已做 USB 内核电源稳压脚
PWMA_CH2N_P13,
PWMA_CH2P_P22, PWMA_CH2N_P23,
PWMA_CH2P_P62, PWMA_CH2N_P63,
PWMA_CH3P_P14 = 0x20,PWMA_CH3N_P15,
PWMA_CH3P_P24, PWMA_CH3N_P25,
PWMA_CH3P_P64, PWMA_CH3N_P65,
PWMA_CH4P_P16 = 0x30,PWMA_CH4N_P17,
PWMA_CH4P_P26, PWMA_CH4N_P27,
PWMA_CH4P_P66, PWMA_CH4N_P67,
PWMA_CH4P_P34, PWMA_CH4N_P33,
//以下是PWMB通道。
//同一组PWM同一时刻只能有同一个PWM输出。
//例如:PWMB_CH1_P20 和 PWMB_CH1_P17 不能同时输出
//但是不同的通道可以同一时刻输出。
//例如:PWMB_CH1_P20 和 PWMB_CH2_P21可以同时输出
PWMB_CH1_P20 = 0x40,
PWMB_CH1_P17,
PWMB_CH1_P00,
PWMB_CH1_P74,
PWMB_CH2_P21 = 0x50,
PWMB_CH2_P54, //该引脚为复位引脚
PWMB_CH2_P01,
PWMB_CH2_P75,
PWMB_CH3_P22 = 0x60,
PWMB_CH3_P33,
PWMB_CH3_P02,
PWMB_CH3_P76,
PWMB_CH4_P23 = 0x70,
PWMB_CH4_P34,
PWMB_CH4_P03,
PWMB_CH4_P77,
}PWMCH_enum;
void pwm_init(PWMCH_enum pwmch,uint32 freq, uint32 duty);
void pwm_duty(PWMCH_enum pwmch, uint32 duty);
void pwm_freq(PWMCH_enum pwmch, uint32 freq, uint32 duty);
#endif