嵌入式系统设计师考试笔记之嵌入式系统基础知识
欧浩源(ohy3686@qq.com) 20080818
一、引言
自《嵌入式系统设计师考试复习笔记之存储管理篇》在嵌入式在线的博客出现后,意外的得到很多朋友的关注和评论,收到不少朋友的邮件,问一些有关考试的问题,希望得到我的复习笔记的其他部分。我非常感谢他们,他们的热切关注,使我有了继续往下写的无限动力,使我萌生了将我以前的复习笔记、考试经验结合大纲教程并重新按《教程》的章节顺序整理一份适合考生复习的笔记手册,笔记后面再分析历年的真题,按章节考点找出相关的考题进行分析,希望能和有兴趣的人们一起讨论讨论。
嵌入式系统设计师的一天考试分为上午和下午部分,两部分的考试方式、试题难度、考点分布和复习方法都是不同的。这次我们讨论的是嵌入式系统基础知识,我本人觉得,这部分出下午大题的可能性不大,主要是分布在上午的75道选择题之中。
从历年的真题和考试大纲来看,上午的选择题主要考查一些基本概念,重要原理的理解,一些关键技术和一些重要的原理引申出来的简单计算。根据这些考试特点,复习的时候可以采用适当的策略,当然每个人的方法都是...

>> 阅读全文

系统设计中低功耗的探讨
OHY 20080805
1 引言
节能是二十一世纪生活中最大的一个话题。电源储备的概念并不仅仅用于嵌入式便携设备, 几乎对于所有产品都是一个重要部分。说到低功耗,大部分人都会想到MSP430单片机,想到如何使微处理器进入休眠模式。毫无疑问,在嵌入式产品中,很难有和MSP430相匹敌的产品。在进行低功耗处理的时候,人们第一个想到的肯定是如何使微处理器进入功耗最低的工作模式。这种做法是完全正确的,但是在整个嵌入式系统中,处理微处理器还有其他的部分,特别是在一些数据传输和工控领域中。
现在我在一个做的一个跟节能有关的项目使我改变了以前对低功耗的一些认识,纠正了一些原则性的错误。在一个系统中要做到低功耗,首先考虑的应该是让不工作的部件全部休眠或者停止,不单单是微处理器。更重要的应该想办法让那些功耗大,而且使用的次数不是很多的部件停止工作。最后才考虑单片机系统本身的功耗问题。
2 实际问题
有一个使用使太阳能供电的系统,其能耗对系统来说至关重要。在这个系统中有一个进行远程通信使用的调制解调装置,待机功耗就要去到500mw。如果一天24小时都让...

>> 阅读全文

嵌入式系统设计师考试复习笔记之存储管理篇
欧浩源(ohy3686@qq.com)20080721
引言
2007年下半年通过了嵌入式系统设计师的考试,一大堆的复习资料都不知道扔那里好,卖掉又有点可惜,送人又没人要。与其让当时的复习笔记沉沦书架底部,还不如整理一下让大家评论评论。2008年11月的考试也快到了,如果能帮到有需要的人,那我真是乐坏了。看看06和07年的题目,在存储管理方面的题目蛮多的,应该是一个重要考点。无论是概念、理论、分析和计算都相当容易出题。在我当时的复习笔记中这方面算最多了。这里就先拿这个点说说吧,其他的以后有时间再写了。
1、存储器系统的层次架构
计算机系统的存储器被组织城一个金字塔的层次结构。
自上而下为:CPU内部寄存器、芯片内部高速缓存(cache)、芯片外部高速缓存(SRAM、SDRAM、DRAM)、主存储器(FLASH、EEPROM)、外部存储器(磁盘、光盘、CF卡、SD卡)和远程二级存储器(分布式文件系统、WEB服务器),6个层次的结构。
上述设备从上而下,依次速度更慢、容量更大、访问频率更小,造价更便宜。
2、高速缓存(cache)
工作原理(参照教程12...

>> 阅读全文

Linux驱动程序入门—Hello WorldOHY 20080716
1、引言 记得在学习VC++和C语言的时候,一开始都会以一个HELLO WORLD的例子作为演示,将学者逐渐引入殿堂,这个几乎成了计算机编程语言学习必经的一个入门之路。 当然,在学习linux编程的时候也是这样,下面的例子应该是再熟悉不过了: 首先用VI编写一个C程序:vi hello.c #include"stdio.h"int main() { printf("hello world!!!\n"); return 0; } 接着用GCC进行编译:gcc -o hello hello.c 最后运行该程序:./hello 在终端上你会看到:hello world!!!上面的是在操作系统基础上进行的用户应用程序的开发。然而对于linux驱动程序的开发是绝然不同的,因为驱动程序的开发是运行在内核空间的,而应用程序是运行在用户空间的。虽然hello world是一个简单得不能再简单的程序,但是对于嵌入式linux驱动程序的初学者来说,通过这个过程的操作可以对linux驱动程序开发的过程和其中的一些概念有一个深刻的认识。所以,我在这里也就以前学习linux的基础上整理了一下,写了这篇博客。一方面是自己对这方面知识的回顾和巩固,另一方面更是希望这里的内容能给大家提供那么一点点有用的信息,小弟心里就很高...

>> 阅读全文


嵌入式系统设计师考试经验分享与小结
OHY 200806
注:以下纯属个人意见,错误在所难免,仅作参考和探讨,标准答案情参考官方书籍。
注:补充更新了2007年嵌入式系统设计师上午真题的全部标准答案
引言
2007年11月3日参加了嵌入式系统设计师的考试,意外的考进了全国50名。最近受导师所托,寻找这份试题和答案。而然在网上只能找到真题却没有发现答案。虽然《2007下半年试题分析与解答(全国计算机技术与软件专业技术资格(水平)考试指定用书)》这本书已经出版,里面有这部分题目的分析和解答,但是我不打算为了这次而花40多块钱买那本书。无奈之下,只有自己硬着头皮做了一遍。尽管考试得了不错的成绩,可是再一次在可以查阅资料的情况下做这份题目,却花就几乎一个下午。由此可见,知识这个东西,如果丢下一定的时间,就会慢慢被遗忘了。籍着这次机会,我将自己做题的分析过程和对考点的体会做了一个小小的总结。一方面提供一份不是标准的网上参考答案,可以和标准答案对比一下,更希望的是和读者进行交流,指出提供答案的错误,提高自己的水平。另外一方面或许能给正在准备下一次嵌入式系统设计师...

>> 阅读全文

我原来在03年就开始接触单片机了,光阴飞逝,不知不觉已经过了五年了。回头看看自己走过了路,有感慨、有遗憾、有憧憬、有幻想。最开始接触的是89C51单片机,但是在我心中觉得51就是单片机,单片机就是51,根本不知道还有其他公司的存在。而且那时候老师只会教我们汇编,根本不知道用C语言也可以进行开发的。很幸运的是,但是被老师看中,做了几个实验,有基于18B20的温度采集系统,有基于164的移位寄存器的灯光控制系统,有步进电机和直流电机的控制系统。现在才发现这个是我最好的一个学习基础和动手实践的机会,在上课的一个学期中,虽然老师讲得很详细,但是大部分概念都是到了实际动手做东西的时候才弄明白的,而且在不懂之后在搞清楚是特别印象深刻的,直到现在我对那些概念和接口都非常清晰。也许有了那个机遇,后面很多与单片机相关的小实验、小项目、各种电子竞赛、机器人设计都有我参加的一个名分。我觉得在实际锻炼中学习和前进是学习单片机系统的一种最好的途径。随着视野的开阔和知识的积累,我发现原来单片机不单单是51,这个市场其实是白花盛放的,原来能进行开发的不仅仅是汇编语言,使用C语言开发效率更快。其实我很庆幸我学习和使用了两年多的汇编语言,...

>> 阅读全文