全部文档
OneOS简介 硬件支持 快速开发指南 编译构造工具 API参考文档 高级语言 用户编程手册 应用笔记 FAQ

Pulse Encoder设备用户开发


基础BSP配置--以STM32为例

工程及使用说明

如果在提供的OneOS源码中已经有适合的工程DEMO工程,则可以直接使用;如果没有请参照快速上手中的操作指南,新建一个合适的工程。 STM32的脉冲编码器硬件接口依赖于定时器实现,在配置时需要配置好定时器的脉冲编码器功能。定时器配置为脉冲编码器功能后,将只做脉冲编码器,不再支持通用定时器功能。

使用STM32CubeMX配置硬件

  1. 打开oneos\projects\xxxxx(project文件夹)\board\CubeMX_Config下的CUBE工程文件;

  2. 在CUBE工程中进行Pulse Encoder配置,如下图所示:

encoder_cube

encoder_cube_nvic

注意事项: i. 请根据实际的编码器类型进行正确的配置,保证计数准确性。 ii. 编码器使用时必须开启外定时器的更新中断,否则编码器计数无法累计。

配置和生成工程

  1. 点击Clock Configuration检查时钟配置,然后点击GENARATE CODE生成STM32CubeMX工程代码;
  2. 在对应的oneos\projects\xxxxx(project文件夹)目录下打开OneOS-Cube工具,在命令行输入menuconfig打开可视化配置界面;如下图示,通过空格或向右方向键选择(Top) → Drivers→ MISC下的Using Pulse Encoder device drivers选项;
    (Top) → Drivers→ MISC
                                       OneOS Configuration
    [*] Using generic GPIO device drivers
    [*] Using push button device drivers
    [*] Using led device drivers
    [ ] Using buzzer device drivers
    [ ] Using ADC device drivers
    [ ] Using DAC device drivers
    [ ] Using PWM device drivers
    [ ] Using Input Capture device drivers
    [*] Using Pulse Encoder device drivers
    
  3. 通过Esc退出配置界面,退出时选择保存。
  4. 在命令行输入scons --ide=mdk5构建工程;

工程编译及实现

  1. 打开对应的oneos\projects\xxxxx(project文件夹) 目录下的project.uvprojx工程文件;
  2. 在工程中将原有或自己编写的pulse encoder_test文件加入到application子文件夹中;
  3. 编译并下载工程,运行程序;
  4. 打开串口工具如xshell等,通信成功后,即可通过输入pulse_encoder_sample的测试指令;
  5. 通过串口可以收到当前的脉冲编码计数值;

results matching ""

    No results matching ""