云恒制造:一起来开发一个磁条机器人(四)

描述

接下来的两篇文章将介绍磁条机器人的算法开发部分。

这一篇主要介绍机器人主控的配置及部分算法思路

主控

这次机器人的主控芯片,我们选择的型号是STM32F103RCT6,这是意法半导体比较便宜的一款产品了,但用做我们这次的开发是足够的。在网上我们买了这个芯片的一个开发版,如图。

为了便于进行传感器的插入,我们配合这个开发版,还做了一块拓展版,这里就不贴出图片了。

管脚配置

为了使这块主控起到磁条机器人核心的作用,我们自然要对他进行管脚配置,使得这些管脚分别对应不同的传感器。

这里说明一下,管脚配置是根据拓展板的设计走的,因此以下配置是专属于我的配置。不过整体的思路都可以被参考

这里简述一下步骤哈

1.打开CubeMX软件,选择左上角的“File”——“New Project”,建造一个新的工程

云恒制造:一起来开发一个磁条机器人(四)

2.选择你的芯片类型,我的是STM32F103RCT6,双击确定

云恒制造:一起来开发一个磁条机器人(四)

3.上一个操作后会进入芯片编辑界面,界面的最右侧是我们的芯片。我们设置所有的管脚如下

PA0—TIM2_CH1(左电机)

PA1—TIM2_CH2(左电机)

PA2—USART2_TX (磁传感器)

PA3—USART2_RX(磁传感器)

PA6—TIM3_CH1(右电机)

PA7—TIM3_CH2(右电机)

PA9—USART1_TX(上位机控制命令)

PA10—USART1_RX(上位机控制命令)

PB6—TIM4_CH1(状态灯)

PB10—USART3_TX(RFID模块)

PB11—USART3_RX(RFID模块)

PC10—UART4_TX(左超声传感器)

PC11—UART4_RX(左超声传感器)

PC12—UART5_TX(左右超声传感器)

PD2—UART5_RX(右超声传感器)

这些管脚设置后,如图

云恒制造:一起来开发一个磁条机器人(四)

4.在左侧的小菜单中选择“Timers”中,将TIM2、TIM3和TIM4进行设置。全部的修改我都截图了,如下。

云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)

唯一有些特殊的就是状态灯的TIM4,需要额外的一项操作。可以参考我之前的这篇文章《stm32 CubeMX控制WS2812灯带(二)(Develop文章4.2)》,这里截出这项特殊的操作,请照做。

云恒制造:一起来开发一个磁条机器人(四)

执行完定时器的设定,我们可以看到这些管脚在右图变为了绿色,完成了设置。

云恒制造:一起来开发一个磁条机器人(四)

5.对USART1、USART2、USART3、UART4和UART5进行设置,下面贴出了UART4和UART5的设置图片。实际上需要注意的就是,USART1和USART2的波特率为115200,USART3、UART4和UART5的波特率是9600,将他们NVC Settings中的global interrupt的enable打钩,并将这几个的RX的GPIO Settings中的推挽模式设置为No pull-up and no pull-down。

云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)

6.将系统的时钟图更改,如下图

云恒制造:一起来开发一个磁条机器人(四)

7.对项目文件进行两项配置后,生成代码。

云恒制造:一起来开发一个磁条机器人(四)云恒制造:一起来开发一个磁条机器人(四)

项目配置

我们通过CubeMX的generate code按钮已经生成了全部的工程,生成后的工程文件树如下

云恒制造:一起来开发一个磁条机器人(四)

在keil软件中点击菜单栏的“魔法棒”,将Debug中的编译器更改为“CMSIS-DAP Debugger”

云恒制造:一起来开发一个磁条机器人(四)点击编译,由于是CubeMX生成的,整个项目是不会报错的 总结

这篇文章介绍了主控的管脚配置和项目,下一篇将介绍算法及代码

免责声明:文章内容来自互联网,本站仅提供信息存储空间服务,真实性请自行鉴别,本站不承担任何责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:云恒制造:一起来开发一个磁条机器人(四) https://www.bxbdf.com/a/19713.shtml

上一篇 2023-05-03 16:59:57
下一篇 2023-05-03 17:03:48

猜你喜欢

联系我们

在线咨询: QQ交谈

邮件:362039258#qq.com(把#换成@)

工作时间:周一至周五,10:30-16:30,节假日休息。