Arduino_Internals.pdf

(27404 KB) Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
845028852.004.png
For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.
845028852.005.png 845028852.006.png
Contents at a Glance
About the Author ...................................................................................................... xv
About the Technical Reviewers ............................................................................... xvi
Acknowledgments .................................................................................................. xvii
Preface .................................................................................................................. xviii
Chapter 1: Hardware ...............................................................................................1
Chapter 2: Software...............................................................................................25
Chapter 3: Atmel AVR ............................................................................................39
Chapter 4: Supporting Hardware ...........................................................................71
Chapter 5: Arduino Software .................................................................................89
Chapter 6: Optimizations .......................................................................................99
Chapter 7: Hardware Plus Software ....................................................................133
Chapter 8: Example Projects ...............................................................................165
Chapter 9: Project Management ..........................................................................213
Chapter 10: Hardware Design..............................................................................231
Chapter 11: Software Design ...............................................................................255
Chapter 12: Networking.......................................................................................281
Chapter 13: More Example Projects ....................................................................305
Index ....................................................................................................................... 359
iv
845028852.007.png
C H A P T E R 1
Hardware
The hardware of the Arduino has evolved slowly since its introduction in 2005. Because Arduino as a
concept is very much a combination of hardware and software, it’s important to have a good
understanding of what’s involved in both areas, as well as the areas where they overlap. Let’s undertake
a broad outline of the hardware part of the Arduino in this chapter, going into some detail in a few areas,
as well as its history and how you’ll play a part in its future.
What Is an Arduino?
Because of Arduino’s history and evolution, there are many variations on what can be called an Arduino.
The list grows longer every day. The official offering from the Arduino Team consists of the Arduino Uno
and the larger Arduino Mega 2560.
When most people think of Arduino, they imagine the small, rectangular (and probably blue)
printed circuit board (PCB). This is properly called the I/O Board . See Figure 1-1.
Figure 1-1. The Arduino I/O Board. This is what most people think of when you say “Arduino,” even
though it’s only one piece of a larger system.
1
845028852.001.png 845028852.002.png
CHAPTER 1 HARDWARE
The I/O Board is the physically tangible part of the Arduino system. Technically speaking, the term
Arduino covers the hardware, software, development team, design philosophy, and esprit de corps of the
user community. Yet you’ll often hear people say things like, “Please hand me that Arduino,” or “Careful
with that Arduino, Eugene.”
Arduino was originally developed in Ivrea, Italy. Arduin of Ivrea was the king of Italy about a
thousand years ago and is celebrated in local history. The Piazza Gioberti hosts a pub named after this
famous king, which some say is only named after the road it’s on, the Via Arduino.
The name Arduino is a masculine Italian name meaning “strong friend.” Being a proper name,
Arduino is always capitalized. The model name Uno is stylized in all capitals only in the logo on the PCB.
For more on the history and heritage of Arduino, as well as mountains of other fascinating information,
please see the Arduino web site, http://arduino.cc .
The Arduino I/O Board has traditionally been based on the Atmel AVR ATmega8 and later
derivatives. The I/O Board also contains a serial port, power supply circuitry, expansion connectors, and
miscellaneous support components. The official Arduino FAQ states, “It’s just an AVR development
board” ( www.arduino.cc/en/Main/FAQ ). This assumes that you know what an AVR is. If you read Chapter
3, you will. (Hint: an AVR is a programmable microcontroller chip.) See the simplified block diagram in
Figure 1-2.
Figure 1-2. The Arduino I/O Board block diagram
The Arduino Uno
The Arduino Uno was announced on September 25, 2011 at the New York Maker Faire. The model name
Uno is Italian for the number one and is intended to correspond with the Uno Punto Zero , or 1.0 release
of the Arduino software. Previous releases, numbered 0001 through 0022 have been considered alpha , or
preliminary releases.
The Arduino Uno maintains a remarkable resemblance to its forebears. The physical form factor has
remained the same. Over the years, the processor has been upgraded twice from the original ATmega8
with 8KB bytes of program memory, first to the ATmega168 with 16KB of program memory and then to
the ATmega328 with 32KB bytes of program memory, while remaining pin compatible. The nine-pin RS-
232 serial connector and interface circuitry has been replaced with a virtual serial port using various USB
interface chips. The power-supply circuitry has seen some refinement with extra over-current protection
and intelligent power-source selection.
2
845028852.003.png
Zgłoś jeśli naruszono regulamin