此篇为硬件篇,接上一篇“基于stm32的两轮自平衡小车2(原理篇)”。包含自行设计电路板原理图与PCB电路图的过程。详见目录。   目录   stm32管脚分配 硬件原理图 PCB电路图 最后效果图  

stm32管脚分配

  stm32命名规则   stm32可以通过其命名规则来区分各种型号的芯片,根据命名规则可以划分为七模块,具体描述如下表格:     本项目选择的主控是stm32f103c8t6(选型见基于stm32的两轮自平衡小车1(模块选型篇)),其GPIO口数量为48Pins,我们关注的主要资源是定时器,因为在项目中编码器模式捕获脉冲和PWM输出这两个关键的功能都是用定时器实现的。该主控内部集成3个通用定时器(TIM2-TIM4)和1个高级定时器(TIM1)。   管脚分配 这里先贴出几个相关技术文档: STM32F103C8T6-数据手册 pzi3 STM32F103C8T6–原理图M cpwa A4950电机驱动模块-Datasheet zlsd ATK-MPU6050六轴传感器模块用户手册 23d4   参考上面的技术文档,我的GPIO口分配如下(黑色部分为核心板已经集成了的GPIO口,红色部分为分配的GPIO口):     硬件原理图   根据GPIO口分配,硬件原理图如下图所示:     其中,因为手头上有两种MPU6050模块,于是为了调试顺利就设置了两种接口,即6脚MPU6050和8脚MPU6050,两者通过跳线帽接口实现转换;供电模块采用两组接口,即T型公头和圆形母头(需要公头接18650电池盒),分别如下图所示:       PCB电路图   PCB电路图如下图所示:     添加泪滴和敷铜效果:     最后效果图   3D效果如图所示:     焊接后效果图:     由于打板后焊接起来才发现了两个问题:开关位置没添加开关标识和A4950距离STM32主控过近,因此在PCB做了改动,而焊接的图是用以前保存的,这里需要注意一下。