先说答案,可以的。
我看到很多人说,嵌入式已炸,也有人说卷爆了,一堆东西要学,然后学完投简历,一个面试都没有之类的。
举个例子,以前我们带过一个在产线做维修的,他做梦都想转嵌入式开发,但其实从内心深处,他是觉得不太可能,这是地狱级难度。
或许他觉得自己学历不过关,或许是年龄大,或许是怕学不会,或许是怕学会了没人要,而没勇气开始。
为什么他会这么想?其实是圈子决定了认知和视野。
在资深工程师的观念里,入行还是很简单的,为什么?
因为我们在行业做了10几年工程师,从打工到自己接方案,做产品,我们有经验,已经走过了新手即将要走的路,碰到问题,也有相应的方法论。
而新手呢?对一切都是迷茫的,出现问题,不知所措,以为这个问题很难,其实就是思维转变一下而已。
所以,我给新手的建议,是先冷静下来,不要人云亦云。
转行这件事,没想得这么难,但要看懂其本质,本质是啥?我觉得是解决需求。
你需要解决的是企业需求,理解这个,付予实践,很多问题都迎刃而解了。
而现实是,大多数新手,都是瞎学的,网上别人说什么你就学什么,学出来企业又不需要,或者不深入,企业不认可,这是正常的。
如果不太熟悉,可以先走单片机开发方向,学习周期短,难度也小一些,具体可以看我下面这个学习路径:
链接1
下面说下,为什么计算机能转单片机开发。
1.基础够用
你已经会编程了,特别是C语言,这正是嵌入式开发用的。
2.技能通用
解决问题的方法和编程思路都能用上,写代码的好习惯在嵌入式领域一样重要。
3.上手快
相比其他专业的人,你已经懂了大部分基础知识,主要就是学点硬件知识,只要看懂原理图,也没那么难。
4.专业匹配
从严格意义上来讲,计算机走嵌入式方向,不算转行,从代码复杂度来说,计算机比嵌入式要更庞大复杂。
下面聊下,计算机专业走嵌入式开发,需要补充学的东西:
一、基础电路知识
1.基本电路元件
电阻、电容、电感、二极管和三极管是常见元件。电阻控制电流,电容储存电荷,二极管控制电流方向,三极管可用于开关或放大。
2.欧姆定律
理解电压、电流和电阻的关系,这些是分析基本电路的前提。
3.数字逻辑基础
与门、或门等是数字电路的基本单元,用于处理二进制信号。
4.信号类型
模拟信号连续变化,数字信号是离散的,了解两者区别和转换方法很重要。
5.电压分配
分压电路在传感器接口中很常用,学习如何正确分配电压很有用。
6.信号处理
了解基本的放大和滤波电路,对处理各种信号有帮助。
7.电源管理
这个可以不需要那么深入,了解Buck、LDO等等,知道是几V转几V,是交流转直流,还是降压就可以了。
8.传感器基础
了解常见传感器的工作原理,有助于理解接口和协议。
8.通信协议
UART、I2C、SPI等是常用协议,了解它们的特点和使用场景。
9.PCB知识
理解印刷电路板的基本概念,对于理解整体系统很有帮助。
二、单片机的构造和工作原理
1. 中央处理器(CPU)
处理指令和数据的核心单元,执行程序、进行计算和控制其他单元
2. 存储器
程序存储器(ROM/Flash):存储程序代码
数据存储器(RAM):存储运行时的数据
EEPROM:用于存储需要掉电保存的数据
3. 输入/输出接口
GPIO(通用输入输出)端口:与外部设备交互
定时器/计数器:用于时间相关的操作和事件计数
中断系统:处理异步事件
4. 总线系统
一般用于高速数据通信,比如DDR,FSMC驱动屏等等,这个可以用到再学。
5. 时钟系统
为单片机及个外设提供工作节拍,可以理解成人的”心跳”。
6. 特殊功能寄存器
控制和配置单片机各个模块的寄存器
7. ADC(模数转换器)
将模拟信号转换为数字信号
8. 通信接口
UART、SPI、I2C等,用于与其他设备通信
9. 电源管理
负责单片机的供电和低功耗模式管理
10. 指令集
单片机支持的指令类型,如数据传送、算术逻辑运算等
11. 工作模式
包括正常工作模式、低功耗模式等
12. 启动过程
上电后单片机的初始化和程序执行过程
这些都是基本的,跟着开发板过一遍就好了,最主要是把开发板每个例程都动手写一遍,很多理论的东西,面试的时候再复习一遍就行了。
最主要的,还是要有项目经验,学完基础,一定要多找项目练手,一方面是提升能力,一方面是给后面找工作提升竞争力。
最近发现,很多私聊我学单片机的小伙伴,99%的人都走了弯路,所以我花几个小时,写了一篇保姆级学习路线^ ^
单片机怎么学?保姆级学习路线(附教程+工具)https://blog.csdn.net/2401_86645590/article/details/141437874