zoukankan      html  css  js  c++  java
  • STM32CubeMx配置正交编码器遇到的问题

    配置时参考了这个哥们的方法:

    http://www.eemaker.com/stm32cubemx-encoder.html

    然后我的配置是这样的

    配置是没有问题。

    调用时出现了问题。

    由于配置完了,我担心它立即生效,怕影响运动,然后我就想配置完先把TIM3的时钟关闭:

    __HAL_RCC_TIM3_CLK_DISABLE();

    这样先不让它使能。

    谁知这样是不对的,即使后面我用了MX_TIM3_Init();对定时器进行再次彻底初始化,也是没有用,读到定时器值一直为0.

    后来细看了一下那哥们的文章:发现后面倒数2句

    HAL_TIM_Encoder_Start(&htim3, TIM_CHANNEL_ALL);

    没有用上!!

    于是去掉第一句__HAL_RCC_TIM3_CLK_DISABLE();加上HAL_TIM_Encoder_Start(&htim3, TIM_CHANNEL_ALL);

    OK!

    整个过程有点懵。

    后来细想,好像有明白HAL库的套路了:模块配置完并没有立即生效,尤其是定时器,还需要另外一句话来开启!

    嗯就这~

  • 相关阅读:
    VSCode使用笔记
    python调用C++
    ubuntu下编译C++程序
    使用swig在python中调用C++
    VSCode调试data层时自身的一个bug
    MNN配置
    金融业务中的命名惯例
    Clang的线程安全分析静态工具
    gdb命名记录
    开发小结-产品类
  • 原文地址:https://www.cnblogs.com/heywei/p/9820735.html
Copyright © 2011-2022 走看看