如何做一个平衡小车?
简介
这是一个基于STM32的平衡小车学习教程,适用于从未接触过嵌入式的同学。
STM32是意法半导体(STMicroelectronics)公司推出的一系列32位微控制器(MCU),可以毫无疑问称为嵌入式领域最经典的MCU之一。与此同时,b站有两门公认优秀的STM32教程,分别来自于keysKing、江协科技,于是乎学习STM32开发板成为了无数EE人的第一堂课。
-
难度:⭐⭐
-
先修基础:无
学习路径
C语言
学习目标是学会使用C的语法,至少能看懂指针。
教程:
练习:
STM32
能够驱动单片机基础外设,完成从撰写代码、烧录、实板验证的完整流程。
教程:
视频教程都深入浅出。两个教程的主要不同在于:
-
江科大的教程使用Keil作IDE基于标准库开发,但在实际开发中通常使用STMCubeMX和更加抽象的Hal库,所以学习江科大的教程还需要另外学习CubeMX和Hal库的使用,同时学习过程中会涉及更多底层原理,看懂可能需要一些电路基础。
-
keysking的教程使用CubeMX和Hal库开发,底层原理(尤其是电路方面)会更少侧重,并且使用的开发板为学习板而非最小系统板,个人认为可以一步到位,没必要使用学习板作为过渡。
个人学习顺序是先学完江协科技再过一遍keysking。
微积分
在电机控制部分,需要理解PID原理。
平衡小车
教程:
基于HAL库和cubemx方式开发,手把手教你做一辆STM32平衡小车,成本两百左右,主打就是一个讲解细致,草履虫都能学会,非常适合刚刚入坑的电子小白,以及大一大二的电子类专业的大学生。(搬运自作者简介)
对工科专业要尤其避免“为了学习的学习”,只有上手做项目才能将所学的知识融汇贯通。
下一步去哪?
-
FreeRTOS - 为单片机增加实时操作系统
-
树莓派 - 或许你想试试嵌入式Linux
-
数据结构 - 更好的组织代码
-
绘制PCB - 设计你的电路板
-
复刻更多开源项目? - 去看看GitHub、OSHWHub