Arduino Internals [electronic resource] /
Wheat, Dale.author.
Arduino Internals guides you to the heart of the Arduino board. Author Dale Wheat shares his intimate knowledge of the Arduino board—its secrets, its strengths and possible alternatives to its constituent parts are laid open to scrutiny in this book. You'll learn to build new, improved Arduino boards and peripherals, while conforming to the Arduino reference design. Arduino Internals begins by reviewing the current Arduino hardware and software landscape. In particular, it offers a clear analysis of how the ATmega8 board works and when and where to use its derivatives. The chapter on the "hardware heart" is vital for the rest of the book and should be studied in some detail. Furthermore, Arduino Internals offers important information about the CPU running the Arduino board, the memory contained within it and the peripherals mounted on it. To be able to write software that runs optimally on what is a fairly small embedded board, one must understand how the different parts interact. Later in the book, you'll learn how to replace certain parts with more powerful alternatives and how to design Arduino peripherals and shields. Since Arduino Internals addresses both sides of the Arduino hardware-software boundary, the author analyzes the compiler toolchain and again provides suggestions on how to replace it with something more suitable for your own purposes. You'll also learn about how libraries enable you to change the way Arduino and software interact, and how to write your own library implementing algorithms you've devised yourself. Arduino Internals also suggests alternative programming environments, since many Arduino hackers have a background language other than C or Java. Of course, it is possible to optimize the way in which hardware and software interact—an entire chapter is dedicated to this field. Arduino Internals doesn't just focus on the different parts of Arduino architecture, but also on the ways in which example projects can take advantage of the new and improved Arduino board. Wheat employs example projects to exemplify the hacks and algorithms taught throughout the book. Arduino projects straddling the hardware-software boundary often require collaboration between people of different talents and skills which cannot be taken for granted. For this reason, Arduino Internals contains a whole chapter dedicated to collaboration and open source cooperation to make those tools and skills explicit. One of the crowning achievements of an Arduino hacker is to design a shield or peripheral residing on the Arduino board, which is the focus of the following chapter. A later chapter takes specialization further by examining Arduino protocols and communications, a field immediately relevant to shields and the communication between peripherals and the board. Finally, Arduino Internals integrates different skills and design techniques by presenting several projects that challenge you to put your newly-acquired skills to the test! Please note: the print version of this title is black & white; the eBook is full color.
Title Page; Copyright Page; Contents at a Glance; Table of Contents; About the Author; About the Technical Reviewers; Acknowledgments; Preface; Intended Audience; What This Book Isn't; Chapter Overview; Summary; CHAPTER 1 Hardware; What Is an Arduino?; The Arduino Uno; Processor; Serial Port; Power Supply; Expansion Connectors; Shields; The Arduino Mega 2560; Previous Hardware; Arduino Serial; Arduino USB; Arduino Extreme; Arduino Nuova Generazione (New Generation); Arduino Diecimila; Arduino Duemilanove; Arduino Mega; Who Makes Arduinos?; Officially Licensed Products; Everybody Else
Build Your OwnArduino Printed Circuit Boards; Breadboard Arduinos; Summary; CHAPTER 2 Software; Hosts and Targets; Step by Step; Step 1: Write Some Code; A Trivial Example in C; A Trivial Example in the Arduino Programming Language; Another Trivial Example in the Arduino Programming Language; Step 2: Compile the Code; One Button Does It All; The Tasks of the Compiler; Step 3: Program the Device; The Arduino Bootloader; Step 4: Test and Debug; Step 5. Repeat; Semiautomatic; Blinking in C; Going Further; Summary; CHAPTER 3 Atmel AVR; Origins; AVR Device Families
When in Doubt: Product DatasheetsDevice Packaging; Through-Hole DIPs; Surface-Mount Devices (SMDs); Extra Pins; Pin Descriptions; Power Pins; Digital and Analog Power Supplies; Analog Reference (AREF); RESET; XTAL1 and XTAL2; General-Purpose Input/Output (I/O) Ports; Alternate Pin Functions; AVR Core; Clock Sources; Address Spaces; Program Memory; Data Memory; Registers; Input/Output Registers; EEPROM; Configuration Fuses; Instruction Set; Machine Language Instructions; Internal Peripherals; General Purpose Input/Output (I/O); External Interrupts; Timer/Counters; Timer/Counter 0
Timer/Counter 1Timer/Counter 2; Timer/Counters of the ATmega2560; USART; Two-Wire Serial Interface (TWI), a.k.a. I2C; Analog Inputs; Summary; CHAPTER 4 Supporting Hardware; Schematic Diagrams; Component Types; Reference Designators; Component Values; Component Value Tolerances; Other Component Parameters; The Connections; Getting Power to the Board; The Barrel Connector; Input Power Conditioning; Voltage Regulator; Power Circuit Evolution; Serial Interface; RS-232 Interface; The Processor; Power Consumption; I/O Drive Capability; The -RESET Signal; The Time Base; Decoupling Capacitors
Blinky LightsRoom for Expansion; The Mechanical Form Factor; Universal Serial Bus (USB): Signals Plus Power; Summary; CHAPTER 5 Arduino Software; Open Source Software; Multiplatform Support; The Arduino Heritage; Installing the Software; The Process, or "How to Arduino"; A Tour of the User Interface; The File Menu; The Edit Menu and the Edit Context Menu; The Sketch Menu; The Tools Menu; The Help Menu; Summary; CHAPTER 6 Optimizations; How Will You Know It Worked?; Shrink Blink; How Blink Works; Measuring Space-Saving Optimizations; Code Analysis; Life Without pinMode(); Abbr. & Shrtcts
Binary Notation
Includes index.
Includes index.
Arduino Internals guides you to the heart of the Arduino board. Author Dale Wheat shares his intimate knowledge of the Arduino board—its secrets, its strengths and possible alternatives to its constituent parts are laid open to scrutiny in this book. You'll learn to build new, improved Arduino boards and peripherals, while conforming to the Arduino reference design. Arduino Internals begins by reviewing the current Arduino hardware and software landscape. In particular, it offers a clear analysis of how the ATmega8 board works and when and where to use its derivatives. The chapter on the "hardware heart" is vital for the rest of the book and should be studied in some detail. Furthermore, Arduino Internals offers important information about the CPU running the Arduino board, the memory contained within it and the peripherals mounted on it. To be able to write software that runs optimally on what is a fairly small embedded board, one must understand how the different parts interact. Later in the book, you'll learn how to replace certain parts with more powerful alternatives and how to design Arduino peripherals and shields. Since Arduino Internals addresses both sides of the Arduino hardware-software boundary, the author analyzes the compiler toolchain and again provides suggestions on how to replace it with something more suitable for your own purposes. You'll also learn about how libraries enable you to change the way Arduino and software interact, and how to write your own library implementing algorithms you've devised yourself. Arduino Internals also suggests alternative programming environments, since many Arduino hackers have a background language other than C or Java. Of course, it is possible to optimize the way in which hardware and software interact—an entire chapter is dedicated to this field. Arduino Internals doesn't just focus on the different parts of Arduino architecture, but also on the ways in which example projects can take advantage of the new and improved Arduino board. Wheat employs example projects to exemplify the hacks and algorithms taught throughout the book. Arduino projects straddling the hardware-software boundary often require collaboration between people of different talents and skills which cannot be taken for granted. For this reason, Arduino Internals contains a whole chapter dedicated to collaboration and open source cooperation to make those tools and skills explicit. One of the crowning achievements of an Arduino hacker is to design a shield or peripheral residing on the Arduino board, which is the focus of the following chapter. A later chapter takes specialization further by examining Arduino protocols and communications, a field immediately relevant to shields and the communication between peripherals and the board. Finally, Arduino Internals integrates different skills and design techniques by presenting several projects that challenge you to put your newly-acquired skills to the test! Please note: the print version of this title is black & white; the eBook is full color.
Computer input-output equipment.
Computer hardware.
Hardware and Maker.
Computer Hardware.