感谢邀请。
这个问题相信是困扰所有嵌入式初学者的难题,
下面课内容是嵌入式学习必学的:C语言;C++;操作系统;计算机组成原理;linux编程;51单片机;arm;硬件编程语言(FPGA);模拟电路&数字电路。
1、cc++语言,这是计算机行业的必修课,必须找扎实实学好,可以安装turboc编译器为开发环境,联系C语言编程;安装vc++6.0学习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内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。
给大家把一个嵌入式开发学习大方面的学习框架搭出来了
。最后呢祝大家能够在学习的路上马到成功。
请问学习ARM嵌入式开发应该准备些什么开发工具和要求?
1、cc++语言,这是计算机行业的必修课,必须找扎实实学好,可以安装turboc编译器为开发环境,联系C语言编程;安装vc++6.0学习C++编程。2、操作系统,先在电脑上安装一个vmwareworkstation,然后在vmwareworkstation里安装一个linux(redhat企业版)虚拟机。学习一下操作系统的基本原理,熟悉linux环境下的开发环...
arm嵌入式开发环境到底要安装哪些软件(arm嵌入式开发步骤)
1.**交叉编译工具链:**ARM嵌入式开发通常需要使用特定的交叉编译工具链,以便在主机上生成能在ARM平台上运行的代码。2.**开发板的驱动和工具:**根据你使用的ARM开发板型号,需要安装相应的驱动和调试工具,例如OpenOCD、J-Link等。3.**集成开发环境(IDE):**选择一个适合你的IDE,例如Eclipse、...
我想学习ARM嵌入式,应该从哪儿入手?
1、 Linux基础知识和系统安装 2、 交叉环境的搭建;开发板的初步认识和环境建立;3、 Linux常用命令,文本编辑器vi,简单shell脚本编程;4、Linux开发环境基础:Gcc,Gdb,Make和Makefile;5、嵌入式软件开发环境搭建与使用,开发板平台内核系统的烧写;二、嵌入式C语言编程 1、复习C语言基础知识,强化指...
arm嵌入式开发环境到底要安装哪些软件(arm嵌入式开发步骤)
一般安装了一个软件,会包括编译环境,编码器,优化器等,现在都集成了很多,ARM支持C,汇编,高级的还有vc比如我用的ads1.20就有那么多。至于下程序到arm上,需要安装一个软件,我用的是HJTAG,因为我用JTAG仿真,所以我一共安装了2个软件。但如果跑系统,你还得有头文件,这个与你arm用的操作系统...
学习嵌入式开发需要哪些知识?
要学习嵌入式开发,首先需要明确目标,主要包括掌握ARM架构、Linux操作系统及应用软件开发。以下是学习路径的详细规划:1. 确定基础:了解主流嵌入式微处理器如ARM9的结构与工作原理。2. 选择操作系统:熟悉并专攻一个嵌入式操作系统,如uCLinux或Linux(具体版本待定)。3. 开发流程:掌握软件开发流程,通过...
嵌入式开发要学哪些东西?
一:嵌入式开发必备课程:1、C语言 2、C++ 3、操作系统 4、计算机组成原理 5、Linux编程 6、51单片机 7、ARM架构 8、硬件编程语言(FPGA)9、模拟电路与数字电路 二:学习嵌入式课程的实践重点:1、C或C++语言:掌握计算机基础,使用Turbo C或VC++6.0开发环境进行编程实践。2、汇编语言与MFC编程:...
初学嵌入式学习,用什么开发板较好?可以直接从ARM11学起吗?
对于ARM嵌入式的初学者,用ARM9开发板。\\x0d\\x0a\\x0d\\x0a首先,从功能上来说,ARM11要比ARM9强一些,但是性能优异并不代表适合初学者。对于初学者来说ARM11的有些功能是冗余。\\x0d\\x0a\\x0d\\x0a其次,学习ARM9或者ARM11就在所难免学习其所支持的操作系统Linux(ARM11可以支持Android)。...
大学生学ARM前的必要准备是什么?
(2)操作系统软件开发(linux应用最广泛),我建议你先看看关于数据结构的书籍,然后才学习linux,从最基础开始(譬如命令,shell,makefile,交叉工具的使用,内核的移植,设备驱动开发,QT,网络···太汗了)。了解linux的内核。这听起来很多,不过幸好的是,我们很多东西拿来,修改一下就能用得上了...
自学ARM嵌入式应该先从哪些知识入手?
1,arm是比较难的嵌入式方案,也是炙手可热的嵌入式方案,所以学好arm高薪恨容易,所以在学好arm之前,你必须建立很好的学习兴趣。2,学习arm,不要着急上手arm开发板,不然遇到很多问题你都无法下手,建议你先认真大好基础。现在arm一般和linux搭配使用,所以建议你先大好linux基础,以后在上手arm就容易多...
自学嵌入式需要哪些课程
嵌入式系统开发工具也是必备技能,掌握编译器、调试器、仿真器、下载器、开发板等工具的使用方法,以及调试技巧,能够高效地进行系统开发。通信协议是嵌入式系统进行数据传输的基础,UART、SPI、I2C、CAN等常见协议,需理解其原理与应用场景,能够灵活运用。最后,嵌入式系统应用开发是将理论知识应用于实践的...