关于问题如何开始学习嵌入式开发?一共有 5 位热心网友为你解答:
【1】、来自网友【华依在盛】的最佳回答:
首先一个月时间学习单片机的开发,熟练 stm32 的开发,各种外设(比如 232,485,spi,usb,wifi,以太网等)形成自己的模块,后续开发代码直接拿来用就行了。这些弄熟练之后,就可以开始学习 linux 相关,比如 shell,系统编程,网络编程,多任务及同步,各个系统之间的通信。可以列一个学习计划:
1、c/c++语言基础,数据结构
2、单片机可以选择 stm32 学习
3、linux 基本命令,shell 脚本
4、linux 的系统编程,网络编程
5、(可选)可以学习上位机相关,做界面程序与单片机,设备通信。建议学习 Qt
6、(可选)可以学习机器学习,常用的算法
【2】、来自网友【嵌入式笔记 v】的最佳回答:
掌握:c 语言,linux 系统编程,网络编程,shell 脚本,makefile 等
往上走: c++, java ,Android,一些常用通讯协议,如 http 等
【3】、来自网友【嵌入式宏思微想】的最佳回答:
嵌入式系统开发,主要涉及的内容包括但不限于:操作系统(Linux,FreeRTOS,uC/OS 等等),协议(通信协议,接口协议,数据协议,文件格式等等),库资源(DLib,GTK,OpenGL,OpenCV 等等),资源分配(存储空间,运行空间,GPIO 等等),硬件 IP(LCD,Camera,Sensor 等等),工程技能(编译,链接,仿真,脚本,工具等等)。
如何学习它们呢?我建议:
1.参加培训班,或自学培训课程。好处是,系统化学习,有很多知识点,面面俱到。坏处是,有点走马观花,且可能需要一点学习经费。
2.追随网络大 V,学习知识和经验。现在自媒体时代,很多人都在网上分享技术和经验。好处是,随时随地学习,且很有可能会遇到真知灼见,让人喜出望外。坏处是,不够系统化,内容是人家大 V 自定。
3.学一门编程语言(例如 C 语言),入职做嵌入式产品的公司做开发。好处是,亲身力行,现学现用,货真价实,且有机会得到前辈的教导。坏处是,不容易入职到系统部门,就算入了,也很可能是一枚螺丝丁,毕竟现在分工都精而细。
无论是哪种方式,都需要不断的学习,实践,总结,再学习。这是一个持久战,质变需要量变来堆积。
谢谢大家。
【4】、来自网友【余关厨子】的最佳回答:
嵌入式所涵盖的行业很多,后期会根据工作,只会专注一个方向,从宏观上会为分嵌入式软件开发和嵌入式硬件开发,软件开发主要是基于系统(Linux,VxWorks,WinCE 等等)之上的应用软件开发,硬件开发有主板设计,系统移植剪裁底层驱动的编写等
我个人经历是从单片机开始的,先是 C 与 C++,数电模电,电力电子,电路设计,单片机原理,FreeRTOS,数据结构,计算机操作系统,后因工作的需求我又把大学自动控制理论,信号与系统,复变函数,线性代数,微积分,统计学,编译器原理重新学了一遍,这些都是基础,一定要学懂学透彻,这会给后期的研发工作带来帮助,还要多画板,打板,多实操,光学不练效率很低,知识有重复性的,只有反反复复看和使用才能明白,可以买一些开发板辅助学习,现在网络发达,网络资源提高自己的学习效率。
Linux 系统估计是每一个嵌入式工程师发必经之路,不管你是嵌入式软件开发还是硬件开发,你都的把它弄透彻。
以上是本人个人经历和观点,和成长经历,不一定适合别人,仅供参考,本人是爱好才选择的这条路,若果你没有有这方面的喜好,还是慎重选择,
【5】、来自网友【嵌入式小美老师】的最佳回答:
1、Linux 基本操作学嵌入式开发,先得学会使用 Linux,说白了就是要会敲 Linux 命令。2、C 语言嵌入式开发最重要的语言就是 C 语言,也是用的最多的语言。不管是操作系统还是裸机开发,都有 C 语言的身影。C 语言无非就是数据类型、程序结构、数组、指针、函数、结构联合、内存管理…学完后如果能够写个学生管理系统,基本就算过关了。3、数据结构学任何的软件开发都要学数据结构,这个关系到程序运行效率问题。因为是嵌入式开发,不是服务器端开发,基本上掌握线性结构就可以应付嵌入式应用开发了,即链表、栈、队列。当然笔试的时候,涉及算法的考点也很多,所以还要掌握树以及一些常用查找、排序算法。4、系统编程这一步才真正涉及到嵌入式开发。主要涉及文件编程、进程控制、多线程编程、网络编程。系统编程的学习需要理论结合实际,不光是敲代码就行,你还得搞懂操作系统一些原理。有精力的话也可以尝试研究下内核,这会成为面试的亮点。5、单片机学习硬件入门首选。51 单片机适合学习,对硬件知识要求不高,因为学习基本都是在开发板上,学会连接一些基本线路就行。当然如果能够自己画 PCB,那就完美了。单片机对 C 语言要求比较高,如果开始的 C 语言基本不错,那单片机学起来也不会吃力。6、STM32 硬件的进阶学习。单片机是 8 位的控制器,相对简单,STM32 是 32 位芯片,操作起来确实比单片机复杂,当然性能也提高了不少。学习 STM32 的方法跟单片机不太相同,单片机是直接操作寄存器,STM32 更多的是使用库。所以还是需要很扎实的 C 语言基本功。7、ARM Cortex A 这个才是最实用的嵌入式。以前学习用的 ARM9 比较多,比如 mini2440。现在基本都是 ARM Cortex A 系列。学到这一步,又要回到操作系统了。移植操作系统是嵌入式开发必须掌握的技能。你得知道 U-BOOT、内核、根文件系统,他们怎么裁剪、编译、烧写。当然这一块也会经常提到驱动。驱动就比较复杂了,既要懂底层硬件、又要懂内核。如果有精力,可以研究研究,如果没有,把上面的内容学好了,足够找到一份不错的工作了。以上都是跟嵌入式软件相关的。当然嵌入式跟硬件也脱不了关系,没有电路板,哪来的嵌入式。要是学习这一块知识的话,就得好好研究大学课堂上的数电、模电、射频..
以上就是关于问题【如何开始学习嵌入式开发?】的全部回答,希望能对大家有所帮助,内容收集于网络仅供参考,如要实行请慎重,任何后果与本站无关!