打印
[技术问答]

新唐Nano130 PWM抖动的问题

[复制链接]
3300|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yytpy2008|  楼主 | 2013-9-2 10:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在学习新唐nano130,发现PWM 有抖动的情况。附件所示:程序如下:请高人们解析:
int32_t main (void)
{
        S_DRVPWM_TIME_DATA_T sPt;
        ////STR_PDMA_T sPDMA;
        
        uint8_t u8Timer;
      
        int32_t i32TestLoop = 1;
         uint8_t u8ItemOK;
        /* Enable PWM clock */
        PWM_Init(0);
      
        /* Set PWM pins */
        GCR->PA_H_MFP = (GCR->PA_H_MFP & ~(PA12_MFP_MASK | PA13_MFP_MASK | PA15_MFP_MASK)) |
      PA12_MFP_PWM0_CH0 | PA13_MFP_PWM0_CH1 | PA15_MFP_PWM0_CH3;
      GCR->PB_H_MFP = (GCR->PB_H_MFP & ~PB11_MFP_MASK) | PB11_MFP_PWM1_CH0;
       GCR->PE_L_MFP = (GCR->PE_L_MFP & ~PE0_MFP_MASK) | PE0_MFP_PWM1_CH2;
  

       while (i32TestLoop)
             {
                 u8ItemOK = 1;
                 g_u16Frequency = 100;
                if (i32TestLoop && u8ItemOK)
                 {
                 g_u32Pulse = 0;
                 g_u8PWMCount = 1;
                 /* PWM Timer property */
                 /*
                  * clock = 12MHz / 2 = 6Mhz.
                  * CN = clock / freq - 1
                  */
                 sPt.u8Mode = PWM_CTL_CHMOD_AUTO_RELOAD;
                 sPt.u8PreScale = 1;  // actually 1 + 1
                 sPt.u8Div = PWM_CLKSEL_CLKSEL_DIV1;
                 sPt.u32Cn = 6000000 / g_u16Frequency - 1;
                 sPt.u16Cm = sPt.u32Cn / 2;    // 50% duty ratio
                 sPt.u8Inv = 0;   // Disable inverter
                 u8Timer = 0;

                 /* Set PWM Timer0 Configuration */
                 PWM_SetClk(u8Timer, &sPt);
                 /* Enable Output for PWM Timer0 */
                 PWM_ConfigOutput(u8Timer, 1);
                 /* Enable Interrupt Sources of PWM Timer0 and install call back function */
                 //// PWM_EnableInt(u8Timer);
                 /* Enable the PWM Timer 0 */
                 PWM_Enable(u8Timer);
                 while (g_u8PWMCount);
                  while(1);
                            }
                        }
                     
                }
               

VID_20130902_092700.zip

2.65 MB

沙发
奔跑的牛| | 2013-9-2 12:00 | 只看该作者
你说的 抖动是指?波形图贴个看看

使用特权

评论回复
板凳
yytpy2008|  楼主 | 2013-9-2 14:13 | 只看该作者
附件里面是压缩包,里面有视频。请解压之后观看。

使用特权

评论回复
地板
i2121| | 2013-9-2 20:14 | 只看该作者
用他们BSP里面 样例代码测呗 。 应该是你寄存器设置问题

使用特权

评论回复
5
缥缈九哥| | 2013-9-3 10:04 | 只看该作者
不知道 抖动是什么意思。

使用特权

评论回复
6
从小木丁丁| | 2013-12-24 15:56 | 只看该作者
怎么个抖动法,波形抖动还是什么抖动?

使用特权

评论回复
7
mintspring| | 2015-2-28 15:41 | 只看该作者
抖动是需要外部电路滤波吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

75

帖子

1

粉丝