打印

指南者通用定时器

[复制链接]
901|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
在定时器通用例程上面做了一个修改,测试一个20ms的脉宽,可是测试出来最低就是0.1S。
        while ( 1 )
        {
                if(TIM_ICUserValueStructure.Capture_FinishFlag == 1)
                {

                        // 计算高电平时间的计数器的值
                        time = TIM_ICUserValueStructure.Capture_Period * (GENERAL_TIM_PERIOD+1) +
                               (TIM_ICUserValueStructure.Capture_CcrValue+1);
                        printf ( "\r\n捕获寄存器的值:%d \r\n",time );
                        // 打印高电平脉宽时间
                        printf ( "\r\n测得高电平脉宽时间:%d.%d s\r\n",time/TIM_PscCLK,time%TIM_PscCLK );

                        TIM_ICUserValueStructure.Capture_FinishFlag = 0;                        
                }        
              else{
                        SOFT_DELAYON;
                GENERAL_TIM_CH1_EN_ON;
                        SOFT_DELAY;
                        GENERAL_TIM_CH1_EN_OFF;        
                }               
        }

使用特权

评论回复

相关帖子

沙发
tyw| | 2020-4-8 14:47 | 只看该作者
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

376

主题

377

帖子

0

粉丝