TM4C123GH6PM可以输出占空比1~10000可调的20KHZ方波吗?使用PWM模块是不行的,Timer的CCP可以吗?如果可以的话如何配置?
我这种配置不行,不能用ROM_TimerMatchSet函数改变占空比,请问我出错在哪里
ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_WTIMER1);
ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);
//配置引脚为定时器使用
ROM_GPIOPinConfigure(GPIO_PC6_WT1CCP0);
ROM_GPIOPinConfigure(GPIO_PC7_WT1CCP1);
ROM_GPIOPinTypeTimer(GPIO_PORTC_BASE,GPIO_PIN_6|GPIO_PIN_7);
ROM_TimerConfigure(WTIMER1_BASE, TIMER_CFG_SPLIT_PAIR | TIMER_CFG_A_PWM | TIMER_CFG_B_PWM );
//控制引脚的电平
ROM_TimerControlLevel(WTIMER1_BASE,TIMER_BOTH,0);
TimerControlTrigger(WTIMER1_BASE,TIMER_BOTH,1);
//ROM_TimerLoadSet(WTIMER1_BASE, TIMER_A,4000);
//ROM_TimerLoadSet(WTIMER1_BASE, TIMER_B,4000);
//使能定时器
ROM_TimerEnable(WTIMER1_BASE, TIMER_BOTH);
xyz549040622:
给你看手册中的一段话吧,占空比可调是可以实现的。
当定时器达到超时值时,在递增模式中重新加载 0x0,在递减模式中重新加载来自 GPTMTnILR 和 GPTMTnPR 寄存器的值。
你在这个之前,改变GPTMTnILR 和 GPTMTnPR的值可以了。我记得在别的芯片中,这个叫预加载寄存器的。