OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2646|回复: 0

红外寻迹小车走方格时如何准确计数?定时器的分类?什么是定时器、APB、预分频器?(第十六天)

[复制链接]

20

主题

76

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1028
金钱
1028
注册时间
2019-5-27
在线时间
142 小时
发表于 2019-9-16 21:21:21 | 显示全部楼层 |阅读模式
本帖最后由 清夏 于 2019-9-17 19:16 编辑

      红外寻迹小车走方格时如何准确计数?      前两天在做小车,硬件软件都搭好了,可就是在用红外模块走方格的时候红外计数老是出问题,导致小车停不到正确的位置。我估计可能是黑线太宽导致小车多计数,也是感觉自己学习的比较多了,就小试牛刀,改了一下小车记黑格的程序,还真的很管用(开心2333),具体程序如下:
u8 t=0;
while(1)
{
    if(HY==0)
       {
          delay_ms(1);
          if(HY==1)
              t++;
        }
}
我在这里解释一下这个函数的意思,我首先定义了一个t用来记走过黑线的个数(当然一开始当然t=0啦),然后 if(HY==0)就是说如果红外没有检测到黑线,就开始延时函数delay_ms(1)延时1ms,这时如果检测到了黑线也就是if(HY==1),那么就是走了一个黑线,t就+1,如果没有当然就重新开始了(因为我写的是死循环,会不断重复检测的),这样也就是说只要小车进入黑线t就会+1(小车在黑线里,或者从黑线出来都不满足一开始的HY==0,就会避开t,也就不会造成检测黑线次数过多啦),妙吧(滑稽,到最后他们却没用我的程序,改了一个原理相同的。。。行吧,毕竟现在没什么成绩,人微言轻的,慢慢来吧)。

      什么是定时器?
      顾名思义。。。定时器就是用来计时的(我也不信。。。可事实确实是这样)

      定时器的分类?
      对于STM32F103RCT6芯片来说,有两个高级定时器、四个通用定时器、两个基本定时器
高级定时器(TIM1、TIM8)带死区控制盒紧急刹车
通用定时器(TIM2~TIM5)定时计数、PWM输出、输入捕获、输出比较
基本定时器(TIM6、TIM7)主要用于驱动DAC

     通用定时器的功能?
1、有16位可编程预分频器,
2、4个独立通道:单脉冲模式输出、PWM输出、输入捕获、输出比较
3、可以产生中断

     













正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 05:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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