单片机入门到高级开挂学习路径(附教程+工具)[通俗易懂]

单片机入门到高级开挂学习路径(附教程+工具)[通俗易懂]一、先帮大家解答几个问题:1.单片机是什么?答:单片机就是一个微型CPU,把程序烧录芯片里面,通过控制不同的外围电路实现不同产品的功能。2.学单片机编程对数学英语有要求吗?答:数学会基本的加减乘除就行,英语会认单词a-z就行,很多外行人看到代码里一堆英文就头嗡嗡响,其实不然,只有少数语法是固定的,大多数英文都是工程师自己定义的,比如大神你也可以定义成DaShen(中文缩写)。那很多人此时就开始质疑,当初这么辛苦学数学和英语到底是为毛?数学和英语不是单片机开发的门槛,但却决定你以后能达到的高度,

大家好,又见面了,我是你们的朋友全栈君。

一、先帮大家解答几个问题:

温馨提醒:文章所有资料在【无际单片机编程】公众号获取。

1. 单片机是什么?
答:单片机就是一个微型CPU,把程序烧录芯片里面,通过控制不同的外围电路实现不同产品的功能。

2. 学单片机编程对数学英语有要求吗?
答:数学会基本的加减乘除就行,英语会认单词a-z就行,很多外行人看到代码里一堆英文就头嗡嗡响,其实不然,只有少数语法是固定的,大多数英文都是工程师自己定义的,比如大神你也可以定义成DaShen(中文缩写)。
那很多人此时就开始质疑,当初这么辛苦学数学和英语到底是为毛?数学和英语不是单片机开发的门槛,但却决定你以后能达到的高度,如果你数学和英语不行,那么月薪20K可能就是你的巅峰了,如果很好,那么上限还有很大的空间。

3. 单片机好学吗?
答:看你怎么学,互联网的好处就是什么资源都能搜集到,相反的也容易迷惑世人,资料太多眼花缭乱让你无从下手,今天,我特意花了1周时间精心整理出一套让你快速学会达到月薪过万的视频教程资料,免费分享给大家。

4. 没有基础可以自学吗?大概多久能学会?
答:我曾经是自学入行的,什么C语言,什么单片机,什么二极管、三极管、电阻电容等等一窍不通,2011年毕业通过2个月时间自学然后直接从事开发工作。

5. 从学完到月薪过万要多久?
答:我第一份工作是2011年,当时月薪只有1.8K,半年后5K,当时消费水平没现在这么高,房价也便宜,按目前的通货膨胀一线城市目前正常只要死磕1年就能月薪过万,如果能找个人带你会成长地更快,我去年带了12个学员,除了几个自己放弃的,上班的全部月入过万。

6.单片机真的像劝退帖子说的工资这么低吗?
答:我看了某乎,某吧,有很多劝退学单片机的,说既要懂硬件,又要会编程,屁事多工资还低。

我从事单片机开发近10年,来说句公道话,在之前确实跟纯软件有比较大的差距,但是现在差距越来越小的。

我有几个做Java App开发的朋友,同样码龄,但是工资却没单片机开发的高,我身边做单片机开发20K以上的也很多。
所以只要有能力,其实薪资并不会低。

6. 我适合学单片机吗?
答:如果你没钱、没资源、没技术、每天还从事机械化没前途的工作中浪费青春,又想找一个能够养活自己和家人,可持续发展,能不断为你提供现金流的工作那就合适,抛开兴趣先不说,主要看你现在够不够穷。

7. 怎么学?
答:说了这么多终于到重点了,以前我就走了很多弯路,不知道该怎么入手去学习,后面慢慢研制出最骚学法,让你直接开始飙车。

首先,我们问问自己学这个来干嘛?当然是找工作赚钱!对,这个就是核心, 知道这个道理那我们马上开始实践,打开找工作的相关网站或APP,直接搜索职位:单片机工程师。

然后看我勾选出来公司对该职位的需求,我们只要找出共同点针对这些需求去学就行了,结合我的经验直接给大家总结从事单片机开发最重要的几个关键字:

  • C51单片机/STM32单片机
  • C语言
  • 能看懂原理图
  • 基本焊接能力

根据以上关键字给大家总结出一套系统学习流程和教程,达到一针见血的目的。

二、学习准备

  • 一台电脑
  • 一套STC51开发板
  • 教程资料包

后期如果想进阶则需要一套STM32开发板。

三、学习步骤

第一步: 教程资料整体架构
在这里插入图片描述

第二步:学基础电路
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

学电路的时候注意不要全部教程看完!不要全部教程看完!不要全部教程看完!

因为模电你让我现在看也看不懂(太TM难了,单片机开发实际用的很少,很少。。),很多人从入门到放弃就是在这一步!!!

只需要知道电阻电容、二极管、三极管相关的作用就行。

如电阻串联分压功能、电阻并联分流功能,三极管的开关条件和基本电路。为后面学单片机做好铺垫。

第三步:学习C51单片机和C语言

C语言和51我基本是看郭老师的视频入门的,当然如果你觉得他的C讲的还差那么点意思,我还有更详细的。
在这里插入图片描述

在这里插入图片描述

第四步:学习用AD软件
在这里插入图片描述

一般公司会配一个硬件工程师和软件工程师,对单片机软件开发来说前期只需要学到原理图设计即可。

第四步:用C51做一个电子闹钟
闹钟功能:用数码管显示当前时间,系统掉电重启后从断电时时间开始计时,可以通过按键设置时间和1组闹钟时间,时间到蜂鸣器报警提醒。

这一步也非常重要,其重要性不亚于高考,一个项目能考验你思维,怎么将各个模块代码整合起来成为一个产品,完成后对你进步非常大。

第五步:学习STM8和STM32单片机(进阶)

对于STM8,很多人可能觉得没必要学,但其实实际产品开发用的还挺多的。特别是低功耗的产品,STM8L系列是真的香,我自己开发过好几款。

所以,要不要学自行选择,学也很简单。
在这里插入图片描述

在这里插入图片描述

STM32的还有几个截图,就不发了。。。

那STM32因为功能比较多,当你有把这个芯片吃透这个想法的时候,其实你已经掉坑了。很多学了其实到工作根本用不到,比如说CAN,USB这些,现在学就是浪费时间,等你用的时候又忘了。

我们前期只需要学必备的GPIO、时钟、中断、Timer、Usart、IIC(只用模拟)、SPI、DMA这些常用的就可以了。学到什么程度呢?我个人认为只要懂原理,能用起来就够了。是不是觉得瞬间轻松很多(嘤嘤嘤)!

毕竟行业变化太快,说不定明年ST的就被干了,所以对于单片机我一直提倡会用就行。

真正的核心是编程以及你程序的架构,和最新的领域,比如说物联网,然后再学设计硬件,做个全栈工程师,逼格和薪资都蹭蹭蹭往上涨。

四、高级程序架构进阶

前面这些都是网上收集的教程,因为已经讲的非常完善了,没必要重复去讲,而且自己去讲未必有他们讲的好,缺点就是都是入门或者中级的教程。

很多产品开发当中的问题并不能很好地解决,所以我在19年随便录了一套原创课程。
在这里插入图片描述

本课程内容源于我研发的多款物联网网关设备程序精华总结, 这些产品都稳定运行在我编写的一个轻量级系统架构上, 这个轻量级系统架构课程基于 Keil5+STM32F103 系列,并且适用于51单片机。

课程前半部分讲解 C 语言高级语法枚举、结构体、指针, 通过这些语法手把手教大家编写一套轻量级系统的内核, 其中涉及到链表、队列算法、回调函数、任务管理等功能。

教程后半部分是项目实战部分,把产品典型应用如 LED、按键、串口通讯移植到该系统内核结合成一个产品功能。这里的移植不是简单的点亮一个灯或者检测一个按键,又或者是串口收发一个字节数据。

而是从实际产品的需求和痛点出发,考虑功能可扩展性和移植性为前提条件
实现批量 LED 或者按键一些复杂的功能。

比如每个 LED 可以实现每隔 3 秒快闪 2 次代表信号正常,或者闪 2 次以后熄灭代表探测器学习成功指示。

比如每个按键可以检测短按、短按释放、长按、长按释放等。

比如串口收发使用独家队列算法处理,能够满足物联网大数据流传输情况不
丢一个字节的需求。

代码使用系统内核+应用层+硬件层模块化编程思维,不依赖于任何一款片,移植性好,代码复用性极强,产品开发只需要复制粘贴代码,大大缩短
产品开发周期。

并且经过 5 年以上,数十款上市产品批量验证,稳定放心! 最重要的是免废!免废!免废!

五、常用工具

除了这些视频教程以外,我还整理了相应的开发工具和开发板,以上每个单片机都对应一个开发板,每个模块都对应一个参考程序。
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132341.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • txs0108 替代芯片_什么是芯片,怎么造出来的

    txs0108 替代芯片_什么是芯片,怎么造出来的TXS0108双向电压转换芯片用于IIC时的问题TXS0108是双向电平转换芯片,在我的案例中用于1.8V电平与3.3V电平的转换。最先,我在3.3V和1.8V的SCL和SDA总线上均使用了4.7kΩ的上拉电阻,上拉到对应的高电平。调试发现SDA出现如下波形:可以看到图上出现了次高电平。非常不正常。分析后发现,中间四个次高电平都是IIC芯片发出的ACK信号,应该被拉低,但是并没有拉低到0V。导…

    2022年8月10日
    5
  • Seata-Saga模式 原理

    Seata-Saga模式 原理1Saga模式示例1.1Saga状态机工具状态机设计组件:seata-saga-statemachine-designer状态机在线画图工具:saga_designer1.2代码示例github上Seata-sample有完整的示例代码,SeataSaga模式中有此示例的完整介绍和分析。这里仅摘取部分和介绍原理有关的代码进行分析。1.2.1初始化dbmysql示例:CREATETABLEIFNOTEXISTS`seata_state_machine_def`(

    2022年9月19日
    2
  • HTML期末设计——代码篇[通俗易懂]

    HTML期末设计——代码篇[通俗易懂]事先声明这个网页设计也就是用了我学到的知识做的一个中规中矩的网页,可以给以后的大一新生们做个参考,和商业网站的效果肯定是没得比的,期望太高的可以关掉了,要严词批评我的请不要在我这说,当然,温柔的话,可以引入页效果图:<!DOCTYPEhtml><html> <head> <metacharset=”utf-8″> <title>欢迎来到香氛密语</title> <style>

    2022年6月14日
    32
  • EditText输入框的监听(输入完成、完成后)的方法

    EditText输入框的监听(输入完成、完成后)的方法

    2021年10月1日
    180
  • 怎么查看线程的状态及interrupt优雅的关闭线程和interrupt()、interrupted()、isInterrupted()的作用以及区别在哪?

    怎么查看线程的状态及interrupt优雅的关闭线程和interrupt()、interrupted()、isInterrupted()的作用以及区别在哪?示例:查看状态:刚才我们讲过,一个线程里面任务正常执行完毕,状态就是TERMINATED,就是终止状态。但是,如果我线程里面的任务一直没有执行完成,我想去终止这个线程,或者我给点信息给到线程里,告诉线程我想终止结束呢!所以我可以强制去关闭线程:线程提供一个stop方法,该方法不建议使用,已经过时了!!因为stop是强行关闭线程,线程里面的任务都不在执行,不管线程的任务是否执行成功与否,就算执行到一半也会强制关闭!导致很多不可控制的结果,比如支付付一半等等!!所以我们要需要去优雅的关闭。什么叫做优雅关

    2025年7月29日
    4
  • 苹果电脑(Mac mini或Macbook或iMac)恢复出厂设置「建议收藏」

    苹果电脑(Mac mini或Macbook或iMac)恢复出厂设置「建议收藏」苹果电脑(Macmini或Macbook或iMac)恢复出厂设置,首先要做好如下的准备:第一:数据的备份;第二:保证正常的wifi连接;第三:有线的鼠标键盘连接;具体恢复操作步骤:步骤一:电脑启动时,按下键盘组合键(option+command+R,或alt+command+R);然后显示器屏幕上会显示小地球,且出现倒计时;步骤二:倒计时结束后,出现macOS实用工具,选择第四个…

    2022年6月16日
    574

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号