请问学习ARM嵌入式开发应该准备些什么开发工具和要求?

请问学习ARM嵌入式开发应该准备些什么开发工具和要求?,第1张

感谢邀请。

这个问题相信是困扰所有嵌入式初学者的难题,

下面课内容是嵌入式学习必学的:C语言;C++; *** 作系统;计算机组成原理;linux编程;51单片机;arm;硬件编程语言(FPGA);模拟电路&数字电路。

1、cc++语言,这是计算机行业的必修课,必须找扎实实学好,可以安装turboc编译器为开发环境,联系C语言编程;安装vc++60学习C++编程。

2、 *** 作系统,先在电脑上安装一个vmwareworkstation,然后在vmwareworkstation里安装一个linux(redhat企业版)虚拟机。学习一下 *** 作系统的基本原理,熟悉linux环境下的开发环境,然后你就可以照着《自己动手写 *** 作系统》写个 *** 作系统试试。

3、计算机组成原理,熟悉计算机的基本原理,看看一个计算机的基本组成及软件在里面是如何跑的。

4、《unix/linux编程实践教程》可以说是linux编程的必修课,很不错的一本书,初学嵌入式的朋友可以看看。

5、单片机,其实就是一台电脑,像现在的汽车控制、led控制、屏幕亮光程度控制,它都可以实现,自己买块开发板弄一下,你能学到很多的别人学不到的。

6、arm,现在流行的微机,说白了就是32位的单片机,还可以跑 *** 作系统哦,自己想办法移植一个 *** 作系统上去吧

7、硬件编程语言(FPGA),芯片到底是怎么做成的,学习这门课,你就知道了

8、模拟电路&数字电路,硬件的基础,如果可以的话,学习下protel,自己做个硬件pcb板试试。

计算机这行都是偏向于实践的课程,所以要注重动手能力,

学习嵌入式这基本课程的时候,你可以按照这样的顺序来学习:

1:C语言、计算机组成原理、模拟电路&数字电路

2:汇编语言、单片机、 *** 作系统、C++

3:硬件编程语言、arm

嵌入式开发大抵分四个方向,硬件、驱动、内核、应用,如果是希望向嵌入式软件方向发展的话,目前常见的是

嵌入式Linux+ARM方向,关于这个方向,大概分3个阶段:

1、嵌入式linux上层应用,包括QT的GUI开发

2、嵌入式linux系统开发

3、嵌入式linux驱动开发嵌入式目前主要面向的几个 *** 作系统是,LINUX,WINCE、VxWorks等等Linux是开源免费的,而且其源代码是开放的,更加适合我们学习嵌入式。

自学的话你可以尝试以下路线:

(1)C语言是所有编程语言中的强者,单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握。推荐书籍:谭浩强的很不错,《TheCProgrammingLanguage》这本经典的教材是老外写的,也有中译版本。

(2) *** 作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。

(3)Linux *** 作系统就是用C语言编写的,所以你也应该先学习下Linux方面的编程,只有你会应用了,才能近一步去了解其内核的精髓。推荐书籍:《UNIX环境高级编程》(第2版)

(4)了解ARM的架构,原理,以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是起码的要求是能够看懂arm汇编。

(5)系统移植的时候,就需要你从下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。

(6)驱动开发linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前你要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。

给大家把一个嵌入式开发学习大方面的学习框架搭出来了

最后呢祝大家能够在学习的路上马到成功。

找不到指定文件。
Ubuntu是一个基于Debian的开源Linux发行版,它是一个使用Linux内核的免费 *** 作系统,Ubuntu将Unix *** 作系统的所有功能与可添加可定制的GUI结合在一起,Ubuntu主要用于个人计算机,但也存在服务器版本。noinputfiles未指定输入文件意味着找不到指定的文件。一般情况下,root指向root指令设置不正确和正确的目录后,要确保相关文件存在。
虚拟不符合或不一定符合事实的虚拟的情况,凭想象编造的事,由高科技术实现的仿实物或伪实物的技术。

你可以先在电脑上装一个VMWare 71版本的虚拟机,然后在虚拟机里面装一个Ubuntu1004LTS的Linux *** 作系统。然后在虚拟机里面开发嵌入式ARM。
一般来说Linux的应用程序和Windows的不通用,不过一般都有功能类似的替代品。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10720424.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存