首页 > 编程知识 正文

arm嵌入式开发培训(嵌入式知识点)

时间:2023-05-06 05:49:04 阅读:2288 作者:3199

嵌入式Linux操作系统学习计划

ARM LINUX路线侧重于嵌入式LINUX操作系统及其应用软件开发目标:

(1)掌握主流嵌入式微处理器(初步命名为arm9)的结构和原理

(2)必须掌握嵌入式操作系统(最初指定为uclinux或linux,版本待定)

(3)必须熟悉嵌入式软件开发流程,至少做过一个嵌入式软件项目。

嵌入式软件开发的优势在于:

(1)目前国内外该领域人才匮乏。该领域进入门槛较高,非专业IT人员很难进入该领域;另一方面,因为这个领域比较新,目前发展太快,大部分人都无条件接触。

(2)与企业计算等应用软件不同,嵌入式人才的工作强度通常较低(但收入不低)。

(3)如果你想有一天创业,自己做产品,嵌入式软件不像应用软件那么容易被盗版。硬件设计一般由其他公司定制(这叫“OEM”:OEM),都是通用硬件。我们只设计软件,成为自己的产品。

(4)兴趣,这是最重要的。

嵌入式软件开发的缺点是:

(1)入门起点高,使用的技术往往难度大。如果软硬件基础不好,尤其是操作系统级的软件基础不深,可能不适合此行。

(2)该领域的企业数量远远少于企业计算企业。

(3)少数公司往往要求硕士以上学历的人从事嵌入式技术,这主要是基于嵌入式技术的难度。但是大多数公司没有这个要求,只要有经验就行。

(4)平台支撑性强,换平台难。

兴趣来源:

1.不同的成功概念,不浪费我的生命,就是我的成功。

2.喜欢思考,挑战逻辑思维。

3.比如C

c语言是一种可以发挥思维极限的语言。C的精神的某些方面可以概括为以下几个短句:

相信程序员。

不要阻止程序员做需要做的事情。

保持语言简洁明了。

做手术的一种方法。

让它跑得足够快,虽然不能保证它会便携。

4.我喜欢底层开发,讨厌vb开发工具(不是说vb不好)。

5.发展前景好,适合创业,不想死的时候当工程师。

方法步骤:

1.基础知识:

目的:了解硬件的工作原理,但专注于嵌入式软件,尤其是操作系统软件,这将是我的优势。

科目:数字电路、计算机组成原理、嵌入式微处理器结构。

汇编语言,C/C,编译原理,离散数学。

结构与算法,操作系统,软件工程,网络,数据库。

方法:虽然科目多,但都是简单的基础,大部分已经掌握。不是所有的都可以研究,但可以根据需要选择。

主要课程:c编程语言(我从来没有时间去读),数据结构-C2。

2.学习linux:

目的:深入掌握linux系统。

方法:使用Linux->;林旭系统编程开发->;驱动程序来开发和分析Linux内核。先深看,再解释原理。看了几遍,看形势分析,和深度对比。两本书交叉,深度是关键环节,情感是目标。分析是0.11版本,适合学习。最后,深入研究代码。

主要话题:linux内核的完整分析,unix环境的高级编程,对linux内核的深入理解,场景分析和源码生成。

3.了解嵌入式linux:

目的:掌握嵌入式处理器及其系统。

方法:(1)嵌入式微处理器的结构和应用:直接arm原理和汇编就够了,不要重复x86。

(2)嵌入式操作系统类:ucOS/II简单,开源,可用于入门。然后深入研究uClinux。

(3)必须有开发板(arm9以上),有条件可以参加培训(可以快速进步,认识一些朋友)。

主要书籍:《嵌入式系统》的硬芝麻等arm9手册和arm组装说明等。

4.深入研究:

A.数字图像压缩技术:主要是掌握MPEG、mp3等编解码算法和te

12.90.173.*二楼

C.网络与信息安全技术:如加密技术、数字证书CA等。

D.数字信号处理技术:数字信号处理。DSP处理器通过硬件实现数字信号处理算法。

注:太多细节未说明,可根据实际情况调整。重点是1和3,不一定要按顺序做。对于学习C来说,原因是C不仅仅是一种语言,一种工具,更是一种艺术,一种文化,一种哲学思想,而不是可以炫耀的东西。对于linux内核来说,学习编程和阅读一些优秀的代码是很有必要的。

注意:学会举一反三,基础扎实,很多东西很容易看出来。要成为一名合格的程序员,必须精通至少一种编程语言,并具有良好的逻辑思维。我们必须把理论和实践结合起来。

不要盲目学习技术。虽然很难找到时间,但我们还是需要留出一些空间来完善其他爱好,比如宇宙、绘画、机械、管理、心理学、游戏和科幻电影。

还有一些不愿意做但必须要做的!

技术是通过编程编程在编程编出来的。永远不要梦想一步登天,不要做浮躁的人,不要觉得路途漫上。而是要编程编程在编程,完了在编程,在编程!等机会来了在创业(不要相信有奇迹发生,盲目创业很难成功,即便成功了发展空间也不一定很大)。

嵌入式书籍推荐

Linux基础

1、《Linux与Unix Shell 编程指南》

C语言基础

1、《C Primer Plus,5th Edition》【美】Stephen Prata着

2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)着

3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)

4、《嵌入式Linux应用程序开发详解》

Linux内核

1、《深入理解Linux内核》(第三版)

2、《Linux内核源代码情景分析》辛勤的芝麻 无语的毛豆著

研发方向

1、《UNIX Network Programming》(UNP)

2、《TCP/IP详解》

3、《Linux内核编程》

4、《Linux设备驱动开发》(LDD)

5、《Linux高级程序设计》 gxdfj著

硬件基础

1、《ARM体系结构与编程》彩色的钻石着

2、S3C2410 Datasheet

英语基础

1、《计算机与通信专业英语》

系统教程

1、《嵌入式系统――体系结构、编程与设计》

2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》辛勤的芝麻 无语的毛豆着

3、《Building Embedded Linux Systems》

4、《嵌入式ARM系统原理与实例开发》 gxdfj著

理论基础

1、《算法导论》

2、《数据结构(C语言版)》

3、《计算机组织与体系结构?性能分析》

4、《深入理解计算机系统》【美】Randal E. Bryant David O''Hallaron着

5、《操作系统:精髓与设计原理》

6、《编译原理》

7、《数据通信与计算机网络》

8、《数据压缩原理与应用》

C语言书籍推荐

1. The C programming language 《C程序设计语言》

2. Pointers on C 《C和指针》

3. C traps and pitfalls 《C陷阱与缺陷》

4. Expert C Lanuage 《专家C编程》

5. Writing Clean Code -----Microsoft Techiniques for Developing Bug-free C Programs

《编程精粹--Microsoft 编写优质无错C程序秘诀》

6. Programming Embedded Systems in C and C++ 《嵌入式系统编程》

7.《C语言嵌入式系统编程修炼》

8.《高质量C++/C编程指南》xbdhl

尽可能多的编码,要学好C,不能只注重C本身。算法,架构方式等都很重要。

这里很多书其实是推荐而已,不必太在意,关键还是基础,才是重中之重!!!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。