嵌入式Linux学习入门

大四毕业生开始嵌入式开发的学习,主要涉及51单片机、ARM、STM32,强调C语言的精通,尤其是结构体、链表和指针。还涵盖了Linux系统编程、驱动编写、协议理解,如IIS、SPI等,并提及了不同的操作系统和GUI库。此外,文章也提到了网络协议和对硬件电路基础的理解对于成为一名成功的嵌入式开发者的重要性。
摘要由CSDN通过智能技术生成

大四毕业了,签了一份嵌入式开发的工作,现在准备入门了,搜集一些要学习的内容。

嵌入式开发学习路线

请添加图片描述

51单片机,arm,stm32在单片机上

在单片机上编程c语言和在嵌入式系统写c语言,有很大不同

gcc又与我们普通的c语言有所不同。

难的学不会是因为简单的没学好!

c语言,必须精通,主攻结构体,链表,指针,数组,与或位操作

arm汇编,认识,可以自己做一些简单的修改,没有必要精通

linux + 好看的衣服(界面) = android
请添加图片描述

知识在我头脑中变为解决问题的能力

请添加图片描述

数电、模电、c语言

Linux与单片机的入门必看

linux与单片机

成为一名嵌入式Linux开发工程师需要学习哪些知识? - 知乎 (zhihu.com)

(4 封私信 / 19 条消息) 怎样学会单片机? - 知乎 (zhihu.com)

单片机的程序中的函数,基本上都是操作寄存器, 单片机项目严重依赖于硬件,换一个芯片后就得重写一套代码 。

单片机的基础就是看电路图、看芯片手册,然后在这些函数里读写寄存器

用linux是不可以直接访问寄存器的,需要借助驱动程序,将参数传给驱动程序,它会帮我们访问寄存器。

在学习的过程中可以“不求甚解”,抱着疑问慢慢学下去,这些问题自然就解决了,不要打破砂锅问到底。

对于驱动程序:作为初学者,懂几个简单的驱动程序,有利于工作交流;理解中断、进程、线程的概念,无论是对驱动开发、应用程序开发,都是很有好处的。所以对于初学者,建议前期只学习这几个驱动:LED、按键、中断。

请添加图片描述

linux系统编程、windows系统编程,核心就是学习这些系统给的接口函数,然后用C语言调用这些函数,以完成我们写的程序顺利在linux上运行。

请添加图片描述

C语言(是吃饭的家伙,占了工作的80%)

数组,结构体,指针,C标准库

数据结构

数组,链表,队列,树 、图

驱动编写

给你一个芯片,你要很快地把它驱动起来,比如说一个音频编解码芯片,用IIS协议把它驱动起来,我得去写这个驱动;给我一个外部的额ADC芯片,通过SPI我要去写驱动。

协议

IIS协议、SPI协议、model bus协议、can协议,高级一点的USB协议,8080总线

完成以上这些就可以开始裸机开发了

操作系统

uclinux、FreeTROS、首先操作系统有两种:一种是用MMU(Memory
Managenent Unit ,即存储管理单元)的,另一种是不用MMU的。
用MMU的是Windows、 MacOS、 Linux 、Android;
不用MMU的是FreeRTOS 、VxWorks 、 ucLinux、uc/OS.
其次CPU也有有两种 :带MMU的和不带MMU的。
带MMU的有 Cortex-A、ARM9 、ARM11系列。不带MMU的有 Cortex-M系列

GUI

一些开源的GUI,一些常见的比如说,emwin、STemwin、LVGL、TouchGFX。

网络协议

uIP、LWIP、

linux和电路基础

用电路基础要看懂硬件工程师的原理图,

认知

在公司,你对行业和业务了解的越深刻,你就有越多的话语权

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fruit_Caller

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值