TI Stellaris LM4 PWM输出问题

2019-08-06 17:08发布

void PWM0_Configure(void)
{
        //使能PWM外设
        SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM);
        //使能GPIO管脚
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD);
        //配置GPIO管脚的PWM复用功能
        GPIOPinConfigure(GPIO_PD2_WT3CCP0);
        //选择管脚作为硬件外设控制
        GPIOPinTypePWM(GPIO_PORTD_BASE,GPIO_PIN_2);       
        //设置PWM系统时钟
        SysCtlPWMClockSet(SYSCTL_PWMDIV_1);
        //配置pwm模块的工作模式
        PWMGenConfigure(PWM_BASE,PWM_GEN_0,PWM_GEN_MODE_DOWN|PWM_GEN_MODE_NO_SYNC);
        //PWM发生器周期配置
        //IN this case you get: (1/250Hz)*16MHz=64000 cycles.
        //T = 4(ms)
        PWMGenPeriodSet(PWM_BASE,PWM_GEN_0,64000);
        //设置输出PWM的高电平宽度,宽度值是PWM计数器的计时时钟数
        PWMPulseWidthSet(PWM_BASE,PWM_OUT_0,16000);
        //使能PWM输出管脚
        PWMOutputState(PWM_BASE,PWM_OUT_0_BIT,true);
        //开启PWM发生器的定时计数器
        PWMGenEnable(PWM_BASE,PWM_GEN_0);
}
以上是我PWM初始化的代码,用示波器检测输出信号,发现输出一直为高电平,调试了很久了,一直没找到原因,遇到类似情况的或者了解的可以交流下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
1988020566
1楼-- · 2019-08-06 20:09
 精彩回答 2  元偷偷看……
1988020566
2楼-- · 2019-08-06 23:08
不过应该使能引脚的时钟吧。
月无涯
3楼-- · 2019-08-07 03:53
1988020566 发表于 2013-5-7 11:50
不过应该使能引脚的时钟吧。

要将PD口的时钟使能?
1988020566
4楼-- · 2019-08-07 06:59
月无涯 发表于 2013-5-7 12:06
要将PD口的时钟使能?

感觉应该是,看你程序没有的吧。
1988020566
5楼-- · 2019-08-07 12:20
这个板子没有用过的。
qin552011373
6楼-- · 2019-08-07 17:05
 精彩回答 2  元偷偷看……

一周热门 更多>