TIM_SetCounter(TIM2,0); 这个用法蒙圈了

2019-07-20 22:20发布

教程里说他是计数器寄存值,
看别人写的超声波程序  在外部中断里
void EXTI9_5_IRQHandler(void)
{
delay_us(10);                      //延时10us
     if(EXTI_GetITStatus(EXTI_Line7) != RESET)
{
TIM_SetCounter(TIM2,0);   //   这个函数用于计数个数存放的
TIM_Cmd(TIM2, ENABLE);                                             //开启时钟
UltrasonicWave_Distance=TIM_GetCounter(TIM2)*5*34/200.0;   //但是  这个是什么意思。在超声波使用手册里说测距=(高电平时间*(340m/s))/2  感觉矛盾呀
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
正点原子
1楼-- · 2019-07-21 04:00
帮顶....
穆罕潆荻旎
2楼-- · 2019-07-21 04:06
 精彩回答 2  元偷偷看……
Simon张
3楼-- · 2019-07-21 06:28
我推导的公式必须乘以1/2才能得到TIM_GetCounter(TIM2)*5*34/200.0
原子哥有没有 推导过程啊
强迫症受不了啊
傲世进
4楼-- · 2019-07-21 07:08
这个公式后除200.0是啥???
huzai007
5楼-- · 2019-07-21 08:40
UltrasonicWave_Distance=TIM_GetCounter(TIM2)*5*34/200.0;
这个公式中的5是什么东西?是来打酱油的吗?
huzai007
6楼-- · 2019-07-21 12:26
 精彩回答 2  元偷偷看……

一周热门 更多>