《嵌入式设备驱动开发精解》——2.3 嵌入式开发入门第一步

2.3 嵌入式开发入门第一步

当我们谈论嵌入式开发的时候,最常听到的就是嵌入式开发是如何地难学,比如既需要一定的开发语言基础,又需要相关的数、模、电方面的知识,难道嵌入式真的那么难吗?其实难与不难最关键是一个入门的问题,等真正入了门就会发现先前的努力与汗水都是值得的,你会迈入一个全新的世界。入门嵌入式开发确实有一定的难度,因为它不像学习Java,只要有一台PC,然后按照教科书的例子一个个抄下来,通过一段时间的学习就能编写小的程序了,并且在PC上能立刻看到执行的效果,也可以一步一步地跟踪调试编写的程序,直到你的Java程序完美实现了原来的设计。

而嵌入式开发就没有这么简单了,首先在PC上不能立即看到运行的效果,需要建立一个交叉编译环境,用这个环境编译、链接写的程序,然后把链接后的程序烧写到板子上的Flash里,然后给板子加电,让程序在板子上去执行,程序的执行结果并不像PC程序中Java那样,立刻就能直观地看到结果,如果程序执行不正确也不能像PC上那样简单的一步一步地跟踪调试,需要借助第三方的工具才能一步一步地跟踪调试,所以也相应地增加了难度。

另外如下的知识点是需要重点掌握的。

  • 掌握ARM系列的CPU,要求对ARM CPU的体系结构有深入的理解,并且能够做到熟悉一款特定ARM CPU的总线、时钟、外设接口,以及通过Memory map迅速了解它的大概配置。
  • 掌握常用的外设,如LCD、各种存储设备(NAND flash或者Nor Flash)的使用方法。
  • 掌握常用的外设接口,如IIC、SPI、MIPI、EBI等。
  • 熟悉硬件原理图,能够看懂基本的硬件原理。可以说硬件原理图是硬件和软件的接口的表达,要做到通过读硬件原理图能够编写相应的软件。
  • 掌握常用的调试手段,如串口log跟踪,JTAG工具的熟练使用,这些工具可以协助我们跟踪程序内部流程,能够直观看到程序流。
  • 扎实的C语言基础,我们可以看到嵌入式开发充分利用了C语言的灵活,嵌入式开发是C语言灵活展示的舞台,另外,通过读别人的代码可以了解设计者的思想,同时也可以去学习并发扬有价值的设计思想。

当你掌握了一款ARM CPU之后,那么对于其他使用ARM CPU的嵌入式产品来说,你也会非常容易上手,并能很快对整个系统有一个很好的认识。另外驱动程序的研发工作不光是写好一个设备的驱动程序,同时也是要架构一个驱动程序框架,可以让同类的设备方便地加入该框架之下,让框架来管理这些相似设备的驱动,一个好的框架设计对于一个项目来说是至关重要的。

时间: 2024-10-08 18:10:47

《嵌入式设备驱动开发精解》——2.3 嵌入式开发入门第一步的相关文章

《嵌入式设备驱动开发精解》——1.1 本书内容的组织

1.1 本书内容的组织 嵌入式设备驱动开发精解本书从嵌入式开发入门的角度进行阐述,首先假设读者具有一定的C语言基础,一些嵌入式方面的知识.在第1章对什么是驱动开发进行了阐述,读者可以对驱动开发有一个基本的概念上的认识.第2章讲述了什么是嵌入式开发以及学习嵌入式开发需要掌握的基本知识及要求.第3章建立自己的Windows系统下的交叉编译环境,让读者可以在Windows下进行交叉编译.第4章阐述该交叉编译环境的工作原理及使用方法.第5章和第6章主要阐述ARM CPU的工作机制以及从开发者的角度是如何

《嵌入式设备驱动开发精解》——2.1 什么是嵌入式系统

2.1 什么是嵌入式系统 嵌入式设备驱动开发精解在进行嵌入式开发的讨论之前,先从概念这一层面来认识什么是嵌入式系统.从宏观上来说,一个嵌入式系统一般是一个被特意设计来做某一个或某几个特定功能的并且可能需要具备实时计算要求的系统.简单的嵌入式系统比如常见的空调.洗衣机等家用产品,这些产品就是为特定目的而设计的,它们并没有实时计算的需求,只要能把事情做完目的也就达到了.而一些涉及通信.安全.交通的嵌入式设备就必须有实时计算的要求,如手机和网络之间的通信.现代汽车的电子辅助系统都要求具有实时计算的能力

《嵌入式设备驱动开发精解》——2.4 建立一个具体的嵌入式开发的小项目

前言 嵌入式设备驱动开发精解本书的编写主要是针对从事嵌入式软件开发人员.本书的内容主要涵盖ARM CPU以及各种常用外部设备驱动开发的方方面面,包括各种硬件接口.硬件接口协议说明以及各种外设的使用及调试方法,特别是对于开发调试过程中可能遇到的各种问题以及如何解决这些问题进行了讨论,同时包括但不限于软件方面的调试方法与硬件方面的调试方法等. 从事嵌入式驱动开发的工作主要就是与各种外设.外设接口以及OS(操作系统)打交道,这是一个会涉及非常多的知识点的.系统级的软件开发与设计过程. 狭义上的嵌入式驱

《嵌入式设备驱动开发精解》——1.3 计算机配置需求

1.3 计算机配置需求 嵌入式设备驱动开发精解能够运行实例及运行编译开发环境的计算机配置要求如下. 操作系统:Windows XP/Windows 7(版本不限).硬盘空间:大于等于4 GB,主要用于安装开发环境所需软件.内存:大于等于512 MB.

《嵌入式设备驱动开发精解》——第2章 如何开始嵌入式开发

第2章 如何开始嵌入式开发 嵌入式设备驱动开发精解本文仅用于学习和交流目的,不代表异步社区观点.非商业转载请注明作译者.出处,并保留本文的原始链接.

《嵌入式设备驱动开发精解》——2.2 充分利用现有的硬件资源

2.2 充分利用现有的硬件资源 嵌入式设备驱动开发精解拥有一个开发板对于学习嵌入式开发是必不可少的,如何选择一个开发板来进行开发实验,这个是会让很多人头疼的问题.因为大家会在开发板的价格上犹豫是选择ARM7.还是ARM9,甚至是选择Cortex A8.Cortex A9之间纠结半天.另外就是开发板的利用率也是个很大的问题,我想很多人基本上是把实例跑一遍板子也就束之高阁了,利用率确实不高.其实,对于嵌入式开发的学习,买一块ARM7或者ARM9的.接口稍微丰富一点的.经济型的开发板就可以了,不需要考

《嵌入式设备驱动开发精解》——1.2 关于本教程涉及的实例

1.2 关于本教程涉及的实例 嵌入式设备驱动开发精解在后续的章节中会经常提及实例这个词,此处的实例指的是我们进行开发实验的一整套包括软件.硬件的整体开发和调试环境,软件方面的开发环境可以依据后续章节中的关于如何建立自己的开发环境进行搭建,有了软件开发环境,同样需要有一套硬件开发板来支撑后续程序的开发调试与功能的验证,这里选用的是一套手机开发的硬件平台,当然也可以使用一些ARM 开发板作为硬件环境,因为我们建立的开发环境只要稍做修改就可以适配各种编译器.各种CPU,是不依赖于某一类CPU的. 那么

《嵌入式设备驱动开发精解》——导读

前言 嵌入式设备驱动开发精解本书的编写主要是针对从事嵌入式软件开发人员.本书的内容主要涵盖ARM CPU以及各种常用外部设备驱动开发的方方面面,包括各种硬件接口.硬件接口协议说明以及各种外设的使用及调试方法,特别是对于开发调试过程中可能遇到的各种问题以及如何解决这些问题进行了讨论,同时包括但不限于软件方面的调试方法与硬件方面的调试方法等. 从事嵌入式驱动开发的工作主要就是与各种外设.外设接口以及OS(操作系统)打交道,这是一个会涉及非常多的知识点的.系统级的软件开发与设计过程. 狭义上的嵌入式驱

《嵌入式设备驱动开发精解》——第1章 关于本教程 1.1 本书内容的组织

第1章 关于本教程 本书主要是针对从事嵌入式软件开发人员编写的,而嵌入式开发主要有两个方向,一个是从事嵌入式设备上应用程序的开发:另一个是驱动程序的开发,本书的方向更加侧重于驱动程序的开发.当然,本书对于从事应用程序的开发人员也是不错的参考,通过它可以很好地了解一个嵌入式设备是如何协调各种硬件一起工作的,对更好地进行应用层的开发是很有意义的.在一个具体的嵌入式产品中,上层软件主要是指具体的应用类程序,如可以在某一特定的硬件平台上开发一个游戏.开发一台照相机.开发一台录像机.开发一款E-mail收