Book description
The First Practical, Hands-On Guide to Embedded System Programming for Android
Today, embedded systems programming is a more valuable discipline than ever, driven by fast-growing, new fields such as wearable technology and the Internet of Things. In this concise guide, Roger Ye teaches all the skills you’ll need to write the efficient embedded code necessary to make tomorrow’s Android devices work.
The first title in Addison-Wesley’s new Android™ Deep Dive series for intermediate and expert Android developers, Embedded Programming with Android™ draws on Roger Ye’s extensive experience with advanced projects in telecommunications and mobile devices. Step by step, he guides you through building a system with all the key components Android hardware developers must deliver to manufacturing. By the time you’re done, you’ll have the key programming, compiler, and debugging skills you’ll need for real-world projects.
First, Ye introduces the essentials of bare-metal programming: creating assembly language code that runs directly on hardware. Then, building on this knowledge, he shows how to use C to create hardware interfaces for booting a Linux kernel with the popular U-Boot bootloader. Finally, he walks you through using filesystem images to boot Android and learning to build customized ROMs to support any new Android device. Throughout, Ye provides extensive downloadable code you can run, explore, and adapt.
You will
Build a complete virtualized environment for embedded development
Understand the workflow of a modern embedded systems project
Develop assembly programs, create binary images, and load and run them in the Android emulator
Learn what it takes to bring up a bootloader and operating system
Move from assembler to C, and explore Android’s goldfish hardware interfaces
Program serial ports, interrupt controllers, real time clocks, and NAND flash controllers
Integrate C runtime libraries
Support exception handling and timing
Use U-Boot to boot the kernel via NOR or NAND flash processes
Gain in-depth knowledge for porting U-Boot to new environments
Integrate U-Boot and a Linux kernel into an AOSP and CyanogenMod source tree
Create your own Android ROM on a virtual Android device
Table of contents
- About This eBook
- Title Page
- Copyright Page
- About the Android Deep Dive Series
- Dedication Page
- Contents in Brief
- Contents
- Preface
- Acknowledgments
- About the Author
-
I: Bare Metal Programming
- 1. Introduction to Embedded System Programming
- 2. Inside Android Emulator
-
3. Setting Up the Development Environment
- The Host and Client Environments
- Development Environment Setup
- Downloading and Installing Android SDK
- Downloading and Installing the GNU Toolchain for ARM
- Integrated Development Environment
- Your First ARM Program
- Building the Binary
- Running in the Android Emulator
- makefile for the Example Projects
- Summary
- 4. Linker Script and Memory Map
- 5. Using the C Language
- 6. Using the C Library
- 7. Exception Handling and Timer
- 8. NAND Flash Support in Goldfish
- II: U-Boot
- III: Android System Integration
- IV: Appendixes
- Index
- Code Snippets
Product information
- Title: Embedded Programming with Android: Bringing Up an Android System from Scratch
- Author(s):
- Release date: August 2015
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780134030920
You might also like
book
Practical System Programming with C: Pragmatic Example Applications in Linux and Unix-Based Operating Systems
This book teaches system programming with the latest versions of C through a set of practical …
book
Bluetooth Low Energy: The Developer's Handbook
The First Complete Guide to Bluetooth Low Energy: How It Works, What It Can Do, and …
book
Automotive System Safety
Contains practical insights into automotive system safety with a focus on corporate safety organization and safety …
book
How Linux Works, 3rd Edition
Unlike some operating systems, Linux doesn’t try to hide the important bits from you—it gives you …