现在在实习stm32,linux软件工程师和stm32之间怎么抉择?( 三 )


在工作的前期,linux开发待遇高,后期STM32所代表的高级硬件开发待遇高,且可遇不可求 。
以上
Stm32要会看电路图,有可能要画板子,要熟悉各种硬件外设和软件库,linux的话注重软件开发,跟windows开发一个套路,如果想了解硬件,那就stm32,否则就干linux
这里不针对楼主所谓哪个平台,只是想提醒一下在读书的同学 。实际上一个工程人员的核心竞争力难度不在于平台,在于基础知识积累 。通信原理,数字信号处理,微机原理,英语好,理解能力强也是很重要的 。
弄Linux大部分功能都是现成的,原厂提供了bsp在上面改就行了 。要增加一些什么功能,有非常多的开源代码直接换个交叉编译工具就可以移植了 。linux只有个芯片手册就能把系统搭建起来的恐怕凤毛麟角了 。不过linux就业机会确实比单片机多点,我从事单片机开发,这点有体会 。另外就是单片机,这是完全可以靠gcc和makefile搞起来的 。但一般都用原厂的sdk,没必要自己搞 。
说了这么多,想表达的意思是平台不是问题,入门成本不高 。当然,硬是要搞得非常彻底,那还是算了吧,估计一般人早晚都会放弃 。站在巨人肩膀上做事才会更好 。
真正的牛人不是用哪个平台,而是基础知识积累怎样 。举个例子,移植驱动写makefile好像逼格很高吧?但一般人依样画葫芦一样可以搞定 。但是,牵涉到基础理论的代码,别说写了,一般人看都看不懂,函数在那里都不知道怎么用 。不相信的同学可以随便去看看各种解压缩算法,各种通信协议 。另外想表述到是英语跟重要,因为99%的有价值的文档都是英文的 。举个例子,各种标准化组织的spec都是英文的,没人给你翻译中文 。国内的论坛,大部分情况下问题解决了不会说解决方法,国外的就不一样了,大部分情况下解决了会详细解决方法描述 。不相信的同学等你们工作了就会有感触 。
因此,读书的时候积累好基础知识,哪个平台是基本技能,花一年左右时间补短就好了 。以后的工作中,基础知识扎实的同学肯定能脱颖而出 。这也是为什么牛逼企业招985的多一些 。哪个平台写代码是大砖小砖的区别,而基础理论知识才是设计图纸 。


特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。