问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

自学嵌入式开发应该先要学些什么?

发布网友 发布时间:2022-04-20 08:18

我来回答

4个回答

热心网友 时间:2022-04-30 11:40

嵌入式开发的学习其实并没有那么难,只要了解学习的体系,掌握正确的学习方法,学习起来并不难。来讲一下嵌入式开发都要学些啥!

嵌入式开发的主要学习内容:

热心网友 时间:2022-04-30 12:58

最基础的 数电模电 要理解,能掌握最好
数电模电别看是最基础的,大多数人都迷糊着呢。
掌握了数电模电,电路图都能看懂了,你绝对不愁找不到工作!

专业基础的话肯定从 《单片机》 入门 很简单
不同学校,教的单片机型号可能不一样,不过大同小异,差别很小
但很多学校器材比较老,可能学的还是MCS51系列
目前流行的是ARM系列 ARM7 ARM9
ARM7上手较简单,广泛用于工业控制
ARM9较难些

不过目前的趋势是 FPGA 门电路
与普通单片机有本质区别,用处更广,功能更强
鉴于你现在可能还没学完 数电 ,它们的区别就不给你说了

我的建议
1、模电数电 学好
2、单片机(入门简单的如ARM7) 要多做做实验,能完全理解控制方式。
要经常能去实验室,自己动手焊板子。好好利用学校的器材资源,可以做一些小发明,会很有成就感。(不要像我,在学校没好好利用。出来了,都是自己掏钱买材料研究,贵啊!!)
3、相信我,FPGA绝对是大势所趋,你要是觉得学的差不多了就搞它吧。追问杯具了,我现在去学了《数据结构》。

追答数据结构也是必须学的
你不必担心
《数据结构》属于专业基础课之一
嵌入式相对于其他计算机专业来说,对数据结构方面要求不大

热心网友 时间:2022-04-30 14:33

1. 说在前面

“嵌入式软件开发”包括“嵌入式应用开发”和“嵌入式驱动开发”,本站主要关注的嵌入式开发内容为“嵌入式驱动开发” ,继续细化的方向为“嵌入式Linux驱动开发”,知识点我们首先可以从方向的名字关键字上有所理解:嵌入式,Linux,驱动。

“嵌入式” 代表的是产品的类型,它是相对于PC来说的,具体的概念,本站已经说的非常清楚了,这里就不累述了。具体请看关注新人系列的职业规划帖子。
“Linux”代表的是嵌入式产品中使用的软件操作系统,也就是说我们选择Linux操作系统作为主要学习对象。你可以理解为它相对于PC机上的windows操作系统。
“驱动”代表的是Linux操作系统开发中的一个方向“驱动开发”,说明我们当前关注的是linux驱动开发,而不是linux应用开发。你可以理解为相对于PC中的windows操作系统的驱动,我们用PC电脑的时候,有些时候你不是需要自己安装某些驱动吗,就是这个意思。

总结一下,所以我们现在关注的开发内容归根到底就是“驱动“开发,不过这个驱动是”Linux“操作系统的驱动,而这个”linux“操作系统主要是跑
在”嵌入式“产品上的。所以我们开发的主要知识点就是集中在”Linux驱动“ 和
”嵌入式“两个概念上来。我们知道了知识点概念的前因后果之后,开始对这两个知识点的开发细节做进一步细化。

所谓”嵌入式“开发:
我们知道概念上它是相对于PC开发,前面的叙述得知我们采用的操作系统为linux,那么我的问题来了:如果PC机上也跑的是Linux操作系统,基于PC的linux开发其实和基于嵌入式系统的linux开发基本开发思路是一样的,只不过开发过程中的编译,
烧录方式有差别。下面我们就说说这两种开发方式的异同点,因为PC对于我们来说不陌生,那么在PC机上安装个ubuntu系统也应该是大家都这么玩过。既
然这两种开发方式只是编译和烧录有区别的话,那么我们就很容易通过PC机上安装个ubuntu来快速认识嵌入式linux系统的开发了。

PC机linux开发:

如果你有个PC,并且安装了ubuntu,假设我们PC上有SD卡控制器,但是ubuntu中的linux并没有这个型号的SD卡驱动,那么如果我们想开发个PC机上SD卡驱动,我们就可以分以下几步开发:
(1)下载相应的ubuntu版本的linux内核源码到本PC机。
(2)如果该linux代码里没有该SD卡型号的驱动,那么就需要我们针对该SD卡型号写基于linux的SD卡驱动,这一步也就是我们主要的”驱动“开发任务。
(3)针对linux内核,直接在本机上make menuconfig,配置选择该型号的SD驱动支持,前提是你已经开发好了SD卡驱动了。
(4)使用本机ubuntu上GCC编译器直接编译内核:make。
(5)烧录内核:直接在本机上make moles_install, make install.这个动作将把相应的驱动程序拷贝到ubuntu的boot目录,重启的时候SD卡驱动就会生效了。

嵌入式系统linux开发:

如果你有个s3c6410,2410的开发板,或者任何一个嵌入式arm的开发板,并且安装了Linux,假设我们板子上有SD卡控制器,但是用的linux并没有这个型号的SD卡驱动支持,那么如果我们想开发个基于开发板机上SD卡驱动,我们就可以分以下几步开发:
(1)拿到相应的版本的linux内核源码并放置到开发用的PC机。
(2)如果该linux代码里没有该SD卡型号的驱动,那么就需要我们针对该SD卡型号写基于linux的SD卡驱动,这一步也就是我们主要的”驱动“开发任务。
(3)针对linux内核,直接在开发机上make menuconfig ARCH=arm,配置选择该型号的SD驱动支持,前提是你已经开发好了SD卡驱动了。
(4)使用开发PC机ubuntu上已经安装好了的arm-linux-GCC编译器直接编译针对开发板的内核:make ARCH=arm。
(5)烧录内核:将编译后生成的内核文件通过串口现在,usb下载,tftp等下载到目标开发板子上面,重启开发板,看到SD卡驱动生效。

大家可以看到我们关心的两个知识点中的“驱动”开发,主要是第(2)项在PC上和嵌入式上基本是相同的。另一“嵌入式”知识点是和PC上有区别的,主要区别在于:编译和烧录方式。

所以我们对于“嵌入式linux驱动”开发的知识点总结,主要是linux“驱动”的开发和“嵌入式”系统的烧录编译方法。

2. 知识点总结

嵌入式系统的烧录和编译知识点:

(1)PC服务器的准备,安装ubuntu系统
(2)交叉编译器的安装,编译方法。
(3)下载到目标板,串口烧录,usb下载烧录,tftp网络烧录。
请大家仔细阅读本站的跟我学系列贴子,通读之后我相信“嵌入式”的这个知识点就已经完整的掌握啦。
http://mcuos.com/thread-8166-1-1.html

Linux驱动开发知识点:
(1)C语言基础 - 基础知识点
(2)操作系统基础理论 - 基础知识点
(3)简单的linux命令操作 -基础知识点, 有没有玩过ubuntu或者其他发行版?有没有使用过命令行做一些事情?
(4)设备的文件节点 - 必备知识点,/dev/下面节点的意义,mknod创建dev文件节点。
(5)简单驱动的moles的编写和加载 - 必备知识点, insmod, modprobe, rmmod命令的意义,为模块传递参数。
(6)字符型驱动编写 - 必备知识点
(7)驱动基本调试方法 - 必备知识点,printk打印驱动信息,dmesg打印kernel信息,proc,sys目录的意义。
(8)共享资源的同步机制 - 必备知识点,资源临界区概念,自旋锁,信号量,等待队列的使用。
(9)硬件IO的访问 - 必备知识点,ioremap,memory map,writel,readl读写接口。
(10)中断的request和中断号的分配 - 必备知识点。
(11)PCI,AMBA总线知识 - 必备知识点。
(12)时间管理 - 必备知识点,udelay,mdelay长延时和短延时,jiffies,os timer原理。
(13)块设备驱动程序的编写 - 必备知识点。
(14)Kconfig和Makefile,添加驱动到内核 - 必备知识点。
(15)一个比较大型的驱动程序学习 - 选学知识点,选取任何一个eMMC,SD,USB等比较大型的驱动学习。

3. 知识点速成
osboy正在针对知识点进行梳理,目前速成教程已经编纂完毕,速成班招生进行中。。。详情请参考:http://mcuos.com/thread-9692-1-1.html,也可以QQ 82475491联系osboy进行咨询交流。

热心网友 时间:2022-04-30 16:24

怎么定位的?嵌入式指啥呢?追问其实,嵌入式是啥我也不是很清楚。

嵌入式开发需要学什么

1、第一:设备。嵌入式开发要接触到大量的设备,所以掌握设备的相关知识是学习嵌入式开发的第一步。掌握设备的相关知识需要从设备的组成部分开始,比如设备的体系结构、传感器、操作指令、操作系统以及开发环境等。对于初学嵌入式开发的人来说,选择一个适合的实验设备是比较重要的,比较常见的选择包括Arduino...

想转行做嵌入式,需要自己准备些什么?

1、C语言 关于C语言,我们要熟练的掌握它的基本语法,并且会加以运用,这样我们在嵌入式软件编写代码这一块才能更加得心应手,不会出现系统内部的基本代码看不懂的情况。2、嵌入式最核心的操作系统,所以操作系统原理也应该是要有所了解的,关于操作系统的各种性质和内部用法需要熟练掌握,对嵌入式系统更...

学习嵌入式开发要学习哪些知识?

4.汇编语言和C语言:学习汇编语言用于编写底层的嵌入式程序,同时也需要掌握C语言,因为它常用于嵌入式系统的高级编程。5.嵌入式操作系统:熟悉嵌入式操作系统,如FreeRTOS、RTOS等,了解它们的特性、调度算法和应用场景。6.嵌入式编程:学习嵌入式编程技术,包括裸机编程(不使用操作系统)、驱动程序开发、...

请问,零基础自学嵌入式开发要学多久能到达参加工作的水平

首先,千锋教育作为IT互联网技术培训的领军企业,我们拥有丰富的教学经验和行业资源。我们的师资团队由经验丰富的嵌入式开发专家组成,他们将为学员提供系统化的嵌入式开发知识,帮助他们快速掌握相关技能。其次,千锋教育的课程设置科学完善,注重理论与实践相结合。我们通过项目实战和实践活动,让学员获得真实的...

嵌入式开发要学什么?学习嵌入式开发要学哪些?

1.电路知识 首先你要学习电路、模电、数电,认识电阻、电容、三极管,基础器件要知道,放大电路、集成运放、时序电路基本电路能看懂,不然看电路图一定是云里雾里,也就无法进行后续的工作。硬件产品的设计实现,包括器件选型、原理图和PCB设计、电路调试,都需要过硬的电路基础。2.C语言 C语言是嵌入式开发...

北大青鸟设计培训:学习嵌入式开发需要什么样的基础?

学习嵌入式开发需要具备一些基本的技术和知识基础,包括但不限于以下几个方面:1.编程基础:具备扎实的编程基础是学习嵌入式开发的关键。熟悉C/C++等编程语言,理解基本的编程概念和算法是必备的。2.电子电路基础:了解基本的电子电路知识,包括电阻、电容、电感等基本元件的原理,以及数字电路和模拟电路的...

学习嵌入式开发需要哪些知识?

要学习嵌入式开发,首先需要明确目标,主要包括掌握ARM架构、Linux操作系统及应用软件开发。以下是学习路径的详细规划:1. 确定基础:了解主流嵌入式微处理器如ARM9的结构与工作原理。2. 选择操作系统:熟悉并专攻一个嵌入式操作系统,如uCLinux或Linux(具体版本待定)。3. 开发流程:掌握软件开发流程,通过...

学习嵌入式,需要具备什么基本的知识

1.掌握C语言高级编程。无论是对嵌入式软件还是硬件开发编程,都是不可缺少的一部分。因此不管您是自寻、还是拜师我坚信这都是他们教您的第一步。2. 要了解嵌入式Linux操作系统。你得首先对这个系统有一定的认识,就好比你想盖房子、你得需要水泥、砖头、钢筋。那么嵌入式Linux系统同样如此。这个比喻...

嵌入式开发都要学什么课程

嵌入式开发Linux系统开发;嵌入式开发Linux内核开发;嵌入式开发Linux驱动开发基础;嵌入式开发Linux驱动高级开发;具体的嵌入式开发学习哪些课程就介绍到这里了,除以上相关学习内容外,对于嵌入式开发学习者来讲还应该具备一些学习态度和学习方法。1.在学习和工作中要脚踏实地 2.多看代码、多写代码 3.通过华清...

嵌入式软件开发专业要学什么(嵌入式软件工程师学什么专业)

学习使用版本控制系统,如Git,以便与团队协作。嵌入式软件开发通常是团队合作的一部分,有效的协作工作是必要的。以上是嵌入式软件开发专业所需学习的主要方面。这个领域的知识涵盖了计算机科学、电子工程和实时系统等多个领域,因此需要综合性的学科背景。以上内容是由猪八戒网精心整理,希望对您有所帮助。

学嵌入式要学什么 嵌入式开发怎样自学 嵌入式开发自学 嵌入式开发要学多久 嵌入式开发自学推荐的书籍 嵌入式怎么自学 嵌入式开发学到啥 嵌入式开发入门教程 嵌入式开发难学吗
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑为什么从网卡启动? 哈尔滨的公办专科学校 给亲朋好友送鲍芹送几盒合适 请问四川凉山不是中专就可以报考村官吗 为什么我报了说我学历条件不符合... 曾沛慈真实身高 新组装电脑安装U盘启动win10系统后无限蓝屏,每次蓝屏代码不一样... 从保山出发3个小时的车程能到哪呢? 求帮忙啊 已知a的x次方=3,b的y次方=2,求( 魔兽世界职业选择我想在猎人,萨满,武僧,选一个一直玩, 魔兽世界5.4职业选择,混合职业哎,小德,牧师,武僧,奶德可以,但是输出... 嵌入式系统开发与软件开发的区别 UI设计和嵌入式哪一个更有市场? 嵌入式系统的UI设计一般都用什么软件实现?(不是... 关于寄生虫 这个寄生虫学名叫什么?在我老家那边叫草爬子,附图! 污水处理厂,镜检中出现的线虫 的学名叫什么? 一种带红色的寄生虫学名叫什么?? 十大人体寄生虫危害有多大 如何知道自己身体里有没有寄生虫?? 能寄生在人的大脑上的寄生虫是什么 寄生虫的含义是什么 桔子中寄生虫的学名叫什么? 医学上的五大寄生虫都是什么? 人身上一共寄宿着哪几种寄生虫,跳虫,蛔虫…,它们... 寄生虫的意思? 小鲫鱼肚子里发现的寄生虫,学名是什么? 人体十大寄生害虫都是什么?它们对人体都有什么害处? 寄生虫的意思是什么? 五大类寄生虫 寄生虫的名词解释 针对c/s架构服务器是嵌入式设备的用什么作ui自动化... 让嵌入式linux系统开机后不加载桌面,直接加载我的... 嵌入式linux和嵌入式android系统有什么区别和联系 关于嵌入式系统应用的程序 嵌入式就业方向有哪些? 嵌入式软件开发和PC机软件开发的的异同点 嵌入式开发要学什么,小白必备 嵌入式开发学习步骤 神经调节与体液调节 生物,什么叫神经-体液调节 酸菜香菇饺子馅的做法 冻豆腐香菇酸菜馅饺子的做法 香菇与酸菜鸡蛋一块包饺孑有无副作用? 白菜酸菜饺子馅的做法 酸菜和磨菇可以包饺子吗 酸菜馅素馅饺子怎么调馅好吃 素酸菜饺子馅做法大全 营养专家说:这几种饺子馅儿最健康 香菇和什么一起包饺子好吃 酸菜馅怎么做