首页 » 99链接平台 » 嵌入式arm系统原理与实例开发(嵌入式编程内核开发原理)

嵌入式arm系统原理与实例开发(嵌入式编程内核开发原理)

萌界大人物 2024-10-23 03:47:04 0

扫一扫用手机浏览

文章目录 [+]

ARM+LINUX路线,专注于嵌入式Linux操作系统及其应用软件开发目标:

(1)掌握主流嵌入式微处理器(初步定义为ARM9)的结构及原理

(2)必须掌握一种嵌入式操作系统(初步uclinux或者linux,版本待定)

嵌入式arm系统原理与实例开发(嵌入式编程内核开发原理) 99链接平台
(图片来自网络侵删)

(3)熟悉嵌入式软件开发流程,并完成过至少一个嵌入式软件项目。

从事嵌入式软件开发的好处有:

(1)目前国内外该领域的人才短缺,一方面该领域的准入门槛较高,非专业IT人员很难进入该领域;另一方面由于该领域比较新,目前发展速度过快,大多数人还不具备接触该领域的条件。

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

(3)如果要创业,开发自己的产品,嵌入式系统不像应用软件那么容易被盗版。
硬件设计一般都是找其他公司定制(这就叫“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—〉LINXU系统编程开发—〉Linux内核驱动开发与分析。
先看深入版,再看主要原理。
看几遍后再看场景分析,和深入版对比。
两本书是交叉的,深入版是提纲,场景是重点。
分析版是0.11,适合学习。
最后再深入代码。

主要图书:Linux内核完全解析、Unix环境高级编程、Linux内核深入理解、场景分析及源代码。

3.学习嵌入式Linux:

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

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

(2)嵌入式操作系统:ucOS/II简单,开源,适合初学者。
然后深入研究uClinux。

(3)你必须有开发板(arm9以上),并且如果可以的话能够参加培训(你会进步很快,还会交到一些朋友)。

主要书籍:毛德操《嵌入式系统》及其它arm9手册和arm汇编说明等。

4.深度学习:

A.数字图像压缩技术:主要掌握MPEG、MP3等编码、解码算法与技术。

B.通讯协议及编程技术:TCP/IP协议、802.11、蓝牙、GPRS、GSM、CDMA等。

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

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

注:太多细节就不解释了,可以根据实际情况调整。
重点是1和3,不必严格按照顺序。
对于学习C++,原因是C++不仅仅是一种语言,一种工具,更是一门艺术,一种文化,一种哲学,而不是用来炫耀的东西。
对于Linux内核,学习编程,阅读一些优秀的代码也是必要的。

注意:一定要学会举一反三,基础扎实,看一看就能学到很多东西。
要想成为一名合格的程序员,必须精通至少一门编程语言,有良好的逻辑思维,理论联系实际。

不要只研究技术。
虽然挤出时间很难,但你还是应该留出一些空间来发展其他爱好,比如太空、素描、机械、管理、心理学、游戏、科幻电影。
还有一些事情你不想做但必须做!

技术是通过编程和编程创造出来的。
永远不要梦想一步登天,不要浮躁,不要觉得路很长。
而是应该编程、编程,再编程、再编程!
等待机会来临,去创业(不要相信奇迹,盲目创业很难成功,即使成功,发展空间也未必很大)。

嵌入式书籍推荐

Linux 基础

1. Linux 和 Unix Shell 编程指南

C 语言基础

1. C Primer Plus,第 5 版(作者:Stephen Prata)

2.《C 编程语言》,第 2 版,作者:Brian W. Kernighan 和 David M. Rithie(K & R)

3. UNIX环境高级编程,第2版(APUE)

4.《嵌入式Linux应用开发详解》

Linux 内核

1.《深入理解Linux内核》(第3版)

2.《Linux内核源代码情景分析》毛德操、胡希明著

研发方向

1. UNIX 网络编程(UNP)

2. TCP/IP详解

3. Linux内核编程

4. Linux设备驱动程序开发(LDD)

5. 杨宗德的《Linux 高级编程》

硬件基础知识

1. ARM架构与编程(杜春雷著)

2.S3C2410 数据表

英语基础

1.《计算机与通信英语》

系统教程

1.“嵌入式系统 - 架构、编程和设计”

2.《嵌入式系统——使用开源代码和StrongARM/Xscale处理器》作者:毛德操、胡希明

3.构建嵌入式Linux系统

4.杨宗德《嵌入式ARM系统原理与案例开发》

理论基础

1.算法简介

2.数据结构(C语言版)

3. 计算机组织与架构-性能分析

4. Randal E. Bryant 和 David O''Hallaron 合著的《深入理解计算机系统》

5.操作系统的本质与设计原则

6. 编制原则

7.数据通信和计算机网络

8.数据压缩原理及应用

推荐一些C语言方面的书籍

1. C 编程语言

2. C 语言中的指针

3. C 陷阱和隐患

4. Expert C 语言 《Expert C 编程》

5. 编写干净的代码 -----Microsoft 的无 Bug C 程序开发技术

《编程精要——微软编写高质量、无错误 C 程序的秘诀》

6. 使用 C 和 C++ 编写嵌入式系统程序

7.《C语言嵌入式系统编程实践》

8.《高质量C++/C编程指南》作者:林睿

尽可能多地编写代码,学好 C,不要只关注 C 本身。
算法、架构等都很重要。

这里很多书都只是推荐,别太当真,关键还是基础,那才是最重要的!


相关文章

流亡之路,历史长河中的坚韧与希望

在漫长的历史长河中,流亡成为一种特殊的人生体验。它承载着个体的悲欢离合,也映照着时代的风云变幻。在这条充满艰辛与挑战的流亡之路上,...

99链接平台 2025-01-01 阅读0 评论0

详细介绍C语言中的lf关键字及其应用

C语言作为一门历史悠久、应用广泛的编程语言,其语法和特性深受程序员喜爱。在C语言中,lf(Line Feed)是一个重要的字符常量...

99链接平台 2025-01-01 阅读0 评论0

语言活动排队,构建和谐沟通的桥梁

语言是人类沟通的桥梁,是传递思想、交流情感的重要工具。在现代社会,语言活动在各个领域发挥着至关重要的作用。在日益繁忙的生活节奏中,...

99链接平台 2025-01-01 阅读0 评论0

详细介绍IC语言,探索计算机编程的基石

随着信息技术的飞速发展,计算机编程已成为现代社会不可或缺的一部分。而IC语言,作为计算机编程的基础,承载着培养程序员素养、提高编程...

99链接平台 2025-01-01 阅读0 评论0