以前我也总是捶自己大腿,我怎么这么蠢!
如果有提供例程的模块,我能在代码屎山中把功能调出来,如果没有,自己就像个傻杯,废物。
举个例子,像STM32这种ARM芯片,如果只提供数据手册,去使用外设,MD,我绝对想转行了!
如果你在开发初期,也有我这种烦恼,我的建议是,先放过自己,我就是用这种心态,挺过来的。
哪怕是让我现在用寄存器去手搓STM32外设功能,也很费劲。
我们无际项目特训营的老铁,有些也是杠精,总是和自己杠,这个功能我手搓不出来,怎么办怎么办?万一手搓不出来,工作以后碰到不会咋整?
不可否认,基础功底要扎实,要知其所以然,但也分阶段,一上来啥都想手搓,跟1级就去打boss没啥区别。
刚开始经验不足,先以会用为主,对这东西熟悉了,再去深入研究会事半功倍。
如果刚开始,让我通过寄存器去学stm32,打死我也学不会,但是我先当个CV侠,改改参数,发现我很快就能把外设用起来了,用这外设做过几次实际应用以后,我再回去看寄存器,诶?发现很多以前看不懂的,现在竟然恍然大悟了!
就像开车一样,你不一定非要搞懂车是怎么造出来的,发动机和变速箱是什么原理,才能把车开走是吧?
所以,在开发初期,不要犯贱,不要和自己杠,放过自己,顺势而为!
不过,新手也这样的问题也正常,因为对工程师实际开发的情况不熟悉。
是时候给他们普及下目前大多数实际产品开发的现状了.....也就是我刚说的,要shunsh
其实一个项目从头到尾自己手搓的很少,基本都是用现成方案,做个搬砖工程师,工程师的大部分时间都是负责产品的业务逻辑功能实现。
所以,对于偏软工程师最核心的能力,我觉得是编程思维和代码水平。
单片机外设例程你可以嫖,模块例程你可以嫖,但产品功能,去哪嫖?每个产品功能都不一样啊大哥。
那怎么把产品功能写出来?复杂的功能组合起来,能很友好地协调在一起工作?
就是靠你的编程水平啊,架构设计能力啊。
现在芯片,模块厂之间也卷的一批。
卷到啥程度?
一般都会提供详细资料,包含参考原理图、一些常用MCU的例程、还有技术支持,当然,如果是小公司,可能不鸟你。
比如OLED屏的,光这些资料,自己开发完全够用了。
如果是大公司,他们巴不得跟你住在一起,天天当你的舔狗,赶紧把产品做出来,跟我冲量,把量能冲上去,你就是我爹!!!
我在2011年左右做开发的时候,哪有这么幸福,现在都还有配置寄存器去用NXP芯片的阴影。
原厂和代理商态度,支持?没有!你爱用不用。
这是我在小公司待过觉得最恶心的事,明明我们是客户,却感觉供应商才是爹!
所以,不是经验丰富,千万别去小公司,小公司的水货工程师,狗看了都摇头!
最近很多粉丝问我单片机怎么学,我根据自己从业十年经验,累积耗时一个月,精心整理一份「单
片机最佳学习路径+单片机入门到高级教程+工具包」,全部无偿分享给铁粉!!!
除此以外,再含泪分享我压箱底的22个热门开源项目,包含源码+原理图+PCB+说明文档,让你迅速进阶成高手!
教程资料包和详细的学习路径可以看我下面这篇文章的开头。