#else
#error Code NOT for Platform AAA
#endif
这样在编译的时候就知道,编译的是哪一条路经了。对于支持#pragma message( “I am here”)的编译器也可使用#pragma message预编译指令。
我怎么知道那段代码在那个文件中?
系统编程中经常需要使用在多个文件中搜索字符串,在windows平台下可以使用平台提供的多文件字符串搜索工具。在linux平台下,可以使用grep来搜索字符串。Grep的搜索功能十分强大,支持正则表达式搜索,熟练使用grep对于阅读系统和驱动程序代码是很有帮助的。
系统是从那个文件开始运行的?
对于Windows CE系统,一般从WINCE420\PLATFORM\YourPlatform\KERNEL\HAL目录的某个汇编文件中。对于Linux系统版本不同会存在一定差异,以arm处理器为例,一般会在linux2.4.x\arch\arm\kernel的head-armv.S中。
程序执行到了那里?
可以在程序中插入如下代码来实现
printf( “I am here %s, %d\n”,__FILE__, __LINE__);
代码将打出printf语句所在的文件名和行号。
推荐书目
Jean J.Labrosse MicroC/OS-II The Real-Time Kernel,Second Edition这本书是笔者接触嵌入式实时系统的入门书,在国内能够买到中文版。这本书较为清楚地讲述了实时系统的概念,各个组成部分的工作原理,特别是公开了实时系统内核的源代码,仔细研究定会受益匪浅。有个小的提示,对于初学者,这本书可以先不看第一章,直接从第二章看起。
Abraham Silberschatz, Peter Baer Galvin,Greg Gagne Operating System Concepts笔者在教学过程中发现,无论是计算机还是电子工程专业都有很多学生对于操作系统的基本概念都没有搞清,很少有学生有完整的系统编程经验。Operating System Concepts这本书对操作系统的概念讲述只能用经典来形容。对于嵌入式系统有兴趣深入研究的同学,首先要把基础打好,这本书就成了必读之物了。
Andrew S. Tanenbaum Computer Networks 提起Andrew S. Tanenbaum 学习计算机的同学一定都知道OPERATINGSYSTEMs:Design and
Implementation这本书,笔者对于Tanenbaum这样的教授由衷佩服。网络协议栈是嵌入式系统中的支柱性组成部分。愿意致力于网络深层技术研究的同学,这本书将为你们建立一个坚实的网络基础。
Karim Yaghmour Building Embedded Linux Systems本书详尽的介绍了嵌入式linux系统的组成,基本概念和如何去建立各个部分。全书篇幅较小,可谓短小精悍。即可以作为嵌入式linux系统的入门读物,又是开发过程各个部分的指南。
Advanced RISC Machines Ltd (ARM) ARM7 TDMI Data Sheet Advanced RISC Machines Ltd (ARM) ARM920T Technical Reference Manual学习嵌入式系统不了解当前应用最广泛的嵌入式处理器怎么行? ARM7 TDMI 的 data sheet是学习ARM编程模型,指令集的好东西。在嵌入式系统中,MMU(内存管理单元)是很重要的部分,又是较难理解和掌握的部分。ARM920T Technical Reference Manual 正好可以帮你讲解这方面的内容。
Perter Van Der LinDen Expert C Programming嵌入式系统级编程最常用的语言还是C 。很多同学都自认为自己的C语言学的很好,那好,就看看这本书吧,找找自己和Experts差距。
深圳信盈达嵌入式单片机实训基地给你最实战的项目技术学习指导
详情可联系:电话13926586805 QQ 122330119
深圳/郑州信盈达嵌入式、单片机、ARM、MIPS、FPGA、Android培训!
免费试听,满意后给您量身定制课程(包学会),快速提高您的技能!
教学特色:名师督学+工程师指导;项目案列解析+实际解决方案!
详情质询:安老师 电话13926586805 QQ 122330119
高新行业深圳信盈达提供单片机嵌入式类项目开发和单片机培训、嵌入式培训、Android驱动开发培训,一站式提供商。
3G嵌入式开发是当前发展最快、应用最广、最有发展前景的3G应用领域之一,与此对应,3G嵌入式开发人才也成了3G人才市场的“宠儿”。随着3G的不断升级,3G嵌入式开发系统正日益受到重视。3G嵌入式开发企业抛出月薪上万的优厚待遇,广揽3G嵌入式工程师。深圳信盈达3G嵌入式培训,采用3G嵌入式理论教学与3G嵌入式软件开发项目实训相结合的方式,系统介绍3G技术与嵌入式Linux环境和应用程序开发技术。
嵌入式ARM9+linux技术培训课程介绍
第一阶段:以s3c2440为实战工具,彻底搞懂硬件平台。
第二阶段:嵌入式Linux操作系统学习。
一、嵌入式Linux开发概述
二、U-Boot移植:U-Boot架构、引导过程、文件创建、移植三、Makefile的编写规范及驱动程序编写
四、操作系统Linux内核移植
第三阶段:嵌入式开发流程剖析,项目分析方法。
嵌入式项目实战(具体案例)
嵌入式工程师设计规范:嵌入式Linux编制规范及注意事项基于嵌入式产品开发项目管理、项目开发规范通过系统的学习后,我们来个实际的项目实战:(从所列出的项目中选出一个自己开发完成)。
项目一、Photoview/mp4
项目二、数字存储示波器
项目三、数码照相机
项目四、便携式打印机
项目五、自带项目,指导完成
项目五、自带项目,指导完
详情联系安老师QQ 122330119 电话 13926586805