注册 登录
查看: 189|回复: 0

我做TPM计数的时候出现这种问题

[复制链接]
发表于 2014-8-21 10:27:52 | 显示全部楼层 |阅读模式
void main()
{
    uint16 count;
    printf("\n*****TPM 脉冲计数 测试*****\n");
    tpm_pwm_init(TPM0, TPM_CH0,1500,50);      //初始化 PWM
    tpm_pulse_init(TPM1,TPM_CLKIN0,TPM_PS_1); //初始化 TPM2 为脉冲累加,输入管脚为 TPM_CLKIN0_PIN ,分频系数为 1
    while(1)
    {
        tpm_pulse_clean(TPM1);                                  //清空脉冲计数器计算值(马上清空,这样才能保证计数值准确)
        pit_delay_ms(PIT0,1000);                                //利用 PIT 延时时间,LPTMR模块进行 计算,累加 FTM 产生的PWM脉冲
        count   =  tpm_pulse_get(TPM1);                         //保存脉冲计数器计算值
        printf("LPTMR脉冲计数为:%d\n",   count);                 //打印计数值
    }
}
如果我把(tpm_pwm_init(TPM0, TPM_CH0,1500,50);      //初始化 PWM)注释掉的话,就不能计数了,这是为什么。这句话跟计数无关啊。波形是用波形发生器给的。如果不注释的话就行。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部