这个行业主要分工就两个方面:硬件开发和软件开发,但是硬件软件基本上是没法分家的,因为软件是基于硬件开发的,硬件是基于软件设计的。所以要有完美的产出,就要有硬件和软件都懂的工程师。
硬件开发:硬件开发主要就是根据需求设计硬件电路,画原理图、PCB布线啥的,主要软件可以了,硬件设计主要就是模电和数电了,当然数电比模电简单多了,数电方面根本不需你去设计什么电路,一是一些芯片的datasheet已经给出了应用电路图;二是互联网这么发达,你想过的电路别人基本上都设计过,照搬就行了
软件开发:嵌入式软件开发需要掌握的东西也太多了,至少我学到现在还有好多东西没接触、不熟悉。完全摸不着头脑的bug,这个时候你就会怀疑是不是你软件的问题,还是硬件的问题,等你确定是软件问题的时候,你又不得不回到开始,把代码的编译->汇编->链接,把MCU怎么从上电到进入main函数从新学一遍当初没人告诉我这里面全是坑啊所以你又得装个arm-none-eabi-gcc而且这些IDE的编辑器完全就是十几年前的产物,什么语法纠正、多行编辑一概没有,
而“不管51有没有落后,学习51都是值得的,个人认为不会浪费你的时间和精力”,理由如下:
1. 学习51单片机的目的不是为了工作中为了使用51,而是为了培养直接调试寄存器与软硬件接口bug的能力。
2. 51单片机没有sdk的支持和过多的软件封装,能够直接把外设寄存器功能暴露在你面前,让你真正体验调寄存器的感觉。
3. 不用花太多时间钻研专精所谓51单片机,但是还是应该通过一两个中等规模的项目,来