没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
The Definitive Guide to the
ARM Cortex-M0
Joseph Yiu
AMSTERDAM • BOSTON • HEIDELBERG • LONDON • NEW YORK • OXFORD
PARIS • SAN DIEGO • SAN FRANCISCO • SINGAPORE • SYDNEY • TOKYO
Newnes is an imprint of Elsevier
Newnes is an imprint of Elsevier
The Boulevard, Langford Lane, Kidlington, Oxford, OX5 1GB, UK
30 Corporate Drive, Suite 400, Burlington, MA 01803, USA
First publishe d 2011
Copyright Ó 2011 Man Cheung Joseph Yiu. Published by Elsevier Inc. All rights reserved.
No part of this publication may be reproduced or transmitted in any form or by any means, ele ctronic or
mechanical, including photocopying, recording, or any information storage and retrieval system,
without permission in writing from the publisher. Details on how to seek permission, further
information about the Publisher’s permissions policies and our arrangement with organizations such as
the Copyright Clearance Center and the Copyright Licensing Agency, can be found at our website:
www.elsevier.com/permissions
This book and the individual contributions contained in it are protected under copyright by the
Publisher (other than as may be noted herein).
Notices
Knowledge and best practice in this field are constantly changing. As new research and experience
broaden our understanding, changes in research methods, professional practices, or medical treatment
may become necessary.
Practitioners and researchers must always rely on their own experience and knowledge in evaluating
and using any information, methods, compounds, or experiments described herein. In using such
information or methods they should be mindful of their own safety and the safety of others, including
parties for whom they have a professional responsibility.
To the fullest extent of the law, neither the Publisher nor the authors, contributors, or editors, assume
any liability for any injury and/or damage to persons or property as a matter of products liability,
negligence or otherwise, or from any use or operation of any methods, products , instructions, or ideas
contained in the material herein.
British Library Cataloguing in Publication Data
A catalogue record for this book is available from the British Library
Library of Congress Control Number: 2010940590
ISBN: 978-0-12-385477-3
For information on all Newnes publications
visit our website at www.elsevierdirect.com
Printed and bound in the United States
1112131410987654321
Foreword
It is an exciting time to be a microcontroller user. A growing range of ARM Cortex-M devices
are available from many vendors, spanning a broad range of applications. Users who are
familiar with 8-bit and 16-bit microcontrollers and are moving to ARM Cortex-Mebased
devices are surprised at just how easy they are to use and, with the introduction of ARM
Cortex-M0 devices, how low-cost and efficient 32-bit microcontrollers have become.
So I was delighted that Joseph Yiu chose to write a guide for the users of these ARM
Cortex-M0 devices. As a technical authority on the ARM Cortex-M family and a formative
8-bit user, Joseph is uniquely placed to guide users new to ARM Cortex microcontrollers on
their first transition steps, and to impart detailed knowledge about the Cortex-M0 to the
advanced user.
Dr Dominic Pajak
ARM Cortex-M0 Product Manager
xiii
Preface
I started learning about microcontrollers when I was studying at university. At that time, some
of the single board computers I was using had an 8-bit microcontroller, and my programs were
stored in external Eraseable Programmable Read Only Memory (EPROM) chips. The EPROM
chips were in relatively large dual in line (DIP) packages and could be erased by shining
ultraviolet light through the glass window. Since then, microcontroller technology has changed
a lot: external EPROMs have been replaced by on-chip flash memories, DIP packages have
been replaced by surface mount packages, and most microcontrollers have become in-system
reprogrammable. More and more peripherals have been added to microcontrollers, and the
complexity of the software has increased dramatically.
Since 2004, the microcontroller market has made some dramatic changes. Previously, the
microcontrollers on the market were mostly 8-bit and 16-bit types, and 32-bit microcontroller
applications were limited to high-end products, mainly because of the cost. Although most of
the 8-bit and 16-bit microcontrollers could be programmed in C, trying to squeeze all the
required functionalities into a small microcontroller was becoming more and more difficult.
You might spend one day writing a program in C, and then find that you needed to spend
another two days rewriting part of the program in assembly because the processing speed of the
microcontroller was too slow for all the required processing tasks.
Even if you are developing simple applications and do not require high processing power in
the microcontrollers, occasionally you might need to switch to a different microcontroller
architecture because of project requirements, and this can take a tremendous effort. Not only
will you need to spend the money to buy new tools, but it can take weeks to learn to use the
tools and months to become familiar with a new architecture.
In October 2004, the price of an ARM7 microcontroller dropped to below 3 US dollars. This
was very good news for many developers who needed to develop complex embedded software.
Since then, with the availability of the Cortex-M3, the price of ARM microcontrollers has
dropped much further and you can get an ARM microcontroller for less than 1 US dollar. As
a result, the use of ARM microcontrollers is gaining acceptance. In addition to providing
excellent performance, the modern ARM microcontrollers require very little power. The use of
ARM microcontrollers is no longer limited to high-end products.
xv
Like many good ideas, the concept for the Cortex-M0 started life as a conversation between
engineers in a bar. A small and growing number of ARM partners were looking for a 32-bit
processor that was small, really small. The concept quickly became a full-blown engineering
project (codenamed “Swift”). In 2009, the Cortex-M0 design was completed, and it quickly
became one of the most successful ARM processor products.
Through the examples in this book, you will find that the Cortex-M0 microcontrollers are easy
to use. In some aspects, they are even easier to use than some 8-bit microcontrollers because of
the simplicity of the linear memory architecture, an uncomplicated and yet flexible exception
model, comprehensive debug features, and the software infrastructures provided by ARM,
microcontroller vendors, and software solution providers.
Because the Cortex-M processors are extremely C friendly, there is no need to optimize the
applications with assembly. There is no need to learn lots of special C directives just to get the
interrupt handlers working. For some embedded developers, the switch to ARM micro-
controllers also means it is much easier to switch between different microcontroller products
without the need to buy new tools and learn a new architecture. On the Internet you can find
that many people are already using Cortex-M0 microcontrollers on a number of interesting
projects.
After working on a number of ARM processor projects, I gained a lot of experience in the use
of the Cortex-M processors (and possibly some gray hairs as well). With encouragement from
some friends and help from lots of people, I decided to put those experiences into a book to
share with numerous embedded developers who are interested in using the ARM Cortex-M
processors. I learned a lot while writing my first book, which is about the Cortex-M3 processor.
Many thanks to those people who gave me useful feedback when the first book was published,
both inside and outside ARM. I know it wasn’t perfect, but at least it is encouraging to find that
many readers found my Cortex-M3 book useful. I hope this book, The Definitive Guide to the
ARM Cortex-M0, will be even better.
This book targets a wide range of audiences: from students, hobbyists, and electronic enthu-
siasts, to professional embedded software developers, researchers, and even semiconductor
product designers. As a result, it covers a wide range of information, including many advanced
technical details that most embedded developers might never need. At the same time, it
contains many examples, making it easy for novice embedded software developers to use.
I hope that you find this book helpful and that you enjoy using the Cortex-M0 in your next
embedded project.
xvi Preface
剩余517页未读,继续阅读
资源评论
- stean2018-02-02配合中文版看更好理解,也有益于以后看其他的英文专业资料,感谢分享
- EmbededSwordman2015-09-11It's great, clear and searchable
andylfg
- 粉丝: 2
- 资源: 13
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- pta题库答案c语言之排序4统计工龄.zip
- pta题库答案c语言之树结构7堆中的路径.zip
- pta题库答案c语言之树结构3TreeTraversalsAgain.zip
- pta题库答案c语言之树结构2ListLeaves.zip
- pta题库答案c语言之树结构1树的同构.zip
- 基于C++实现民航飞行与地图简易管理系统可执行程序+说明+详细注释.zip
- pta题库答案c语言之复杂度1最大子列和问题.zip
- 三维装箱问题(Three-Dimensional Bin Packing Problem,3D-BPP)是一个经典的组合优化问题
- 以下是一些关于Linux线程同步的基本概念和方法.txt
- 以下是一个简化的示例,它使用pygame库来模拟烟花动画的框架.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功