基于ARM 32位高速嵌入式微控制器
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

嵌入式技术在20世纪90年代末期随着国内IT行业的迅猛发展而声名鹊起,其实它与通用计算机技术都源于20世纪70年代,与微型机一脉所出,只不过各自走上了不同的道路。

ARM技术诞生于1987年,在经历若干年的沉寂后,通过只进行半导体知识产权授权而不实际生产芯片这种在当时有异于传统的商业模式,不但摆脱发展困境,更是迅速崛起至今不衰,是个张力十足的“ARM哥”。

以时间为坐标,嵌入式技术源起至今已四十余年,在可预期的将来却依然是IT江湖的不老传说。ARM技术仅用二十余载,已在岁月磨砺中撑起自己的一片天空,堪称年轻有为,擎起嵌入式技术的大旗。

为了扭转我们日益焦躁的内心,将摩尔定律用做标尺——嵌入式技术也好,ARM技术也好,以每18个月为一个世代——都已经是第N代,累世而功成。然而焦虑稍释,另一个念头又萦绕心头——在信息技术的瞬息万变中,我们当何去何从?

嵌入式技术日新月异、一日千里的发展速度让我们有些不知所措,颇有无从下手的慨叹。但是,正如《荀子·儒效》所示“千举万变,其道一也”,只要选择嵌入式技术的具体“一点”切入,通过掌握基本的知识点,培养自己不断学习的能力,就能够触类旁通、举一反三,具有快速应变能力,不论潮流如何发展,终能把握时代的脉搏。

在基础篇中用简要的语言勾勒出嵌入式技术涉及各方面的一个大致轮廓,让读者可以选择“一点”更多;在实践篇中,本书着重学习能力和学习方法的养成,力求“授人以鱼”的同时“授人以渔”。此外,本书描述的嵌入式技术主要着眼于基于ARM微控制器——ARM技术不一定千秋万载,却有一统江湖的霸气——在移动互联的时代,强大而丰富的外设功能、具有一定的运算能力、极低的功耗及苛刻条件下恶劣环境适应能力使嵌入式微控制器获得了新的生命力。

今天,嵌入式微控制器活跃在信息家电、移动终端、通信领域、汽车电子、工业控制、商业和金融、办公自动化、交通运输、土木建筑、医疗卫生、国防、航空航天等各个领域。我们享受着嵌入式微控制器给生活带来的便利,却无缘识得其真面目——有位资深的工程师一个玩笑道出了这样的情景:

“每个人不可能都有一套房子,但每个人平均有5个嵌入式微控制器。如果你正在使用吉列的Fusion ProGlide手动剃须刀,那注意了,其中有一颗4位的嵌入式微处理器;如果你正在居所惬意地喝下午茶,很荣幸,微波炉、洗衣机、空调、电冰箱等都在嵌入式微控制器的调度下工作;如果你正在使用手机,那其中有两颗以上的嵌入式微处理器,其中一颗在手机电池里;如果你正在汽车里,那你被数十颗嵌入式微控制器所包围——车窗、仪表显示、车载导航、动力控制、座位调节甚至车灯都有嵌入式微控制器,更有趣的是,你的汽车的行为也要为嵌入式微控制器所控制——因为,交通红绿灯中也有嵌入式微控制器……”

在初学者还在纠结学习何种技术时,基于ARM的嵌入式微控制器提供了一个“性价比”最高的选择——既有符合潮流的ARM,又有MCU的简单易学,还有由于广泛应用而衍生的丰富学习资源。

“由浅入深、由简及难”是一个认知过程,基于ARM的嵌入式微控制器结构简单、系统集成度高,既“浅”又“简”,同时“麻雀虽小,五脏俱全”——将CPU、RAM、ROM、定时/计数器和多种I/O接口集成在一起,形成芯片级计算机。通过基于ARM的嵌入式微控制器对于计算机系统的一些基本概念能够很好地切入、学习、掌握。随着学习的深入,终能“化繁为简,游刃有余”。

本书付诸印刷前,专门送阅三个特定类型的人,这些人并不代表全部,然而其意见是真实、中肯的,原文摘录供读者参考:

第一个人是我的学弟,在职场打拼多年,新晋团队主管,是资深技术人员——“这本书真没什么好看的,讲的东西是我们招聘要求掌握的最基本的东西,就是几幅图还不错。如果你有时间,我更愿意让你帮忙写一本新员工培训的教材。”

第二个人是网上认识的一名技术发烧友,有一定的基础——“挺好的,自己充实了一些新东西——虽然不多,如果多些故事我会更喜欢。”

第三个人是一名刚入学的文科学生,我们在时政话题上聊得不错——“大部分内容都能看懂,但都不深入,有些地方点到了又不展开。基础篇当科普读了收获不少,但实践篇有些内容知道怎么做但要将几章的内容串起来才知道为什么。”

这三名“预”读者的感受体现了本书在编写时的考量:

(1)立足于基础,行文尽量简练。深入浅出是一种境界,需要修为,不敢妄自僭越,因此,本书力图浅入,以平实的语言尽可能简单地表达问题,同时对设计思想与方法进行详细阐述。

(2)基础篇着重嵌入式技术整体情况的把握,扩宽知识面,凝练知识点,梳理体系脉络,让读者可以将其作为学习实践的“指南针”,在遇到问题时,可以此为线索,知道如何去学习或者查阅何种资料,而非取代这些专业书籍——事实上,嵌入式技术涉及的内容是如此博大,基础篇中的任一章节涉及的内容都可以找到对应的工具书——不是一本,而是很多本。

(3)实践篇针对具体实例结合初学者可能遇到的问题进行了精心编排和讲解,其中有许多地方融入了作者的工程经验和亲身体会。在实例中,有意识地引导读者进行思考,注重思维模式的养成,同时又在一些关键问题上给读者留有自己思考的空间。

需要说明的是,实践篇中以一个具体的嵌入式微控制器评估板为基础进行了展开——嵌入式技术是工程性很强的实践活动,完全抽象的通用知识是“柏拉图”式的,是不具实践意义的。正如文中所述,通过对主流产品里选取的具体型号进行分析、实践,就能举一反三、触类旁通,从而根据实际需要很快地迁移到工程实践中新的目标平台。

本书是一本嵌入式微控制器实验与实践的入门书籍。如果读者刚拿起这本书,在决定购买之前请仔细阅读本前言,并对全书进行概览,以决适合——并非所有人都能接受本书的风格,视读者的个性和禀赋而异。

本书成书过程最早可以追溯到多年前的嵌入式微控制器实验讲义,这份讲义同时也作为北京航空航天大学电子信息工程学院本科生课外科技实践活动的快速入门教材,在多年的电子竞赛中为学生优异成绩的取得奠定了基础,作者因此两度获得北京市教委颁发的北京市电子竞赛优秀指导教师。2010年作为富士通半导体(上海)有限公司大学计划的一部分对讲义进行了重新修订和版本更新。2011年通过选修课的形式对讲义内容进行了教学实践,并收集反馈信息对讲义内容进行了增删和修改。2012年结合卓越工程师培养计划对内容进行删减和结构调整后集结成书。

本书的另一位作者张有光教授,长期致力于本科教学,在教学方法、创业素质和创新能力培养、创业管理方面进行了大量卓有成效的探索与实践,并将相关成果应用到本书中。

本书的第三位作者刘晚春完成了本书的代码编写、调试和例程整理工作。

本书出版得到了家人、友人及企业界与平面媒体诸多专业人士的帮助,感激之情发诸笔端,铭记于心。

同时,衷心希望能够欣赏该书、鄙视该书、唾弃该书的读者可以通过邮件联系作者,以使作者可以在期待与反馈中学习进步。

有关本书内容方面的问题可以联系tdw@buaa.edu.cn

有关教学方法方面的问题可以联系zhangyouguang@vip.sina.com

有关本书代码、例程方面的问题可以联系lwc@buaa.edu.cn

同时,本书中代码例程可以登录电子工业出版社华信教育资源网站http://www.hxedu.com.cn免费注册下载。

谭大为

2012年8月

对于初学者来说,书应当是越薄越好——太厚,容易望而却步。

中国人有武侠情结,武功秘籍只有寥寥几页,内功心法全靠个人领悟。

古人用“学富五车”形容读书多而丰富,主张博闻强识、格物致知。

今天的人们处在知识爆炸的时代,小小U盘可以藏书百万卷,手中(电脑中)更常备工具、字典以补大脑存储不足。

本书努力在薄、厚之间寻求取舍与平衡

——既有凝练的工程实践精华,又有知识点、典型案例供查阅参详,同时增加些许人文气息。

人无完人,书无全书。疏漏之处,望大方之家指正批评,不吝贻笑。

《礼记·大学》中八目为:

格物、致知、诚意、正心、修身、齐家、治国、平天下

愿此书为君纵横IT天下贡献微薄之力。