10年前,我就是通过智能小车这个项目找到工作,成功入行的。

一些套件的购买记录和当时的笔记,很庆幸还能找到,不然大家以为我是键盘侠。

看了很多不同的文章,具备实际参考意义的不多,最大的问题就是方向错误

首先出发点就错了,如果你一开始就要又要考虑结构、又要考虑硬件、又要考虑画PCB、又要考虑单片机编程、等你做出来黄花菜都凉了。

任何一个项目,哪怕再简单,都涉及到不同领域的专业知识,分别由不同职位的工程师去负责。

整个项目涉及的知识体系,发现没一个你会的,你上来就想吃下整个知识体系,不是白日做梦吗?

不过,即便如此,并不意味着你需要花费很长的时间才能把它做出来。

我从事单片机工作10年,做过很多项目,每个项目对我多多少少都是一个挑战。

有很多让我焦头烂额的问题,毫不夸张地说,每走一步都有问题需要解决,但每次我总能完成。

掌握多少知识不重要,重要的是你的学习方法。

我总结了几个一直屡试不爽的方法,只要这些方法做,2-3个月完全能把智能小车做出来:

1.找现成的开发板

只要你有不懂的,首先不是去网上收集乱七八糟的教程资料,而是到某宝看看有没有相关开发板。

开发板已经把整个项目核心的东西都帮你整理好了,你不再需要像无头苍蝇一样乱撞,直接按开发板学就行了。

2.找懂的人带

曾经我也是一个白嫖怪伸手党,自以为占了便宜,其实白白浪费很多时间,进步龟速。

现在我要学什么,都会考虑到时间成本,毕竟对于一个30多的人来说,时间太宝贵了。

找个懂的人,做过的人带是最快的,但是你要考虑一个问题:为什么别人要帮你?

我经常会碰到一些新手,一上来就问一堆问题,还有就是发一段代码让我帮他找问题,像我欠了他一样。

对于这种人,心情好了我会回一句:我为什么要帮你?

心情不好了,直接拉黑。

一两个问题,别人可能处于热心帮你,但是你一堆问题,谁会无偿帮你?

那去哪里找懂的人带你?

还是可以去某宝,也可以去某鱼,也可以到一些技术群里。

这块不要太抠,除非你自身有被别人利用的价值,否则只能砸钱。

砸多了,以后别人也愿意跟你玩了,有时也不是看钱,真正有能力的根本不会在乎你那点钱。

主要是认可你会做人,谁也不愿意和傻x交往来消耗自己。

从某个层面来看,能花钱找到别人带你,或许会成为你人生的一个机遇。

3.找供应商提供技术支持

这个暂时不适合智能小车这种项目,这里就先不讲了。

以上是方法论,这个主要是认知层面的提升。

下面我再来讲一下术的层面,也就是智能小车制作都需要掌握哪些知识。

前面我们要从一个点入手,也就是先把软件搞定,再向面扩展,比如说硬件设计、PCB Layout等等(看兴趣,一般没必要)。

1.硬件基础

我们的定位决定我们要掌握哪些知识,比如说我是单片机工程师,那我绝对不会去研究硬件如何设计。

一般我也建议先把软件搞定,硬件可以根据你前面购买的那个开发板学习,学到看懂原理图就够了。

比如说以前我那个智能小车是几个MOS管搭建了一个H桥电路去驱动电机。

我们只需要看懂就行了,不用纠结为什么要这样去设计。

其他电路也是一样,以看懂为原则,知道信号怎么输入单片机,单片机怎么控制外围电路哪些接口、协议就可以了。

这个针对性学是最快的,也就是把智能小车的原理图都学懂。

现在开发板一般都有配教程,看着教程看就行了。

2.单片机

以前大多数智能小车都是用STC的51单片机做的,现在还有一些用STM32,因为功能强大了一些。

我建议新手买51单片机开发的就可以了,至少可以HOLD得住。

STM32单片机基本上不会配置寄存器去使用外设,而是直接用库,或者用stm32cubemx图形化配置外设。

这样看起来好像很简单,直接用别人现成的东西,但是不利于新手对单片机底层原理的理解。

这块基础缺失,会导致你以后的路很坎坷,每走一步都是问题,一出现问题无从下手。

51单片机则必须要配置寄存器去使用单片机外设,这样一个项目下来其实提升还是很大的。

单片机和c语言是同步学习的,如果C语言没什么基础,可以看无际单片机编程的教程,是基于单片机平台讲解的,市面上大多数都是基于上位机。

前期不要好高骛远,如果没基础,先从最基本的点灯开始。

把智能小车所需要的外设全部学完以后,再去实现智能小车这个项目的逻辑功能,比如说电机PWM驱动、超声波、红外信号检测等等。

不要一来就去啃整个项目的代码,越看越迷茫,越看越焦虑。

3.学习其他附加模块

智能小车一般是一个主控板(STC单片机外围电路+电机驱动+显示),除此以外要实现寻迹、避障等功能还需要另外加一些模块。

比如说超声波模块、红外寻迹避障模块、甚至是蓝牙模块等等。

主要是学习单片机是用什么协议或接口跟这些模块通讯,获取数据怎么去处理和控制电机。

整个项目的难点或许就在PID算法了,这个取决于你的车方向和速度能否达到极致,能否在最短的时间按照指定的轨迹到达终点。

等你把整体功能完成以后,再去优化PID算法,网上也有很多资料和现成代码,可以参考。

掌握以上几点,基本上就能把智能小车做出来了。

从我开始学单片机到完成一个智能小车的制作我都需要掌握哪些知识?相关推荐

  1. 35、基于51单片机自动灭火避障智能小车 消防灭火小车系统设计

    摘要 智能作为现代的新发明,是以后的发展方向,他可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等等的用途.智能小车就是其中的一个体现,本次设计的多功能智能灭火避障小车 ...

  2. 89c51控制小车运行c语言,基于STC89C52单片机和STM32的智能小车控制系统

    摘要:针对智能车的控制系统, 选用STC89C52作为整个系统的主控芯片, 并进行硬件电路设计;以NREF24L01作为无线接收模块, 选取E18-D80NK-N红外光电传感器作为避障模块的核心器件; ...

  3. 毕业论文 | 基于单片机的多功能智能小车设计论文(电路+程序+论文)

    ============================================== 博主github:https://github.com/MichaelBeechan 博主CSDN:htt ...

  4. 从零开始学单片机c语言 pdf,从零开始学习单片机.pdf

    从零开始学习单片机从零开始学习单片机 单片机 DIY 设计 1. 手把手教你用 51 单片机 DIY 音乐频谱显示(成品图+电路图+源代码) /diagram/3972_4112/102030.htm ...

  5. c语言智能小车项目的感想,基于51单片机的遥控智能小车实作心得

    两年前学习51单片机时,买了51hei单片机开发板.现在正在学习基于STM32嵌入式系统的FAT32,UGUI和UCOSII操作系统.几乎很少去看51单片机开发板了.某天,宝贝突然说要我给她买一个遥控 ...

  6. 动手做一个简单的智能小车

    动手做一个简单的智能小车 来到CNDN一年了,看到了许多大佬的杰出作品.也该写点什么来回馈给大家了前不久接触了单片机,想提前进行实践一下所以有想法做一个实体出来,想来想去难的怕自己搞不定,但是还好找到 ...

  7. 基于51单片机的蓝牙智能小车——《入门篇》

    我认为在制作小车前需要有心里准备,要充满自信.满怀激情,学会坚持,切忌三分钟热度,半途而废. 在上一篇文章中我已经提到了制作智能小车所需要的材料,如果大家已经准备好材料,或是想进一步了解智能小车的制作 ...

  8. 想学单片机怎么入手?学单片机前先学什么?

    大家好,我是无际单片机编程徐工. 看到身边的很多电子产品都涉及到单片机,自己身边又有很多同学或者同事从事嵌入式单片机程序开发,工资普遍也比较高. 对于背后无人,家里无矿的普通人,掌握这样一门技术无疑作 ...

  9. 单片机要学多久才能自己开发?学单片机以后做什么?

    大家好,我是无际单片机编程的徐工. 要说学多久才能自己开发,不妨我给大家分享一下我的单片机学习之路. 我学习单片机一方面是因为大一的时候进入了学校电子大赛实验室,另一方面是因为我从中学开始就对电子比较 ...

最新文章

  1. 【Linux】19.Linux环境变量名LD_LIBRARY_PATH 和 ldd命令详解
  2. Java+Oracle实现事务——JDBC事务
  3. LeetCode 565. 数组嵌套
  4. SpringMVC深度探险 —— SpringMVC核心配置文件详解
  5. 米斯特白帽培训讲义 漏洞篇 代码执行
  6. 协议圣经 ARP RARP 六
  7. Linux命令(二)
  8. bzoj4974 字符串大师
  9. Acer 4736ZG的Mac之旅
  10. photos for mather's day
  11. Cax 渲染的精致响应式饼图
  12. 穷举法 解决用3个水桶等分8升水 python实现
  13. 一副眼镜一千多贵吗_央视曝光!一副眼镜上千元,出厂价却只要几十元
  14. phpnow升级mysql版本_phpnow1.5.6-1升级phpmyadmin,php及mysql版本
  15. swiper点击左右失效
  16. hdfs配置文件(hdfs.site.xml)详解
  17. #今日论文推荐# 阿里达摩院最新FEDformer,长程时序预测全面超越SOTA | ICML 2022
  18. 从西安到深圳——一路向南
  19. 元宇宙区块链游戏开发 元宇宙手机游戏开发
  20. 按钮查询方式控制交通灯c语言程序,单片机控制交通灯(内含程序和实物图)

热门文章

  1. 考研加油!考研的兄弟姐妹们!
  2. count(1)、count(*) 与 count (列名) 的执行区别
  3. 自然语言处理(NLP)之gensim中的TF-IDF的计算方法
  4. 网络空间安全之信息追踪——学习笔记 利用门户网站,综合信息追踪
  5. 链表问题9——复制含有随机指针节点的链表(初阶)
  6. 通讯波形记录——I2S、I2C、Uart、SPI
  7. CentOS 7安装gitlab服务器
  8. 英特尔、高通争战物联网芯片 下个霸主会是谁
  9. 找不到完美数据科学家?你还可以组建一支数据科学梦之队
  10. Python学习笔记(八)