嵌入式软件开发需要学习泛亚电竞哪些内容?
根据答主的个人嵌入式开发学习和工作经历,如果题主期望从事嵌入式软件开发道路,除了目前已经学习和掌握的C语言基础外,还有很多知识点需要投入精力进行学习和准备。
首先,需要明确的是嵌入式软件开发工作是一个很大很笼统的概念。根据嵌入式软件开发工作岗位的设定,答主从狭义上将嵌入式软件开发工作细分为如下三个方面(现在也有很多公司将FPGA的软件开发工作归类到嵌入式开发领域,这里答主因为接触不多,不多谈)题主需要根据自己的兴趣爱好和未来的工作规划,选择适合自己的方向进行努力学习。
其次,上面每个细分需要掌握哪些专业技能和技术知识呢?答主在前面曾经的一篇回答中,进行了尽量细致的总结和整理,题主和对嵌入式软件开发有兴趣的朋友,可以自行进入到下面的问题链接中进行阅读。
答主因为从MCU的开发入门,泛亚电竞 泛亚电竞app进入到嵌入式开发领域,并通过工作逐步扩展到Linux的开发领域。从个人的理解和经历看,MCU相比较于Linux,存在技术门槛低、待遇低、重复造轮子严重的问题。所以,既然题主是一枚新入行的新人,如果可行并且题主对Linux存在兴趣,答主更建议题主将Linux作为自己的嵌入式技能栈。毕竟题主才大一。
最后,不论Linux还是MCU该如何学习呢?答主在前面也对如何学习Linux和MCU(推荐题主直接选择STM32,目前市场和开发的主流芯片)进行了整理和总结,此处就不再赘述。请题主及对嵌入式软件开发有兴趣的朋友,可以自行进入到下面的问题链接中进行阅读。
六年前我也跟你一样,大一,电信专业,不过那个时候我还没有像你这样就明确了自己以后想干嘛,想做哪个方向,所以很佩服题主你才大一就如此目标明确,哪像我那个时候还带着些迷茫。
本来今天下午在地铁上看见邀请我回答这个问题,想晚上回来再好好答一答的,不过晚上看了其它人的回答,发现他们已经把我想说的给说了。那就是基础一点要打好。
高数能学多扎实就学多扎实,工作以后你可能会遇到有时候需要实现某些算法,这个时候你不需要厚着脸皮去请教大牛给你解释某个论文里的算法推导过程。虽然敢于请教也是一种好的习惯。
把英语学扎实了,因为你是做嵌入式的,你需要阅读芯片手册,遇到难题,你可能需要查阅英文书籍、网站、论文等去寻找答案,你会用到github,stack overflow。
把电路,数模电也重视起来,虽然你是搞软件的,可是你一定要能看的懂电路图,泛亚电竞 泛亚电竞app不然搞什么嵌入式。
还有一个我当年很不喜欢的一门课程,因为老师上课极其无聊,每节课都是睡过去的。现在想想,这个锅得我自己背。那就是数据结构,现在觉得真的是挺重要的,做单片机的时候还没啥感觉,现在偶尔搞搞算法,真的发现这玩意真的能决定你的软件最终能搞到什么程度。软件等于数据结构加算法,这话是很有道理的。
其他的话,就是这个专业只学是不行的,必须多动手,多写写代码,多混混实验室,自己动手做出些东西出来,电赛什么的能参加一定要参加,而且最好拿拿奖,对于我们这些普通本科出来的人,这些奖项会在你找工作的时候很有帮助,即使考研,导师也会更喜欢有丰富项目经验的。
首先你要知道你自己要做什么,以后的发展方向如何,可以参考我的这个答案,为自己选择一个培养方式:嵌入式要怎么选择方向呀? - 知乎
下面说所有这些方向应该具备的基础。我简单的绘制了思维导图,总体上就是这样的。
我在读本科的时候没有一个完整的归类,一直都在不断的常识,不断的学习,在高考完的假期学的C语言(可以做一个科学计算器)就这个基础,学单片机,学MATLAB,学数据库,甚至学Java,那个时候每天处于一种繁忙的状态,可这些如果不亲自体会去学一学,就不知自己喜欢什么。后来大二下学期,我告别了这样繁忙的生活,开始钻研DSP,我的嵌入式之路就是从DSP开始的。那时候也是不断查资料,去试图理解这个行业。上图,每个嵌入式人可能都有自己的理解和归类,但站在我现在的角度我就是这样理解的。嵌入式的学习体系十分庞大,软、硬和理论基础都要掌握。除了算法工程师,还没见过一个可以脱离硬件单独开发软件的嵌入式工程师,即便是学习软件,也要掌握相应的硬件规则,我们的编程不同于CS的,我们要依托硬件,可能在硬件构造中,用了一个不同的小小的电容,我们的程序都可能会发生改变。
我把嵌入式分为三个大支柱,你需要三大支柱来支撑整个嵌入式理论体系。不是每一个分之都是重点,但有一些你需要掌握,需要了解,需要自己亲手去实验,这样有助于你做好充分的工作对接。你未来的工作,可能仅仅是某个分支上的一个的深化。
青春,有懵懂。不知道是正常的,就算是走过几十年的老头也有犯迷糊的时候。所以你可以不要求自己有多么清晰,只需要知道你是学生,未来想从事的是技术即可。
因为大学还有四年,未来还有很多变数改变你的想法,但有一颗从事技术的心,请深藏,请保留,请珍惜,请敬畏。
1. 初现:先说说动手部分,我觉得学生还是先得把实践作为第一步,然后反过来推敲理论,有助理解做嵌入式软件,编程语言是工具,目前主流是C(熟练使用),汇编看得懂就行。作为学生,语言不求多,求一门熟练即可,关键在练。开发板+开发文档,这个是动手的基础,从控制一个LED灯,到星火燎原整个系统,大部分底层嵌入式软件工程师,都是在调试硬件的功能,在调试过程中融会贯通 以上资源,请与贵校实验室沟通。 等你有能力根据文档和需求,完成任何的一个调试,你就可以线步学习,也许在很多高校第二步是第一步的基础,我列在第二步,是因为很少人能线. 分界:管理软件or硬件驱动
牛人创造,初学仿造,见Linux源码:ux硬件驱动:中断到底是什么,硬盘到底如何读写,键盘怎么运作,WIFI怎么通信数据 这个我推荐一个网站:找你感兴趣的外围模块开始研究,四年你能深入研究一个就行,比如USB或 Flash或I2C等,其他的了解即可,不用深入研究。3. 修炼:数电和模电
经过这三步,加上多多实践,你在一家公司可以利于不败之地,至少也有口像样的饭吃。找不到,我可以推荐。
英语基础还要扎实的物理电路的知识还要掌握逻辑思维能力 还要提高情商还要锻炼身体还要谈恋爱
回答介绍了嵌入式软件项目开发过程中常见的方法、流程、技巧。 包括不仅限以下这个点: 1、系统选型 2、协议选型 3、模块架构 4、外部接口 5、方案评审 文档链接:
扫一扫关注AVIA ESPORTS泛亚电竞微信公众帐号