Exploring Arduino : tools and techniques for engineering wizardy /: tools and techniques for engineering wizardy. (2019)
- Record Type:
- Book
- Title:
- Exploring Arduino : tools and techniques for engineering wizardy /: tools and techniques for engineering wizardy. (2019)
- Main Title:
- Exploring Arduino : tools and techniques for engineering wizardy
- Further Information:
- Note: Jeremy Blum.
- Authors:
- Blum, Jeremy
- Contents:
- Introduction xxv Part I Arduino Engineering Basics 1 1 Getting Started and Understanding the Arduino Landscape 3 Exploring the Arduino Ecosystem 4 Arduino Functionality 5 The Microcontroller 7 Programming Interfaces 8 Input/Output: GPIO, ADCs, and Communication Busses 9 Power 9 Arduino Boards 11 Creating Your First Program 15 Downloading and Installing the Arduino IDE 16 Running the IDE and Connecting to the Arduino 17 Breaking Down Your First Program 18 Summary 21 2 Digital Inputs, Outputs, and Pulse-Width Modulation 23 Digital Outputs 24 Wiring Up an LED and Using Breadboards 24 Working with Breadboards 24 Wiring LEDs 25 Programming Digital Outputs 29 Using For Loops 30 Pulse-Width Modulation with analogWrite() 31 Reading Digital Inputs 35 Reading Digital Inputs with Pull-Down Resistors 35 Working with “Bouncy” Buttons 38 Building a Controllable RGB LED Nightlight 42 Summary 46 3 Interfacing with Analog Sensors 47 Understanding Analog and Digital Signals 48 Comparing Analog and Digital Signals 48 Converting an Analog Signal to Digital 49 Reading Analog Sensors with the Arduino: analogRead() 51 Reading a Potentiometer 51 Using Analog Sensors 56 Using Variable Resistors to Make Your Own Analog Sensors 60 Using Resistive Voltage Dividers 61 Using Analog Inputs to Control Analog Outputs 64 Summary 66 Part II Interfacing with Your Environment 67 4 Using Transistors and Driving DC Motors 69 Driving DC Motors 70 Handling High-Current Inductive Loads 71 Using Transistors asIntroduction xxv Part I Arduino Engineering Basics 1 1 Getting Started and Understanding the Arduino Landscape 3 Exploring the Arduino Ecosystem 4 Arduino Functionality 5 The Microcontroller 7 Programming Interfaces 8 Input/Output: GPIO, ADCs, and Communication Busses 9 Power 9 Arduino Boards 11 Creating Your First Program 15 Downloading and Installing the Arduino IDE 16 Running the IDE and Connecting to the Arduino 17 Breaking Down Your First Program 18 Summary 21 2 Digital Inputs, Outputs, and Pulse-Width Modulation 23 Digital Outputs 24 Wiring Up an LED and Using Breadboards 24 Working with Breadboards 24 Wiring LEDs 25 Programming Digital Outputs 29 Using For Loops 30 Pulse-Width Modulation with analogWrite() 31 Reading Digital Inputs 35 Reading Digital Inputs with Pull-Down Resistors 35 Working with “Bouncy” Buttons 38 Building a Controllable RGB LED Nightlight 42 Summary 46 3 Interfacing with Analog Sensors 47 Understanding Analog and Digital Signals 48 Comparing Analog and Digital Signals 48 Converting an Analog Signal to Digital 49 Reading Analog Sensors with the Arduino: analogRead() 51 Reading a Potentiometer 51 Using Analog Sensors 56 Using Variable Resistors to Make Your Own Analog Sensors 60 Using Resistive Voltage Dividers 61 Using Analog Inputs to Control Analog Outputs 64 Summary 66 Part II Interfacing with Your Environment 67 4 Using Transistors and Driving DC Motors 69 Driving DC Motors 70 Handling High-Current Inductive Loads 71 Using Transistors as Switches 72 Using Protection Diodes73 Using a Secondary Power Source 74 Wiring the Motor 74 Controlling Motor Speed with PWM 76 Using an H-Bridge to Control DC Motor Direction 78 Building an H-Bridge Circuit 80 Operating an H-Bridge Circuit 82 Building a Roving Robot 86 Choosing the Robot Parts 87 Selecting a Motor and Gearbox 87 Powering Your Robot 87 Constructing the Robot 89 Writing the Robot Software 92 Bringing It Together 96 Summary 97 5 Driving Stepper and Servo Motors 99 Driving Servo Motors 100 Understanding the Difference between Continuous Rotation and Standard Servos 100 Understanding Servo Control 101 Controlling a Servo 104 Building a Sweeping Distance Sensor 105 Understanding and Driving Stepper Motors 109 How Bipolar Stepper Motors Work 111 Making Your Stepper Move 113 Building a “One-Minute Chronograph” 117 Wiring and Building the Chronograph 117 Programming the Chronograph 119 Summary 124 6 Making Sounds and Music 125 Understanding How Speakers Work 126 The Properties of Sound 126 How a Speaker Produces Sound 128 Using tone() to Make Sounds 129 Including a Definition File 129 Wiring the Speaker 130 Making Sound Sequences 133 Using Arrays 133 Making Note and Duration Arrays 134 Completing the Program 134 Understanding the Limitations of the tone() Function 136 Building a Micro Piano 136 Summary 139 7 USB Serial Communication 141 Understanding the Arduino’s Serial Communication Capabilities 142 Arduino Boards with an Internal or External FTDI or Silicon Labs USB-to-Serial Converter 143 Arduino Boards with a Secondary USB-Capable ATmega MCU Emulating a Serial Converter 146 Arduino Boards with a Single USB-Capable MCU 147 Arduino Boards with USB-Host Capabilities 147 Listening to the Arduino 148 Using print Statements 148 Using Special Characters 150 Changing Data Type Representations 152 Talking to the Arduino 152 Configuring the Arduino IDE’s Serial Monitor to Send Command Strings 152 Reading Incoming Data from a Computer or Other Serial Device 153 Telling the Arduino to Echo Incoming Data 153 Understanding the Differences between Chars and Ints 154 Sending Single Characters to Control an LED 156 Sending Lists of Values to Control an RGB LED 158 Talking to a Desktop App 161 Installing Processing 162 Controlling a Processing Sketch from Your Arduino 163 Sending Data from Processing to Your Arduino 166 Summary 169 8 Emulating USB Devices 171 Emulating a Keyboard 173 Typing Data into the Computer 173 Commanding Your Computer to Do Your Bidding 177 Emulating a Mouse 178 Summary 182 9 Shift Registers 183 Understanding Shift Registers 184 Sending Parallel and Serial Data 185 Working with the 74HC595 Shift Register 186 Understanding the Shift Register pin Functions 186 Understanding How the Shift Register Works 187 Shifting Serial Data from the Arduino 189 Converting Between Binary and Decimal Formats 192 Controlling Light Animations with a Shift Register 192 Building a “Light Rider” 192 Responding to Inputs with an LED Bar Graph 194 Summary 197 Part III Communication Interfaces 199 10 The I2 C Bus 201 History of the I2 C Bus 202 I2 C Hardware Design 203 Communication Scheme and ID Numbers 203 Hardware Requirements and Pull-Up Resistors 206 Communicating with an I2 C Temperature Probe 208 Setting Up the Hardware208 Referencing the Datasheet 210 Writing the Software 212 Combining Shift Registers, Serial Communication, and I2 C Communications 214 Building the Hardware for a Temperature Monitoring System 214 Modifying the Embedded Program 215 Writing the Processing Sketch 218 Summary 221 11 The SPI Bus and Third-Party Libraries 223 Overview of the SPI Bus 224 SPI Hardware and Communication Design 225 Hardware Configuration 225 Communication Scheme 227 Comparing SPI to I2 C and UART 227 Communicating with an SPI Accelerometer 228 What is an Accelerometer? 229 Gathering Information from the Datasheet 231 Setting Up the Hardware233 Writing the Software 235 Installing the Adafruit Sensor Libraries 236 Leveraging the Library 237 Creating an Audiovisual Instrument Using a 3-Axis Accelerometer 241 Setting Up the Hardware242 Modifying the Software 242 Summary 246 12 Interfacing with Liquid Crystal Displays 247 Setting Up the LCD 248 Using the LiquidCrystal Library to Write to the LCD 251 Adding Text to the Display 252 Creating Special Characters and Animations 254 Building a Personal Thermostat 258 Setting Up the Hardware 258 Displaying Data on the LCD 261 Adjusting the Set Point with a Button 264 Adding an Audible Warning and a Fan 265 Bringing It All Together: The Complete Program 266 Taking This Project to the Next Level 270 Summary 271 Part IV Digging Deeper and Combining Functions 273 13 Interrupts and … (more)
- Edition:
- Second edition
- Publisher Details:
- Hoboken, New Jersey : John Wiley & Sons, Inc
- Publication Date:
- 2019
- Extent:
- 1 online resource
- Subjects:
- 629.895
Arduino (Programmable controller) - Languages:
- English
- ISBNs:
- 9781119405306
- Related ISBNs:
- 9781119405351
- Notes:
- Note: Description based on CIP data; resource not viewed.
- Access Rights:
- Legal Deposit; Only available on premises controlled by the deposit library and to one user at any one time; The Legal Deposit Libraries (Non-Print Works) Regulations (UK).
- Access Usage:
- Restricted: Printing from this resource is governed by The Legal Deposit Libraries (Non-Print Works) Regulations (UK) and UK copyright law currently in force.
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library HMNTS - ELD.DS.466560
- Ingest File:
- 02_611.xml