You are viewing an older revision! See the latest version

Books

ARM Microcontrollers (pt1) - 35 projects for beginners

/media/uploads/simon/101206155721.arm-microcontrollers-bundle-uk.resized.150x0.jpg

Dit boek is ook beschikbaar in het Nederlands (ARM microcontrollers - 35 projecten voor beginners)

Ce livre est disponible aussi en Français (Microcontrôleurs RISC 32 bits à architecture ARM - 35 projets d’initiation en C avec la carte mbed NXP LPC 1768)

Official book summary

The perfect book for hobbyists, students and engineers who want to learn C and how to use an mbed ARM microcontroller in an easy and fun way, without the need for cumbersome software installations.

The projects in this book are meant for beginners in C and ARM microcontrollers. That doesn't mean the projects are simple, but it does mean that they are easy to understand. We use for example USB communications, a subject that is made so easy by the mbed that it is suitable for a beginners book.

Features of this book

  • Learn how to program an mbed ARM microcontroller using cloud technology. No complicated software installation on your PC needed.
  • Learn programming in C by doing fun and interesting projects. No previous experience or knowledge required.
  • Examples of projects in this book: flashing light, timer, light activated switch, digital thermometer, people detector, USB communication, talking microcontroller, debugging, sound switch, and much more - 35 projects in total.
  • Examples of C subjects in this book: variables, commands, functions, program execution, pointers (introduction).

The Definitive Guide to the ARM Cortex-M3

/media/uploads/simon/definitive-guide.jpg

Official book summary

This user's guide does far more than simply outline the ARM Cortex-M3 CPU features; it explains step-by-step how to program and implement the processor in real-world designs. It teaches readers how to utilize the complete and thumb instruction sets in order to obtain the best functionality, efficiency, and reuseability. The author, an ARM engineer who helped develop the core, provides many examples and diagrams that aid understanding. Quick reference appendices make locating specific details a snap!

Thinking in C++

book

Official book summary

Fully revised and beefed up with plenty of new material on today's Standard C++, the new edition of Bruce Eckel's Thinking in C++: Volume I is an excellent tutorial to mastering this rich (and sometimes daunting) programming language, filled with expert advice and written in a patient, knowledgeable style. The effective presentation, along with dozens of helpful code examples, make this book a standout. The text first sets the stage for using C++ with a tour of what object-oriented programming is all about, as well as the software design life cycle. The author then delves into every aspect of C++, from basic keywords and programming principles to more advanced topics, like function and operator overloading, virtual inheritance, exception handling, namespaces, and templates. C++ is a complex language, and the author covers a lot of ground using today's Standard C++, but without getting bogged down in excessive detail.

The emphasis here is on practical programming, so there's basic advice on using header files, preprocessor directives, and namespaces to organize code effectively. Each chapter ends with exercises (usually about two dozen), and the entire text of the book is available on the accompanying CD-ROM. (So is the second volume, which tours Standard C++ classes and other advanced topics.)

Topics covered: Introduction to objects, inheritance, composition, polymorphism, exception handling, analysis and design fundamentals, advantages of C++, transitioning from C, compiling and building programs, writing C++ functions, flow control, C++ operators, data types, casting, debugging tips, pointers to functions, designing reusable C++ classes, conditional compilation and header files, access specifiers, constructors and destructors, function overloading and default arguments, using const and static effectively, inlining, namespaces, references, copy constructors, operator overloading, using new and delete for dynamic objects, virtual functions, abstract classes, introduction to templates, and iterators.

Thinking in Java

book2

Official book summary

Perfect for migrating to Java from a fellow object-oriented language (such as C++), the second edition of Thinking in Java continues the earlier version's thoughtful approach to learning Java inside and out, while also bringing it up to speed with some of the latest in Java 2 features. This massive tutorial covers many of the nooks and crannies of the language, which is of great value in the programming world. The most prominent feature of the book is its diligent and extremely thorough treatment of the Java language, with special attention to object design. (For instance, 10 pages of sample code show all of the available operators.) Some of the best thinking about objects is in this book, including when to use composition over inheritance. The esoteric details of Java in regard to defining classes are thoroughly laid out. (The material on interfaces, inner classes, and designing for reuse will please any expert.) Each section also has sample exercises that let you try out and expand your Java knowledge.

Besides getting the reader to "think in objects," Thinking in Java also covers other APIs in Java 2. Excellent sections include an in-depth tour of Java's collection and stream classes, and enterprise-level APIs like servlets, JSPs, EJBs, and RMI. Weighing in at over 1,000 pages, any reader who is serious about learning Java inside and out will want to take a look at this superior resource on some of the latest and most advanced thinking in object design.

ARM Assembly Language: Fundamentals and Techniques

/media/uploads/4180_1/armasm.jpg

Official book summary

Written by the director of ARM’s worldwide academic program, this volume gives computer science professionals and students an edge, regardless of their preferred coding language. For those with some basic background in digital logic and high-level programming, the book examines code relevant to hardware and peripherals found on today's microcontrollers and looks at situations all programmers will eventually encounter.

The book’s carefully chosen examples teach easily transferrable skills that will help readers optimize routines and significantly streamline coding, especially in the embedded space.

This book is easily adaptable for classroom use. Instructors can access features that include a solutions manual, assembly language basics, problems, and actual code. The book also provides access to a fully functional evaluation version of the RealView Microcontroller Development Kit from Keil.

While it is still an important skill, getting good instruction in assembly language is not easy. The availability of languages such as C and Java foster the belief that engineers and programmers need only address problems at the highest levels of a program's operation. Yet, even modern coding methods, when done well, require an understanding of basic assembly methods such as those gained by learning ARM. Certain features that are the product of today’s hardware, such as coprocessors or saturated math operations, can be accessed only through the hardware’s native instructions. For that matter, any programmer wishing to achieve results as exact as his or her intentions needs to possess a mastery of machine code basics as taught in the pages of this book.

Of the 13 billion microprocessor-based chips shipped in the last year, nearly 3 billion were ARM-based, making operational knowledge of ARM an essential component of any programmer’s tool kit.


All wikipages