请教各位大佬:嵌入式 Linux 如何入门?

在下会一点基础的 Java 和 C ,欲学习嵌入式 Linux ,应该如何系统的学习?工作前景如何?请各位佬指点,谢谢!

1 个赞

先选定方向,是 STM32,还是纯嵌入式Linux

嵌入式Linux呢

我也想知道
比如gpio怎么办

树莓派那种

太深的我也不懂,刚开始玩。
STM32算是软硬结合的,玩的深会涉及硬件设计(就要学习电子电路、数字电路等知识了)

嵌入式Linux层级高些,更多是应用层开发。深点儿就是驱动开发,更多的和 Linux 打交道(Android、鸿蒙、buildroot)。硬件也会涉猎,但没 STM32 那么直接

声明:本人所述不一定准确。可以问问GPT之类的,来进行比较。
嵌入式不建议树莓派,至少树莓派5之前都没有直接的 UART 接口。5 没有用过,所以不清楚。

不过嵌入式范围也比较大,自己先选定一个方向来学习。后面再扩大领域

随着万物互联时代的到来,AI、软硬件开发方向应该都没问题

GPIO只是其中硬件的组件而已,很小的一部分

树莓派板子的开放度有限。一般做嵌入式Linux开发的应该很少用树莓派,应该大多都是基于完全无系统的开发版玩的

好的,谢谢 :star_struck:

找个开发板先玩玩吧

不差钱的话树莓派,写写驱动之类的,或者使用buildroot构建系统镜像,调用交叉编译工具链构建应用程序之类的

想从硬件这块做上来可以看看F1C200S这个片子,便宜好玩,就是性能不是很够

1 个赞

可能是一个嵌入式linux的从业者,但是我研究生读的是CV,ML方向啊 :rofl:

写过内核驱动,移植过底层库,用过tflm库检测人

给出一点我的浅薄的建议。

入门的话建议买个开发板,越简单越好。随后

  1. 下载官方sdk,按照官方教程编译一个自己的iamge,烧写image。

  2. 熟悉sdk的运作原理,例如使用什么toolchain进行编译,使用什么工具打包镜像,使用什么进行系统引导,查看dts研究内核中有哪些驱动,上层应用有哪些,包含了哪些第三软件。

  3. 添加一个自己的内核模块(helloworld),添加一个新的软件(helloworld),最好可以内核和上层联动使用。

  4. 移植一个软件放入系统。

  5. 看自己更倾向于哪一方面的研究,专注于一个方面。

我申请过免费的板子,还买过树莓派2和树莓派4,都在吃灰

搞清楚你为啥要学嵌入式,然后先把基础打好,这些无关嵌入式的基础

模拟器很多, qemu就可以装,不着急买板子

好的,谢谢回复!

谢谢!很实用的建议!

大佬谦虚了,很深刻! :saluting_face:

好的,谢谢指点!

佬有什么推荐的树莓派教程吗,现在完全不知道从哪下手 :sob:

工业的话还是stm32和fpga吧,好赚钱

真玩嵌入式,不建议树莓派