0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

学嵌入式开发入门_学嵌入式开发需要看哪些书籍

h1654155282.3538 来源:网络整理 2018-04-04 10:25 次阅读

现在嵌入式开发越来越吃香,很多人都想要学习却不知道要从何下手。本文分析了学习嵌入式软件开发需要具备哪些基本知识和技能,开发学习的基本步骤,并给出了各种参考资料及网站,同时小编还推荐了学习嵌入式开发的书籍。

学嵌入式开发入门

一、软硬件的基本技能

关于ARM+linux,涉及软硬件两块,要求通吃,这种人才比较适合成长为嵌入式系统架构师

1、硬件包括处理器的体系结构及硬件总线接口两部分

1)处理器的体系结构

需要对微机原理、单片机、处理器等有所了解,基本上搞明白一种处理器如ARM、MIPS、PPC、DSP,学习其他的就很快了

2)硬件总线接口

最底层的,驱动开发是最常见的工作了。

这需要对各种硬件总线接口等有所了解,如IIS、IICUART、SPI、CAN、MDIO、USB、PCI、PCMCIA、SDRAM、FLASH及EEPROM等,设备千差万别,但基本的连接都是通过这些接口进行的,搞明白了接口剩下的就是具体芯片的事了。

2、软件主要包括开发语言及操作系统开发

1)开发语言

嵌入式软开以C语言开发为主,要求精通指针、结构指针、指针函数及所有的数据类型转换,对const、static、volatile、packed、aligned等关键字有深入的认识。

2)操作系统开发

如果想搞嵌入式软件开发的话,不学点操作系统方面的知识你会发现没什么市场。现在基本上是个平台都想跑个操作系统,控制类的uC/OS-II,eCos,这些都是小型的操作系统,学起来简单,但在求职中市场小。

手机类的,如Windows Mobile、Sybian、PalmOS及Andriod,搞Sybian、PalmOS的人还不多,Windows Mobile和Andriod还是挺火的,也是未来的领导者。

网络通信类的,如VxWorks、Linux等大型复杂的操作系统,也是企业要求最多的,还有不太知名的OSE,但其在基站设备中占据了50%的市场份额。

当然还有不带MMU的,如uClinux、Nucleus等。

个人感觉尤其是Linux是目前求职市场中最火的,主要是由于其开源的优势,很多单位都在往这方面投入以减少成本。

如果以前对操作系统方面了解较少的话,个人建议可以先学学uC/OS-II,简单易上手,主要是借此学习操作系统的相关知识。

然后主打Linux,要结合开发板来学,这样才上手的快。

二、开发板

广州优龙、华恒等都是比较知名的开发板厂家,配套的资料比较完善,相应的技术支持也不错,可以考虑。

三、开发流程及参考书目

嵌入式开发需要遵循一个基本的流程,首先是开发环境及流程,然后是驱动开发和应用程序开发,最后就是深入内核的海洋,学习设计理念及方法,最高境界就是就是将这些设计思路娴熟的运用在任意一个应用环境中,那时候就是神了~~~

1、嵌入式开发设计流程:

1)ARM嵌入式Linux系统构造与驱动开发范例

2)嵌入式设计及Linux驱动开发指南

3)嵌入式Linux应用程序开发详解

都属于Linux开发设计流程方面的入门书籍,嵌入式开发的基础

2、Linux驱动开发:

1)嵌入式系统接口设计与Linux驱动程序开发 北京航空航天大学出版社 刘淼 强烈推荐; 包括各种硬件总线接口范例,接口开发必备

2)Linux设备驱动程序《Linux Device Drivers third edition》,Linux驱动开发必备经典,粗读查询即可,当然最基本的字符设备驱动和块设备驱动必须熟练掌握

3、 Linux应用程序开发:

UNIX环境高级编程

UNIX网络编程全卷

4、Linux内核开发:

内核完全注释,源代码级的分析,但版本较低

深入理解Linux内核Understanding the Linux Kernel,太深了,东西太多,最后看合适

Linux内核设计与实现Linux Kernel Development,内核整体结构和基本理论知识

5、ARM:

ARM体系结构与编程,杜春蕾

ARM应用系统开发详解

四、相关Linux网站

1、各种Linux论坛

http://www.linuxforum.net/forum/ubbthreads.php

http://www.linuxsir.org/bbs/

http://bbs.chinaunix.net/

http://www.linuxeden.com/forum/

http://www.linuxfans.org/bbs/index.php

2、开源网站

http://sourceforge.net/

http://www.denx.de

http://www.pudn.com/

http://download.chinaunix.net/

3、内核源代码学习下载

http://lxr.linux.no/linux+v2.6.19/

http://www.kernel.org/pub/linux/kernel/

学嵌入式开发需要看哪些书籍_推荐

一、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高级程序设计》 杨宗德著

五、硬件基础

1、《ARM体系结构与编程》杜春雷着

2、S3C2410 Datasheet

六、英语基础

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

七、系统教程

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

2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明着

3、《Building Embedded Linux Systems》

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

八、理论基础

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编程指南》林锐

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式开发
    +关注

    关注

    18

    文章

    1021

    浏览量

    47505
收藏 人收藏

    评论

    相关推荐

    嵌入式开发什么内容 嵌入式开发学习路线介绍

    ,学习周期较为漫长。笔者更建议想要从事嵌入式开发技术的读者可以选择线上的学习平台,学习周期较短,视频教程交互性较强,冲淡了枯燥乏味的自学生涯。当然,具体决定还是要看读者本身,创客学院支持免费试听成长课程,对于嵌入式开发零基础或是
    发表于 03-01 10:13

    嵌入式开发什么内容 嵌入式开发学习路线介绍

    较为漫长。笔者更建议想要从事嵌入式开发技术的读者可以选择线上的学习平台,学习周期较短,视频教程交互性较强,冲淡了枯燥乏味的自学生涯。当然,具体决定还是要看读者本身,创客学院支持免费试听成长课程,对于嵌入式开发零基础或是
    发表于 06-30 10:07

    嵌入式开发什么内容 嵌入式开发学习路线介绍

    较为漫长。笔者更建议想要从事嵌入式开发技术的读者可以选择线上的学习平台,学习周期较短,视频教程交互性较强,冲淡了枯燥乏味的自学生涯。当然,具体决定还是要看读者本身,创客学院支持免费试听成长课程,对于嵌入式开发零基础或是
    发表于 07-27 09:49

    嵌入式开发什么?

    。  2.了解C语言,C语言是嵌入式开发中最重要的编程语言,对着部分内容不仅要会写程序,还要看得懂他人写的程序。  3.学会shell编程,shell几乎可以作为一个入门语言来学习,最基本的是能够看得懂
    发表于 09-06 16:21

    嵌入式开发什么

    、大咖篇。入门嵌入式工程师  此阶段主要是前期的入门过程,主要针对入行没多久的新人。其实成功没有捷径,所以打好基础才是关键。嵌入式开发
    发表于 01-18 06:36

    基于ARM的嵌入式开发

    基于ARM的嵌入式开发:华清远见/孙天泽基于ARM的嵌入式开发内容有:ARM简介,基于ARM的嵌入式产品,ARM架构,基于ARM的嵌入式开发
    发表于 10-04 08:49 83次下载

    嵌入式开发

    嵌入式开发就是指在嵌入式操作系统下进行开发嵌入式Linux是以Linux为基础的嵌入式作业系统。这里提供了
    发表于 12-20 13:21
    <b class='flag-5'>嵌入式开发</b>

    什么是嵌入式开发板_嵌入式用什么开发

    本文首先介绍了嵌入式开发板的功能作用,其次阐述了嵌入式用什么开发板,分别推荐了fs4412开发板、mini2440
    发表于 05-18 11:14 7090次阅读

    嵌入式开发什么嵌入式开发的一些入门教材推荐

    本文档的主要内容详细介绍的是嵌入式开发什么嵌入式开发的一些入门教材推荐资料免费下载教材包括了:ARM嵌入式项目
    发表于 01-10 14:46 27次下载
    <b class='flag-5'>嵌入式开发</b>要<b class='flag-5'>学</b>什么<b class='flag-5'>嵌入式开发</b>的一些<b class='flag-5'>入门</b>教材推荐

    嵌入式开发的产品有哪些_嵌入式开发的流程

    本文主要阐述了嵌入式开发的产品,其次介绍了嵌入式开发的流程。
    发表于 08-31 15:38 1.1w次阅读

    嵌入式开发(一):嵌入式开发新手入门

    本篇文章整理下嵌入式开发中一些入门的基础技能,都是根据以往的工程经验整理,适用于之前没做过嵌入式开发的新手。嵌入式开发流程一般如下,一般是在PC机的Windows系统下安装Ubuntu
    发表于 10-14 10:58 79次下载
    <b class='flag-5'>嵌入式开发</b>(一):<b class='flag-5'>嵌入式开发</b>新手<b class='flag-5'>入门</b>

    嵌入式开发资料免费分享

    嵌入式开发资料免费分享嵌入式工程师经验分享:如何学习嵌入式开发截取文档部分学习嵌入式工程师经验分享的资料分享给大家,文档上从、嵌入式系统的概
    发表于 10-21 11:07 47次下载
    <b class='flag-5'>嵌入式开发</b>资料免费分享

    零基础学习嵌入式开发难吗?嵌入式开发需要学习什么

    对于零基础刚开始学习嵌入式的同学很多都会有这样的一个想法,嵌入式开发需要学习什么?如果是电子或计算机专业的人,相对来说,会比较容易入门;而非电子或计算机专业的人,应该先从基本的电路和C
    发表于 11-02 20:21 13次下载
    零基础学习<b class='flag-5'>嵌入式开发</b>难吗?<b class='flag-5'>嵌入式开发</b><b class='flag-5'>需要</b>学习什么

    嵌入式开发培训什么?嵌入式开发板知识讲解

    ,arm11,powerpc,mips,mipsel等,或加上操作系统也属于嵌入式开发嵌入式开发是一项系统工程,要求 嵌入式系统 厂商不仅要提供
    发表于 11-02 20:21 16次下载
    <b class='flag-5'>嵌入式开发</b>培训<b class='flag-5'>学</b>什么?<b class='flag-5'>嵌入式开发</b>板知识讲解

    嵌入式学习培训能学会吗?嵌入式开发培训都要什么?

    嵌入式学习培训能学会吗?嵌入式开发培训都要什么?掌握Linux常用操作命令,与系统管理;理解嵌入式系统进程管理,文件管理,Linux内核;熟悉ARM在不同硬件平台下的操作系统移植和设
    发表于 11-03 10:06 15次下载
    <b class='flag-5'>嵌入式</b>学习培训能学会吗?<b class='flag-5'>嵌入式开发</b>培训都要<b class='flag-5'>学</b>什么?