×
思维导图备注
Arduino Cookbook - Michael Margolis
首页
收藏书籍
阅读记录
书签管理
我的书签
添加书签
移除书签
Solution
浏览
4
扫码
小字体
中字体
大字体
2022-02-24 00:33:56
请
登录
再阅读
上一篇:
下一篇:
Arduino Cookbook
Arduino Cookbook
SPECIAL OFFER: Upgrade this ebook with O’Reilly
A Note Regarding Supplemental Files
Preface
Who This Book Is For
How This Book Is Organized
What Was Left Out
Code Style (About the Code)
Arduino Platform Release Notes
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
1. Getting Started
1.0. Introduction
Arduino Software
Arduino Hardware
See Also
1.1. Installing the Integrated Development Environment (IDE)
Problem
Solution
Discussion
See Also
1.2. Setting Up the Arduino Board
Problem
Solution
Discussion
See Also
1.3. Using the Integrated Development Environment (IDE) to Prepare an Arduino Sketch
Problem
Solution
Discussion
See Also
1.4. Uploading and Running the Blink Sketch
Problem
Solution
Discussion
See Also
1.5. Creating and Saving a Sketch
Problem
Solution
Discussion
1.6. Using Arduino
Problem
Solution
Discussion
See Also
2. Making the Sketch Do Your Bidding
2.0. Introduction
2.1. Structuring an Arduino Program
Problem
Solution
Discussion
See Also
2.2. Using Simple Primitive Types (Variables)
Problem
Solution
Discussion
See Also
2.3. Using Floating-Point Numbers
Problem
Solution
Discussion
See Also
2.4. Working with Groups of Values
Problem
Solution
Discussion
See Also
2.5. Using Arduino String Functionality
Problem
Solution
Discussion
See Also
2.6. Using C Character Strings
Problem
Solution
Discussion
See Also
2.7. Splitting Comma-Separated Text into Groups
Problem
Solution
Discussion
See Also
2.8. Converting a Number to a String
Problem
Solution
Discussion
2.9. Converting a String to a Number
Problem
Solution
Discussion
See Also
2.10. Structuring Your Code into Functional Blocks
Problem
Solution
Discussion
See Also
2.11. Returning More Than One Value from a Function
C.3. Using Capacitors for Decoupling
C.4. Using Snubber Diodes with Inductive Loads
C.5. Working with AC Line Voltages
D. Tips on Troubleshooting Software Problems
D.1. Code That Won’t Compile
D.2. Code That Compiles but Does Not Work As Expected
D.3. Troubleshooting Interrelated Hardware/Software Problems
E. Tips on Troubleshooting Hardware Problems
E.1. Still Stuck?
F. Digital and Analog Pins
Problem
G. ASCII and Extended Character Sets
Index
K
About the Author
Colophon
SPECIAL OFFER: Upgrade this ebook with O’Reilly
Solution
Discussion
2.12. Taking Actions Based on Conditions
Problem
Solution
Discussion
See Also
2.13. Repeating a Sequence of Statements
Problem
Solution
Discussion
See Also
2.14. Repeating Statements with a Counter
Problem
Solution
Discussion
See Also
2.15. Breaking Out of Loops
Problem
Solution
Discussion
See Also
2.16. Taking a Variety of Actions Based on a Single Variable
Problem
Solution
Discussion
See Also
2.17. Comparing Character and Numeric Values
Problem
Solution
Discussion
See Also
2.18. Comparing Strings
Problem
Solution
Discussion
See Also
2.19. Performing Logical Comparisons
Problem
Solution
Discussion
2.20. Performing Bitwise Operations
Problem
Solution
Discussion
See Also
2.21. Combining Operations and Assignment
Problem
Solution
Discussion
See Also
3. Using Mathematical Operators
3.0. Introduction
3.1. Adding, Subtracting, Multiplying, and Dividing
Problem
Solution
Discussion
See Also
3.2. Incrementing and Decrementing Values
Problem
Solution
Discussion
See Also
3.3. Finding the Remainder After Dividing Two Values
Problem
Solution
Discussion
See Also
3.4. Determining the Absolute Value
Problem
Solution
Discussion
See Also
3.5. Constraining a Number to a Range of Values
Problem
Solution
Discussion
See Also
3.6. Finding the Minimum or Maximum of Some Values
Problem
Solution
Discussion
See Also
3.7. Raising a Number to a Power
Problem
Solution
Discussion
3.8. Taking the Square Root
Problem
Solution
Discussion
3.9. Rounding Floating-Point Numbers Up and Down
Problem
Solution
Discussion
3.10. Using Trigonometric Functions
Problem
Solution
Discussion
See Also
3.11. Generating Random Numbers
Problem
Solution
Discussion
See Also
3.12. Setting and Reading Bits
Problem
Solution
Discussion
See Also
3.13. Shifting Bits
Problem
Solution
Discussion
See Also
3.14. Extracting High and Low Bytes in an int or long
Problem
Solution
Discussion
See Also
3.15. Forming an int or long from High and Low Bytes
Problem
Solution
Discussion
See Also
4. Serial Communications
4.0. Introduction
Serial Hardware
Software Serial
Serial Message Protocol
See Also
4.1. Sending Debug Information from Arduino to Your Computer
Problem
Solution
Discussion
See Also
4.2. Sending Formatted Text and Numeric Data from Arduino
Problem
Solution
Discussion
See Also
4.3. Receiving Serial Data in Arduino
Problem
Solution
Discussion
See Also
4.4. Sending Multiple Text Fields from Arduino in a Single Message
Problem
Solution
Discussion
See Also
4.5. Receiving Multiple Text Fields in a Single Message in Arduino
Problem
Solution
Discussion
See Also
4.6. Sending Binary Data from Arduino
Problem
Solution
Discussion
See Also
4.7. Receiving Binary Data from Arduino on a Computer
Problem
Solution
Discussion
See Also
4.8. Sending Binary Values from Processing to Arduino
Problem
Solution
Discussion
4.9. Sending the Value of Multiple Arduino Pins
Problem
Solution
Discussion
See Also
4.10. How to Move the Mouse Cursor on a PC or Mac
Problem
Solution
Discussion
See Also
4.11. Controlling Google Earth Using Arduino
Problem
Solution
Discussion
See Also
4.12. Logging Arduino Data to a File on Your Computer
Problem
Solution
Discussion
See Also
4.13. Sending Data to Two Serial Devices at the Same Time
Problem
Solution
Discussion
4.14. Receiving Serial Data from Two Devices at the Same Time
Problem
Solution
Discussion
4.15. Setting Up Processing on Your Computer to Send and Receive Serial Data
Problem
Solution
5. Simple Digital and Analog Input
5.0. Introduction
5.1. Using a Switch
Problem
Solution
Discussion
See Also
5.2. Using a Switch Without External Resistors
Problem
Solution
Discussion
5.3. Reliably Detecting the Closing of a Switch
Problem
Solution
Discussion
See Also
5.4. Determining How Long a Switch Is Pressed
Problem
Solution
Discussion
5.5. Reading a Keypad
Problem
Solution
Discussion
See Also
5.6. Reading Analog Values
Problem
Solution
Discussion
See Also
5.7. Changing the Range of Values
Problem
Solution
Discussion
See Also
5.8. Reading More Than Six Analog Inputs
Problem
Solution
Discussion
See Also
5.9. Displaying Voltages Up to 5V
Problem
Solution
Discussion
5.10. Responding to Changes in Voltage
Problem
Solution
Discussion
5.11. Measuring Voltages More Than 5V (Voltage Dividers)
Problem
Solution
Discussion
6. Getting Input from Sensors
6.0. Introduction
See Also
6.1. Detecting Movement
Problem
Solution
Discussion
See Also
6.2. Detecting Light
Problem
Solution
Discussion
6.3. Detecting Motion (Integrating Passive Infrared Detectors)
Problem
Solution
Discussion
6.4. Measuring Distance
Problem
Solution
Discussion
See Also
6.5. Measuring Distance Accurately
Problem
Solution
Discussion
See Also
6.6. Detecting Vibration
Problem
Solution
Discussion
6.7. Detecting Sound
Problem
Solution
Discussion
6.8. Measuring Temperature
Problem
Solution
Discussion
6.9. Reading RFID Tags
Problem
Solution
Discussion
6.10. Tracking the Movement of a Dial
Problem
Solution
Discussion
6.11. Tracking the Movement of More Than One Rotary Encoder
Problem
Solution
Discussion
6.12. Tracking the Movement of a Dial in a Busy Sketch
Problem
Solution
Discussion
6.13. Using a Mouse
Problem
Solution
Discussion
6.14. Getting Location from a GPS
Problem
Solution
Discussion
See Also
6.15. Detecting Rotation Using a Gyroscope
Problem
Solution
Discussion
6.16. Detecting Direction
Problem
Solution
Discussion
6.17. Getting Input from a Game Control Pad (PlayStation)
Problem
Solution
Discussion
See Also
6.18. Reading Acceleration
Problem
Solution
Discussion
See Also
7. Visual Output
7.0. Introduction
Digital Output
Analog Output
Controlling Light
7.1. Connecting and Using LEDs
Problem
Solution
Discussion
See Also
7.2. Adjusting the Brightness of an LED
Problem
Solution
Discussion
See Also
7.3. Driving High-Power LEDs
Problem
Solution
Discussion
See Also
7.4. Adjusting the Color of an LED
Problem
Solution
Discussion
See Also
7.5. Sequencing Multiple LEDs: Creating a Bar Graph
Problem
Solution
Discussion
See Also
7.6. Sequencing Multiple LEDs: Making a Chase Sequence (Knight Rider)
Problem
Solution
Discussion
7.7. Controlling an LED Matrix Using Multiplexing
Problem
Solution
Discussion
7.8. Displaying Images on an LED Matrix
Problem
Solution
Discussion
See Also
7.9. Controlling a Matrix of LEDs: Charlieplexing
Problem
Solution
Discussion
See Also
7.10. Driving a 7-Segment LED Display
Problem
Solution
Discussion
7.11. Driving Multidigit, 7-Segment LED Displays: Multiplexing
Problem
Solution
Discussion
7.12. Driving Multidigit, 7-Segment LED Displays Using MAX7221 Shift Registers
Problem
Solution
Solution
7.13. Controlling an Array of LEDs by Using MAX72xx Shift Registers
Problem
Solution
Discussion
See Also
7.14. Increasing the Number of Analog Outputs Using PWM Extender Chips (TLC5940)
Problem
Solution
Discussion
See Also
7.15. Using an Analog Panel Meter As a Display
Problem
Solution
Discussion
See Also
8. Physical Output
8.0. Introduction
Motion Control Using Servos
Solenoids and Relays
Brushed and Brushless Motors
Stepper Motors
Troubleshooting Sidebar
8.1. Controlling the Position of a Servo
Problem
Solution
Discussion
8.2. Controlling One or Two Servos with a Potentiometer or Sensor
Problem
Solution
Discussion
8.3. Controlling the Speed of Continuous Rotation Servos
Problem
Solution
Discussion
8.4. Controlling Servos from the Serial Port
Problem
Solution
Discussion
See Also
8.5. Driving a Brushless Motor (Using a Hobby Speed Controller)
Problem
Solution
Discussion
8.6. Controlling Solenoids and Relays
Problem
Solution
Discussion
8.7. Making an Object Vibrate
Problem
Solution
Discussion
8.8. Driving a Brushed Motor Using a Transistor
Problem
Solution
Discussion
8.9. Controlling the Direction of a Brushed Motor with an H-Bridge
Problem
Solution
Discussion
8.10. Controlling the Direction and Speed of a Brushed Motor with an H-Bridge
Problem
Solution
Discussion
8.11. Using Sensors to Control the Direction and Speed of Brushed Motors (L293 H-Bridge)
Problem
Solution
Discussion
See Also
8.12. Driving a Bipolar Stepper Motor
Problem
Solution
Discussion
8.13. Driving a Bipolar Stepper Motor (Using the EasyDriver Board)
Problem
Solution
Discussion
8.14. Driving a Unipolar Stepper Motor (ULN2003A)
Problem
Solution
Discussion
9. Audio Output
9.0. Introduction
9.1. Playing Tones
Problem
Solution
See Also
9.2. Playing a Simple Melody
Problem
Solution
9.3. Generating More Than One Simultaneous Tone
Problem
Solution
Discussion
9.4. Generating Audio Tones and Fading an LED
Problem
Solution
Discussion
See Also
9.5. Playing a WAV File
Problem
Solution
Discussion
See Also
9.6. Controlling MIDI
Problem
Solution
Discussion
See Also
9.7. Making an Audio Synthesizer
Problem
Solution
Discussion
See Also
10. Remotely Controlling External Devices
10.0. Introduction
10.1. Responding to an Infrared Remote Control
Problem
Solution
Discussion
10.2. Decoding Infrared Remote Control Signals
Problem
Solution
Discussion
See Also
10.3. Imitating Remote Control Signals
Problem
Solution
Discussion
See Also
10.4. Controlling a Digital Camera
Problem
Solution
Discussion
See Also
10.5. Controlling AC Devices by Hacking a Remote Controlled Switch
Problem
Solution
Discussion
11. Using Displays
11.0. Introduction
11.1. Connecting and Using a Text LCD Display
Problem
Solution
Discussion
See Also
11.2. Formatting Text
Problem
Solution
Discussion
See Also
11.3. Turning the Cursor and Display On or Off
Problem
Solution
Discussion
11.4. Scrolling Text
Problem
Solution
Discussion
11.5. Displaying Special Symbols
Problem
Solution
Discussion
See Also
11.6. Creating Custom Characters
Problem
Solution
Discussion
11.7. Displaying Symbols Larger Than a Single Character
Problem
Solution
Discussion
See Also
11.8. Displaying Pixels Smaller Than a Single Character
Problem
Solution
Discussion
11.9. Connecting and Using a Graphical LCD Display
Problem
Solution
Discussion
11.10. Creating Bitmaps for Use with a Graphical Display
Problem
Solution
See Also
11.11. Displaying Text on a TV
Problem
Solution
Discussion
See Also
12. Using Time and Dates
12.0. Introduction
12.1. Creating Delays
Problem
Solution
Discussion
See Also
12.2. Using millis to Determine Duration
Problem
Solution
Discussion
See Also
12.3. More Precisely Measuring the Duration of a Pulse
Problem
Solution
Discussion
See Also
12.4. Using Arduino As a Clock
Problem
Solution
Discussion
See Also
12.5. Creating an Alarm to Periodically Call a Function
Problem
Solution
Discussion
12.6. Using a Real-Time Clock
Problem
Solution
Discussion
See Also
13. Communicating Using I2C and SPI
13.0. Introduction
I2C
SPI
See Also
13.1. Controlling an RGB LED Using the BlinkM Module
Problem
Solution
Discussion
See Also
13.2. Using the Wii Nunchuck Accelerometer
Problem
Solution
Discussion
13.3. Interfacing to an External Real-Time Clock
Problem
Solution
Discussion
See Also
13.4. Adding External EEPROM Memory
Problem
Solution
Discussion
See Also
13.5. Reading Temperature with a Digital Thermometer
Problem
Solution
Discussion
See Also
13.6. Driving Four 7-Segment LEDs Using Only Two Wires
Problem
Solution
Discussion
See Also
13.7. Integrating an I2C Port Expander
Problem
Solution
Discussion
See Also
13.8. Driving Multidigit, 7-Segment Displays Using SPI
Problem
Solution
Discussion
13.9. Communicating Between Two or More Arduino Boards
Problem
Solution
Discussion
See Also
14. Wireless Communication
14.0. Introduction
14.1. Sending Messages Using Low-Cost Wireless Modules
Problem
Solution
Discussion
See Also
14.2. Connecting Arduino to a ZigBee or 802.15.4 Network
Problem
Solution
Discussion
See Also
14.3. Sending a Message to a Particular XBee
Problem
Solution
Discussion
See Also
14.4. Sending Sensor Data Between XBees
Problem
Solution
Discussion
See Also
14.5. Activating an Actuator Connected to an XBee
Problem
Solution
Discussion
See Also
15. Ethernet and Networking
15.0. Introduction
15.1. Setting Up the Ethernet Shield
Problem
Solution
Discussion
See Also
15.2. Obtaining Your IP Address Automatically
Problem
Solution
Discussion
15.3. Resolving Hostnames to IP Addresses (DNS)
Problem
Solution
Discussion
15.4. Requesting Data from a Web Server
Problem
Solution
Discussion
15.5. Requesting Data from a Web Server Using XML
Problem
Solution
15.6. Setting Up an Arduino to Be a Web Server
Problem
Solution
Discussion
15.7. Handling Incoming Web Requests
Problem
Solution
Discussion
15.8. Handling Incoming Requests for Specific Pages
Problem
Solution
Discussion
15.9. Using HTML to Format Web Server Responses
Problem
Solution
Discussion
See Also
15.10. Serving Web Pages Using Forms (POST)
Problem
Solution
Discussion
15.11. Serving Web Pages Containing Large Amounts of Data
Problem
Solution
Discussion
See Also
15.12. Sending Twitter Messages
Problem
Solution
Discussion
15.13. Sending and Receiving Simple Messages (UDP)
Problem
Solution
Discussion
15.14. Getting the Time from an Internet Time Server
Problem
Solution
Discussion
See Also
15.15. Monitoring Pachube Feeds
Problem
Solution
Discussion
15.16. Sending Information to Pachube
Problem
Solution
Discussion
16. Using, Modifying, and Creating Libraries
16.0. Introduction
16.1. Using the Built-in Libraries
Problem
Solution
Discussion
See Also
16.2. Installing Third-Party Libraries
Problem
Solution
Discussion
16.3. Modifying a Library
Problem
Solution
Discussion
See Also
16.4. Creating Your Own Library
Problem
Solution
Discussion
See Also
16.5. Creating a Library That Uses Other Libraries
Problem
Solution
Discussion
17. Advanced Coding and Memory Handling
17.0. Introduction
Preprocessor
See Also
17.1. Understanding the Arduino Build Process
Problem
Solution
Discussion
See Also
17.2. Determining the Amount of Free and Used RAM
Problem
Solution
Discussion
See Also
17.3. Storing and Retrieving Numeric Values in Program Memory
Problem
Solution
Discussion
17.4. Storing and Retrieving Strings in Program Memory
Problem
Solution
Discussion
17.5. Using #define and const Instead of Integers
Problem
Solution
Discussion
See Also
17.6. Using Conditional Compilations
Problem
Solution
Discussion
See Also
18. Using the Controller Chip Hardware
18.0. Introduction
Registers
Interrupts
Timers
Analog and Digital Pins
See Also
18.1. Storing Data in Permanent EEPROM Memory
Problem
Solution
Discussion
See Also
18.2. Using Hardware Interrupts
Problem
Solution
Discussion
See Also
18.3. Setting Timer Duration
Problem
Solution
Discussion
See Also
18.4. Setting Timer Pulse Width and Duration
Problem
Solution
Discussion
18.5. Creating a Pulse Generator
Problem
Solution
Discussion
See Also
18.6. Changing a Timer’s PWM Frequency
Problem
Solution
Discussion
18.7. Counting Pulses
Problem
Solution
Discussion
See Also
18.8. Measuring Pulses More Accurately
Problem
Solution
Discussion
18.9. Measuring Analog Values Quickly
Problem
Solution
Discussion
See Also
18.10. Reducing Battery Drain
Problem
Solution
Discussion
See Also
18.11. Setting Digital Pins Quickly
Problem
Solution
Discussion
A. Electronic Components
A.1. Capacitor
A.2. Diode
A.3. Integrated Circuit
A.4. Keypad
A.5. LED
A.6. Motor (DC)
A.7. Optocoupler
A.8. Photocell (Photoresistor)
A.9. Piezo
A.10. Pot (Potentiometer)
A.11. Relay
A.12. Resistor
A.13. Solenoid
A.14. Speaker
A.15. Stepper Motor
A.16. Switch
A.17. Transistor
A.18. See Also
B. Using Schematic Diagrams and Data Sheets
B.1. How to Read a Data Sheet
B.2. Choosing and Using Transistors for Switching
C. Building and Connecting the Circuit
C.1. Using a Breadboard
C.2. Connecting and Using External Power Supplies and Batteries
暂无相关搜索结果!
×
二维码
手机扫一扫,轻松掌上学
×
《Arduino Cookbook - Michael Margolis》电子书下载
请下载您需要的格式的电子书,随时随地,享受学习的乐趣!
EPUB 电子书
×
书签列表
×
阅读记录
阅读进度:
0.00%
(
0/0
)
重置阅读进度