打印

【搜】哈哈 百度上搜的 嵌入式的学习步奏 给和我一样的新手看看

[复制链接]
2462|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
啥是arm|  楼主 | 2013-3-28 20:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于这个方向,我认为大概分3个阶段:
1、嵌入式linux上层应用,包括QT的GUI开发
2、嵌入式linux系统开发
3、嵌入式linux驱动开发

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

所以你可以尝试以下路线:
(1) C语言是所有编程语言中的强者,单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握。
推荐书籍:《The C Programming Language》 这本经典的教材是老外写的,也有中译版本。
(2) 操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。
(3)Linux操作系统就是用C语言编写的,所以你也应该先学习下Linux方面的编程,只有你会应用了,才能近一步去了解其内核的精髓。
推荐书籍:《UNIX环境高级编程》(第2版)
(4) 了解ARM的架构,原理,以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
(5) 系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。
(6) 驱动开发
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。
linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前你要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。

以上只不过是大概的框架,在实际的开发中还会涉及很多东西,比如:交叉编译、makefile、shell脚本等等,所以说学习嵌入式的周期较长,门槛较高,自学的话更是需要较强的学习能力和专业功底。只要能**下来一定会取得成功!

相关下载

相关帖子

沙发
啥是arm|  楼主 | 2013-3-28 21:26 | 只看该作者
《一》嵌入式学习步骤是这样:
1.Linux开发基础学习
虚拟机搭建、Linux宿主机安装、Linux命令、服务器搭建Samba,NFS、VI编辑器

推荐书籍(鸟哥的私房菜基础篇,服务器架设篇)

2.linux编程

GCC/GDB、Makefile、交叉编译环境搭建+C语言强化+Linux系统编程

推荐书籍(linux C函数实例速查手册,unix环境高级编程)

3.ARM体系结构与编程

ARM处理器编程

推荐书籍(ARM体系结构与编程—杜春雷)

4.linux系统内核

这是一个比较难的阶段了,千万不要放弃,挺过去了你就成功了

因为难,所以有价值,这可以是你终身从事的方向

推荐书籍(深入理解Linux内核,Linux内核源代码情景分析,Linux内核编程)

5.linux驱动程序开发

Linux驱动开发+Linux文件系统 QT开发+Linux应用程序开发

推荐书籍(linux设备驱动开发,嵌入式Linux应用程序开发详解)

刚接触嵌入式,初学者往往不知道要学什么,如何学习,学习的具体步骤是什么?没有目标的去学习,往往学起来很累很烦躁,觉得嵌入式好难,甚至想要放弃!如何你想进入IT行业的话,或者想真正真正的学到一点东西,那就千万不要放弃!嵌入式系统是一个可以终身从事的行业,发展空间很大!多用在消费量电子,智能家居等!

以上的五个阶段希望对你有所启发!

《二》嵌入式目标

1.底层驱动开发

2.应用程序开发

注:这其中的任何一个都可能是你一辈子从事的方向,发展空间很大

《三》嵌入式需要的基础知识

1.C语言/C++

刚开始学习的是linux基础命令,你可能感觉不到C语言有什么用处,但等你学到了时间编程,文件编程进程管理的时候,那就头疼了!

推荐书籍(C语言程序设计——谭浩强,C和指针)指针尤为重要

2.操作系统原理

等你学习到了文件管理,文件系统,进程管理,磁盘管理的时候,你就知道操作系统原理的作用了

推荐视频(操作系统原理——电子科技大学)

3.微机原理与接口技术

在学习ARM体系结构与编程的时候要用到,例如:寄存器组,定时,中断,串行通信等

有了汇编基础,和硬件打交道的这块知识就相对比较容易了

4.数据结构与算法

拓展编程思维,提高自己的编程能力

5.TCP/IP协议

在学到服务器架设的时候,例如smaba,tftp服务器的时候要对此有所了解

推荐书籍(TCP/IP详解)

6.51单片机和avr单片机基础

推荐视频(郭天翔十天学会51单片机,十天学会avr单片机)

也许你看到学习嵌入式要掌握这么多的知识,头都大了!没关系,没这些基础也并不可怕,等需要用到那块知识的时候在来弥补它,这样就相对轻松了!学习过程中遇到了困难,可以联系我,我会尽可能的为你解答!总之学习潜入式是一个比较漫长的过程,千万别放弃!半年时间你熬过去了,未来的道路也就平坦了许多!

预祝初学者们在嵌入式的道路上学有所成!

更多资料请到:dianzishipinziliao.taobao.com

使用特权

评论回复
板凳
lishixinstar| | 2013-6-11 08:12 | 只看该作者
谢谢楼主,我是零起点,看了楼主的热心建议,我心里又敞亮多了,加油

使用特权

评论回复
地板
过河的小卒子| | 2013-7-20 15:03 | 只看该作者

使用特权

评论回复
5
flexman| | 2013-8-2 11:20 | 只看该作者
不错,后面还有个淘宝链接,现在淘宝越来越强大了。

使用特权

评论回复
6
小萌萌| | 2013-8-10 19:13 | 只看该作者
嗯 说的不错

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

46

主题

181

帖子

0

粉丝