Arduino microcontroller processing for everyone!:
Gespeichert in:
Format: | Buch |
---|---|
Sprache: | English |
Veröffentlicht: |
[San Rafael, CA]
Morgan & Claypool
2010
|
Schriftenreihe: | Synthesis lectures on digital circuits and systems
28 |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis Klappentext |
Beschreibung: | XVIII, 325 S. |
ISBN: | 9781608454372 |
Internformat
MARC
LEADER | 00000nam a2200000 cb4500 | ||
---|---|---|---|
001 | BV037236291 | ||
003 | DE-604 | ||
005 | 20111031 | ||
007 | t | ||
008 | 110218s2010 |||| 00||| eng d | ||
020 | |a 9781608454372 |c kart. |9 978-1-60845-437-2 | ||
035 | |a (OCoLC)662402521 | ||
035 | |a (DE-599)BVBBV037236291 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
049 | |a DE-703 |a DE-83 | ||
084 | |a ST 690 |0 (DE-625)143691: |2 rvk | ||
084 | |a ZN 4980 |0 (DE-625)157428: |2 rvk | ||
245 | 1 | 0 | |a Arduino microcontroller processing for everyone! |c Steven F. Barrett |
264 | 1 | |a [San Rafael, CA] |b Morgan & Claypool |c 2010 | |
300 | |a XVIII, 325 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 1 | |a Synthesis lectures on digital circuits and systems |v 28 | |
650 | 0 | 7 | |a Arduino-Plattform |0 (DE-588)7692236-4 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Arduino-Plattform |0 (DE-588)7692236-4 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Barrett, Steven Frank |e Sonstige |4 oth | |
776 | 0 | 8 | |i Erscheint auch als |n Online-Ausgabe |z 978-1-60845-438-9 |
830 | 0 | |a Synthesis lectures on digital circuits and systems |v 28 |w (DE-604)BV024621607 |9 28 | |
856 | 4 | 2 | |m Digitalisierung UB Bayreuth |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
856 | 4 | 2 | |m Digitalisierung UB Bayreuth |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA |3 Klappentext |
999 | |a oai:aleph.bib-bvb.de:BVB01-021149873 |
Datensatz im Suchindex
_version_ | 1804143844041687040 |
---|---|
adam_text | Preface
....................................................................xvii
Getting Started
..............................................................1
1.1
Overview
..................................................................1
1.2
Getting Started
.............................................................1
1.3
Arduino Duemilanove
......................................................3
1.3.1
Arduino host processor
—
the ATmega328
3
1.4
Example: Autonomous Maze Navigating Robot
...............................4
1.4.1
Structure chart
7
1.4.2
UML activity diagrams
7
1.4.3
Arduino Duemilanove Systems
7
1.5
Arduino open source schematic
..............................................8
1.6
Other Arduino-based platforms
..............................................8
1.7
Extending the hardware features of the Arduino platform
.....................12
1.8
Arduino Software
.........................................................12
1.9
Arduino
Duemilanove/ATmega328
hardware features
.........................12
1.9.1
Memory
12
1.9.2
Port System
15
1.9.3
Internal Systems
17
1.10
Summary
.................................................................19
1.11
References
................................................................20
1.12
Chapter Problems
.........................................................20
Programming
...............................................................21
2.1
Overview
.................................................................21
2.2
The Big Picture
...........................................................22
22
2.3
Anatomy of a Program
.....................................................
2.3.1
Comments
24
2.3.2
Include files
25
2.3.3
Functions
25
2.3.4
Program constants
28
2.3.5
Interrupt handler definitions
29
2.3.6
Variables
29
2.3.7
Main program
30
30
2.4
Fundamental programming concepts
........................................
2.4.1
Operators
30
2.4.2
Programming constructs
34
2.4.3
Decision processing
36
2.5
Arduino Development Environment
........................................
°
2.5.1
Background
39
2.5.2
Arduino Development Environment overview
40
2.5.3
Sketchbook concept
41
2.5.4
Arduino software, libraries, and language references
41
2.6
Application
1:
Robot
IR
sensor
.............................................
2.7
Application
2:
Art piece illumination system
.................................
2.8
Summary
.................................................................
2.9
References
................................................................
48
2.10
Chapter Problems
.........................................................
49
Embedded Systems Design
..................................................
^
3.1
What is an embedded system?
..............................................
3.2
Embedded system design process
...........................................
3.2.1
Project Description
52
3.2.2
Background Research
52
3.2.3
Pre-Design
54
3.2.4
Design
54
3.2.5
Implement Prototype
56
3.2.6
Preliminary Testing
56
3.2.7
Complete and Accurate Documentation
57
3.3
Example: Blinky 602A autonomous maze navigating robot system design
.......57
3.4
Application: Control algorithm for the Blinky 602A Robot
....................60
3.5
Summary
.................................................................71
3.6
References
................................................................71
3.7
Chapter Problems
.........................................................72
Serial Communication Subsystem
............................................73
4.1
Overview
.................................................................73
4.2
Serial Communications
....................................................74
4.3
Serial Communication Terminology
.........................................74
4.4
Serial USART
............................................................75
4.4.1
System Overview
76
4.5
System Operation and Programming using Arduino Development
Environment features
......................................................80
4.6
System Operation and Programming in
С
...................................83
4.6.1
Serial Peripheral Interface—
SPI
85
4.7
SPI
Programming in the Arduino Development Environment
.................88
4.8
SPI
Programming in
С
....................................................89
4.9
Two-wire Serial Interface—TWI
...........................................90
4.10
Application
1:
SD/MMC card module extension via the USART
..............90
4.11
Application
2:
Programming the Arduino
Duemilanove ATmega328
via the
ISP
......................................................................93
4.11.1
Programming Procedure
93
4.12
Summary
.................................................................95
4.13
References
................................................................96
4.14
Chapter Problems
.........................................................96
Analog to Digital Conversion (ADC)
.........................................97
5.1
Overview
.................................................................97
5.2
Sampling, Quantization and Encoding
......................................98
xii
5.2.1
Resolution and Data Rate
100
5.3
Analog-to-Digital Conversion (ADC) Process
..............................101
5.3.1
Transducer Interface Design
(TID)
Circuit
102
5.3.2
Operational Amplifiers
103
5.4
ADC Conversion Technologies
............................................106
5.4.1
Successive-Approximation
107
5.5
The Atmel ATmega328 ADC System
......................................107
5.5.1
Block Diagram
109
5.5.2
Registers
109
5.6
Programming the ADC using the Arduino Development Environment
........112
5.7
Programming the ADC in
С
..............................................
I12
5.8
Example: ADC Rain Gage Indicator
.......................................
П4
5.8.1
ADC Rain Gage Indicator using the Arduino Development
Environment
114
5.8.2
ADC Rain Gage Indicator in
С
119
5.8.3
ADC Rain Gage using the Arduino Development
Environment
—
Revisited
125
5.9
One-bit ADC -Threshold Detector
.......................................
121
5.10
Digital-to-Analog Conversion
(DAC)
......................................
129
5.10.1
DAC
with the Arduino Development Environment
130
5.10.2
DAC
with external converters
130
5.10.3
Octal Channel, 8-bit
DAC
via the
SPI
130
5.11
Application: Art piece illumination system
-
Revisited
.......................*
5.12
Summary
..............................................................134
5.13
References
...............................................................135
5.14
Chapter Problems
........................................................
i36
6
Interrupt Subsystem
...................... ...............137
6.1
Overview
.................... ............137
6.2
ATmega328 Interrupt System
.............................................
I38
6.3
Interrupt Programming
................... ...................
I40
6-4
Programming Interrupts in
С
and the Arduino Development Environment
... ·
I40
6.4.1
External Interrupt Programming
141
6.4.2
Internal Interrupt Programming
144
6.5
Foreground and Background Processing
....................................149
6.6
Interrupt Examples
.......................................................149
6.6.1
Real Time Clock in
С
149
6.6.2
Real Time Clock using the Arduino Development Environment
153
6.6.3
Interrupt Driven USART in
С
155
6.7
Summary
................................................................166
6.8
References
...............................................................166
6.9
Chapter Problems
........................................................167
Timing Subsystem
.........................................................169
7.1
Overview
................................................................169
7.2
Timing related terminology
...............................................170
7.2.1
Frequency
170
7.2.2
Period
170
7.2.3
Duty Cycle
170
7.3
Timing System Overview
.................................................170
7.4
Applications
.............................................................174
7.4.1
Input Capture
—
Measuring External Timing Event
174
7.4.2
Counting Events
175
7.4.3
Output Compare
—
Generating Timing Signals to Interface External
Devices
176
7.4.4
Industrial Implementation Case Study (PWM)
176
7.5
Overview of the Atmel ATmega328 Timer System
..........................178
7.6
Timer
0
System
..........................................................178
7.6.1
Modes of Operation
180
7.6.2
Timer
0
Registers
182
7.7
Timer
1.................................................................185
7.7.1
Timer
1
Registers
185
7.8
Timer2
.................................................................189
7.9 Programming
the Arduino
Duemilanove
using the built-in Arduino
Development Environment Timing Features
................................192
7.10
Programming the Timer System in
С
......................................194
7.10.1
Precision Delay in
С
194
7.10.2
Pulse Width Modulation in
С
196
7.10.3
Input Capture Mode in
С
197
7.11
Servo Motor Control with the PWM System in
С
..........................199
7.12
Summary
................................................................204
7.13
References
...............................................................204
7.14
Chapter Problems
........................................................205
8
Atmel AVR Operating Parameters and Interfacing
...........................20/
8.1
Overview
................................................................207
8.2
Operating Parameters
.....................................................208
8.3
Battery Operation
........................................................211
8.3.1
Embedded system voltage and current drain specifications
211
8.3.2
Battery characteristics
211
8.4
Input Devices
............................................................211
8.4.1
Switches
211
8.4.2
Pullup resistors in switch interface circuitry
213
8.4.3
Switch Debouncing
213
8.4.4
Keypads
215
8.4.5
Sensors
220
8.4.6
LM34 Temperature Sensor Example
222
8.5
Output Devices
........................................................222
8.5.1
Light Emitting Diodes
(LEDs) 223
8.5.2
Seven Segment LED Displays
224
8.5.3
Code Example
226
8.5.4
Tri-state LED Indicator
227
8.5.5
Dot Matrix Display
229
8.5.6
Liquid Crystal Character Display (LCD) in
С
229
CONTENTS xv
8.5.7 Liquid
Crystal Character
Display
(LCD) using the Arduino
Development Environment
239
8.5.8
High Power DC Devices
239
8.6
DC Solenoid Control
.....................................................240
8.7
DC Motor Speed and Direction Control
...................................241
8.7.1
DC Motor Operating Parameters
242
8.7.2
Н
-bridge
direction control
243
8.7.3
Servo motor interface
244
8.7.4
Stepper motor control
244
8.7.5
AC Devices
252
8.8
Interfacing to Miscellaneous Devices
.......................................252
8.8.1
Sonalerts, Beepers, Buzzers
252
8.8.2
Vibrating Motor
254
8.9
Extended Example
1:
Automated Fan Cooling System
.......................254
8.10
Extended Example
2:
Fine Art Lighting System
.............................264
8.11
Extended Example
3:
Flight Simulator Panel
................................269
8.12
Summary
................................................................294
8.13
References
...............................................................295
8.14
Chapter Problems
........................................................295
A ATmega328 Register Set
....................................................297
В
ATmega328 Header
FÜe....................................................301
Author s Biography
.........................................................321
Index
......................................................................323
Series Editor: Mitchell Thornton, Southern Methodist University
Arduino Microcontroller Processing
for Everyone!
Steven F. Barrett, University of Wyoming,
Lammie
This book is about the Arduino microcontroller and the Arduino concept. The visionary Arduino
team of Massimo Banzi, David Cuartielles/rom Igoe, Gianluca
Martino,
and David Mellis launched
a new innovation in microcontroller hardware in
2005,
the concept of open source hardware. Their
approach was to openly share details of microcontroller-based hardware design platforms to stimulate
the sharing of ideas and promote innovation. This concept has been popular in the software world
for many years. This book is intended for a wide variety of audiences including students of the fine
arts, middle and senior high school students, engineering design students, and practicing scientists
and engineers. To meet this wide audience, the book has been divided into sections to satisfy the
need of each reader. The book contains many software and hardware examples to assist the reader
in developing a wide variety of systems. For the examples, the Arduino
Duemilanove
and the Atmel
ATmega328 is employed as the target processor.
ABOUT SYNTHESIS
This volume is a printed version of a work that appears in the
Syntbeńs
provide concise
original
presentations of important research and development
tx^ics.pubMiedquk^málg^andprmtfonnals.FormoiemjRmnatkm
viski
|
any_adam_object | 1 |
building | Verbundindex |
bvnumber | BV037236291 |
classification_rvk | ST 690 ZN 4980 |
ctrlnum | (OCoLC)662402521 (DE-599)BVBBV037236291 |
discipline | Informatik Elektrotechnik / Elektronik / Nachrichtentechnik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01723nam a2200373 cb4500</leader><controlfield tag="001">BV037236291</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20111031 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">110218s2010 |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781608454372</subfield><subfield code="c">kart.</subfield><subfield code="9">978-1-60845-437-2</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)662402521</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV037236291</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-703</subfield><subfield code="a">DE-83</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 690</subfield><subfield code="0">(DE-625)143691:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ZN 4980</subfield><subfield code="0">(DE-625)157428:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Arduino microcontroller processing for everyone!</subfield><subfield code="c">Steven F. Barrett</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">[San Rafael, CA]</subfield><subfield code="b">Morgan & Claypool</subfield><subfield code="c">2010</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVIII, 325 S.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="1" ind2=" "><subfield code="a">Synthesis lectures on digital circuits and systems</subfield><subfield code="v">28</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Arduino-Plattform</subfield><subfield code="0">(DE-588)7692236-4</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Arduino-Plattform</subfield><subfield code="0">(DE-588)7692236-4</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Barrett, Steven Frank</subfield><subfield code="e">Sonstige</subfield><subfield code="4">oth</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Erscheint auch als</subfield><subfield code="n">Online-Ausgabe</subfield><subfield code="z">978-1-60845-438-9</subfield></datafield><datafield tag="830" ind1=" " ind2="0"><subfield code="a">Synthesis lectures on digital circuits and systems</subfield><subfield code="v">28</subfield><subfield code="w">(DE-604)BV024621607</subfield><subfield code="9">28</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Bayreuth</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Bayreuth</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Klappentext</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-021149873</subfield></datafield></record></collection> |
id | DE-604.BV037236291 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T22:54:07Z |
institution | BVB |
isbn | 9781608454372 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-021149873 |
oclc_num | 662402521 |
open_access_boolean | |
owner | DE-703 DE-83 |
owner_facet | DE-703 DE-83 |
physical | XVIII, 325 S. |
publishDate | 2010 |
publishDateSearch | 2010 |
publishDateSort | 2010 |
publisher | Morgan & Claypool |
record_format | marc |
series | Synthesis lectures on digital circuits and systems |
series2 | Synthesis lectures on digital circuits and systems |
spelling | Arduino microcontroller processing for everyone! Steven F. Barrett [San Rafael, CA] Morgan & Claypool 2010 XVIII, 325 S. txt rdacontent n rdamedia nc rdacarrier Synthesis lectures on digital circuits and systems 28 Arduino-Plattform (DE-588)7692236-4 gnd rswk-swf Arduino-Plattform (DE-588)7692236-4 s DE-604 Barrett, Steven Frank Sonstige oth Erscheint auch als Online-Ausgabe 978-1-60845-438-9 Synthesis lectures on digital circuits and systems 28 (DE-604)BV024621607 28 Digitalisierung UB Bayreuth application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis Digitalisierung UB Bayreuth application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA Klappentext |
spellingShingle | Arduino microcontroller processing for everyone! Synthesis lectures on digital circuits and systems Arduino-Plattform (DE-588)7692236-4 gnd |
subject_GND | (DE-588)7692236-4 |
title | Arduino microcontroller processing for everyone! |
title_auth | Arduino microcontroller processing for everyone! |
title_exact_search | Arduino microcontroller processing for everyone! |
title_full | Arduino microcontroller processing for everyone! Steven F. Barrett |
title_fullStr | Arduino microcontroller processing for everyone! Steven F. Barrett |
title_full_unstemmed | Arduino microcontroller processing for everyone! Steven F. Barrett |
title_short | Arduino microcontroller processing for everyone! |
title_sort | arduino microcontroller processing for everyone |
topic | Arduino-Plattform (DE-588)7692236-4 gnd |
topic_facet | Arduino-Plattform |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=021149873&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA |
volume_link | (DE-604)BV024621607 |
work_keys_str_mv | AT barrettstevenfrank arduinomicrocontrollerprocessingforeveryone |