所有的项目我都会分成几个部分,希望学弟学妹们能跟着我一起慢慢动手实践,“talk is cheap,show me the code”!
前段时间秋招,卓越班的学弟学妹们问了我很多有关小项目的事,但我工作以后也属实有点忙,不能及时地回复消息,本着卓越班“传帮带”的优良传统,我打算把这些嵌入式stm32入门的小项目(后续有时间会加上linux相关内容)都整理成博客,方便新生和其他入门嵌入式的小伙伴参考,最重要的还是希望大家通过这些小项目积累经验,在面试时能够问有所答!

一、项目简介
基于stm32f103实现的一个简单智能小车,具有“直行”、“转弯”、“避障”、“无线遥控”的功能。
直行、转弯:基于stm32定时器的编码器模式实现
避障:使用到stm32的外部中断或者定时器普通模式(看你用红外还是超声波了)
无限遥控:基于蓝牙HC-05或者wifi模块esp8266实现
二、硬件准备
除了开发板是必备的,其他的可以不用很完备,毕竟我们是以学习相关知识、技术为目的
1、stm32开发板一块(入门的同学建议老老实实买原子的,最便宜的mini板即可),建议买原子是因为原子哥的相关教学视频和代码资料确实是很适合学生来入门,性价比不要太高!
2、带编码盘的直流电机两个,这个可能会稍贵一点(几十块钱左右),不过实验室一般都是有的,如果没有也可以先放放
3、直流电机驱动模块(可以买TB6612,大概5块左右),这个买回来如果卖家没有焊好,是要自己用烙铁焊的(如果没有电烙铁也要买一个)
4、红外避障传感器(至少两个,淘宝应该两块多一个)
5、转向轮一个、塑料轮子两个
6、稳压12V电源一个
7、电压转换器一个(用于把12V电压转为5V电压给stm32供电)
8、铜柱、螺丝螺母、杜邦线若干
这些硬件材料是最基础的一些东西,小车搭好后可以实现直行、转弯的功能,但避障、遥控的功能还要使用其他的器件,这里先不做讨论,后续再展开。
三、项目博文计划列表
1、《stm32基础项目——智能小车(序)》 2、《stm32基础项目——智能小车(红外避障)》 3、《stm32基础项目——智能小车(PWM电机驱动)》
4、《stm32基础项目——智能小车(编码器调直、转弯)》
5、《stm32基础项目——智能小车(蓝牙通信)》
预计每周更一篇
四、小结
写这些博客的目的还是希望各位学弟学妹们能少走一些弯路(尤其是非硬件出身的同学),终极目的还是希望你们在秋招的时候能够拿到耀眼的offer(优秀的项目经历和经验总结毫无疑问会是加分项)

基于stm32的双车追逐实验

超车前:

基于STM32项目的软件架构图_c语言

超车中

基于STM32项目的软件架构图_1024程序员节_02

超车即将完成

基于STM32项目的软件架构图_基于STM32项目的软件架构图_03


超车完成

基于STM32项目的软件架构图_c语言_04