Record:   Prev Next
Author Blum, Jeremy
Title Exploring Arduino : Tools and Techniques for Engineering Wizardry
Imprint New York : John Wiley & Sons, Incorporated, 2013
book jacket
Edition 1st ed
Descript 1 online resource (385 pages)
text txt rdacontent
computer c rdamedia
online resource cr rdacarrier
Note Cover -- Title Page -- Copyright -- Contents -- Introduction -- Part I Arduino Engineering Basics -- Chapter 1 Getting Up and Blinking with the Arduino -- Exploring the Arduino Ecosystem -- Arduino Functionality -- Atmel Microcontroller -- Programming Interfaces -- General I/O and ADCs -- Power Supplies -- Arduino Boards -- Creating Your First Program -- Downloading and Installing the Arduino IDE -- Running the IDE and Connecting to the Arduino -- Breaking Down Your First Program -- Summary -- Chapter 2 Digital Inputs, Outputs, and Pulse-Width Modulation -- Digital Outputs -- Wiring Up an LED and Using Breadboards -- Working with Breadboards -- Wiring LEDs -- Programming Digital Outputs -- Using For Loops -- Pulse-Width Modulation with analogWrite() -- Reading Digital Inputs -- Reading Digital Inputs with Pulldown Resistors -- Working with "Bouncy" Buttons -- Building a Controllable RGB LED Nightlight -- Summary -- Chapter 3 Reading Analog Sensors -- Understanding Analog and Digital Signals -- Comparing Analog and Digital Signals -- Converting an Analog Signal to a Digital One -- Reading Analog Sensors with the Arduino: analogRead() -- Reading a Potentiometer -- Using Analog Sensors -- Working with Analog Sensors to Sense Temperature -- Using Variable Resistors to Make Your Own Analog Sensors -- Using Resistive Voltage Dividers -- Using Analog Inputs to Control Analog Outputs -- Summary -- Part II Controlling Your Environment -- Chapter 4 Using Transistors and Driving Motors -- Driving DC Motors -- Handling High-Current Inductive Loads -- Using Transistors as Switches -- Using Protection Diodes -- Using a Secondary Power Source -- Wiring the Motor -- Controlling Motor Speed with PWM -- Using an H-Bridge to Control DC Motor Direction -- Building an H-bridge Circuit -- Operating an H-bridge Circuit -- Driving Servo Motors
Understanding the Difference Between Continuous Rotation and Standard Servos -- Understanding Servo Control -- Controlling a Servo -- Building a Sweeping Distance Sensor -- Summary -- Chapter 5 Making Sounds -- Understanding How Speakers Work -- The Properties of Sound -- How a Speaker Produces Sound -- Using tone() to Make Sounds -- Including a Definition File -- Wiring the Speaker -- Making Sound Sequences -- Using Arrays -- Making Note and Duration Arrays -- Completing the Program -- Understanding the Limitations of the tone() Function -- Building a Micro Piano -- Summary -- Chapter 6 USB and Serial Communication -- Understanding the Arduino's Serial Communication Capabilities -- Arduino Boards with an Internal or External FTDI USB-to-Serial Converter -- Arduino Boards with a Secondary USB-Capable ATMega MCU Emulating a Serial Converter -- Arduino Boards with a Single USB-Capable MCU -- Arduino Boards with USB-Host Capabilities -- Listening to the Arduino -- Using print Statements -- Using Special Characters -- Changing Data Type Representations -- Talking to the Arduino -- Reading Information from a Computer or Other Serial Device -- Telling the Arduino to Echo Incoming Data -- Understanding the Differences Between Chars and Ints -- Sending Single Characters to Control an LED -- Sending Lists of Values to Control an RGB LED -- Talking to a Desktop App -- Talking to Processing -- Installing Processing -- Controlling a Processing Sketch from Your Arduino -- Sending Data from Processing to Your Arduino -- Learning Special Tricks with the Arduino Leonardo (and Other 32U4-Based Arduinos) -- Emulating a Keyboard -- Typing Data into the Computer -- Commanding Your Computer to Do Your Bidding -- Emulating a Mouse -- Summary -- Chapter 7 Shift Registers -- Understanding Shift Registers -- Sending Parallel and Serial Data
Working with the 74HC595 Shift Register -- Understanding the Shift Register Pin Functions -- Understanding How the Shift Register Works -- Shifting Serial Data from the Arduino -- Converting Between Binary and Decimal Formats -- Controlling Light Animations with a Shift Register -- Building a "Light Rider" -- Responding to Inputs with an LED Bar Graph -- Summary -- Part III Communication Interfaces -- Chapter 8 The I²C Bus -- History of the I²C Bus -- I²C Hardware Design -- Communication Scheme and ID Numbers -- Hardware Requirements and Pull-Up Resistors -- Communicating with an I²C Temperature Probe -- Setting Up the Hardware -- Referencing the Datasheet -- Writing the Software -- Combining Shift Registers, Serial Communication, and I²C Communications -- Building the Hardware for a Temperature Monitoring System -- Modifying the Embedded Program -- Writing the Processing Sketch -- Summary -- Chapter 9 The SPI Bus -- Overview of the SPI Bus -- SPI Hardware and Communication Design -- Hardware Configuration -- Communication Scheme -- Comparing SPI to I²C -- Communicating with an SPI Digital Potentiometer -- Gathering Information from the Datasheet -- Setting Up the Hardware -- Writing the Software -- Creating an Audiovisual Display Using SPI Digital Potentiometers -- Setting Up the Hardware -- Modifying the Software -- Summary -- Chapter 10 Interfacing with Liquid Crystal Displays -- Setting Up the LCD -- Using the LiquidCrystal Library to Write to the LCD -- Adding Text to the Display -- Creating Special Characters and Animations -- Building a Personal Thermostat -- Setting Up the Hardware -- Displaying Data on the LCD -- Adjusting the Set Point with a Button -- Adding an Audible Warning and a Fan -- Bringing It All Together: The Complete Program -- Taking This Project to the Next Level -- Summary -- Chapter 11 Wireless Communication with XBee Radios
Understanding XBee Wireless Communication -- XBee Radios -- The XBee Radio Shield and Serial Connections -- 3.3V Regulator -- Logic Level Shifting -- Associate LED and RSSI LED -- UART Selection Jumper or Switch -- Hardware vs. Software Serial UART Connection Option -- Configuring Your XBees -- Configuring via a Shield or a USB Adapter -- Programming Option 1: Using the Uno as a Programmer (Not Recommended) -- Programming Option 2: Using the SparkFun USB Explorer (Recommended) -- Choosing Your XBee Settings and Connecting Your XBee to Your Host Computer -- Configuring Your XBee with X-CTU -- Configuring Your XBee with a Serial Terminal -- Talking with Your Computer Wirelessly -- Powering Your Remote Arduino -- USB with a Computer or a 5V Wall Adapter -- Batteries -- Wall Power Adapters -- Revisiting the Serial Examples: Controlling Processing with a Potentiometer -- Revisiting the Serial Examples: Controlling an RGB LED -- Talking with Another Arduino: Building a Wireless Doorbell -- System Design -- Transmitter Hardware -- Receiver Hardware -- Transmitter Software -- Receiver Software -- Summary -- Part IV Advanced Topics and Projects -- Chapter 12 Hardware and Timer Interrupts -- Using Hardware Interrupts -- Knowing the Tradeoffs Between Polling and Interrupting -- Ease of Implementation (Software) -- Ease of Implementation (Hardware) -- Multitasking -- Acquisition Accuracy -- Understanding the Arduino's Hardware Interrupt Capabilities -- Building and Testing a Hardware-Debounced Button Interrupt Circuit -- Creating a Hardware-Debouncing Circuit -- Assembling the Complete Test Circuit -- Writing the Software -- Using Timer Interrupts -- Understanding Timer Interrupts -- Getting the Library -- Executing Two Tasks Simultaneously(ish) -- Building an Interrupt-Driven Sound Machine -- Sound Machine Hardware -- Sound Machine Software -- Summary
Chapter 13 Data Logging with SD Cards -- Getting Ready for Data Logging -- Formatting Data with CSV Files -- Preparing an SD Card for Data Logging -- Interfacing the Arduino with an SD Card -- SD Card Shields -- SD Card SPI Interface -- Writing to an SD Card -- Reading from an SD Card -- Using a Real-Time Clock -- Understanding Real-Time Clocks -- Using the DS1307 Real-Time Clock -- Using the RTC Arduino Third-Party Library -- Using the Real-Time Clock -- Installing the RTC and SD Card Modules -- Updating the Software -- Building an Entrance Logger -- Logger Hardware -- Logger Software -- Data Analysis -- Summary -- Chapter 14 Connecting Your Arduino to the Internet -- The Web, the Arduino, and You -- Networking Lingo -- IP Address -- Network Address Translation -- MAC Address -- HTML -- HTTP -- GET/POST -- DHCP -- DNS -- Clients and Servers -- Networking Your Arduino -- Controlling Your Arduino from the Web -- Setting Up the I/O Control Hardware -- Designing a Simple Web Page -- Writing an Arduino Server Sketch -- Connecting to the Network and Retrieving an IP via DHCP -- Replying to a Client Response -- Putting It Together: Web Server Sketch -- Controlling Your Arduino via the Network -- Controlling Your Arduino over the Local Network -- Using Port Forwarding to Control your Arduino from Anywhere -- Sending Live Data to a Graphing Service -- Building a Live Data Feed on Xively -- Creating a Xively Account -- Creating a Data Feed -- Installing the Xively and HttpClient Libraries -- Wiring Up Your Arduino -- Configuring the Xively Sketch and Running the Code -- Displaying Data on the Web -- Adding Feed Components -- Adding an Analog Temperature Sensor -- Adding Additional Sensor Readings to the Datastream -- Summary -- Appendix Deciphering the ATMega Datasheet and Arduino Schematics -- Reading Datasheets -- Breaking Down a Datasheet
Understanding Component Pin-outs
Learn to easily build gadgets, gizmos, robots, and more using Arduino Written by Arduino expert Jeremy Blum, this unique book uses the popular Arduino microcontroller platform as an instrument to teach you about topics in electrical engineering, programming, and human-computer interaction. Whether you're a budding hobbyist or an engineer, you'll benefit from the perfectly paced lessons that walk you through useful, artistic, and educational exercises that gradually get more advanced. In addition to specific projects, the book shares best practices in programming and design that you can apply to your own projects. Code snippets and schematics will serve as a useful reference for future projects even after you've mastered all the topics in the book. Includes a number of projects that utilize different capabilities of the Arduino, while interfacing with external hardware Features chapters that build upon each other, tying in concepts from previous chapters to illustrate new ones Includes aspects that are accompanied by video tutorials and other multimedia content  Covers electrical engineering and programming concepts, interfacing with the world through analog and digital sensors, communicating with a computer and other devices, and internet connectivity Explains how to combine smaller topics into more complex projects Shares downloadable materials and source code for everything covered in the book Projects compatible with many official Arduino boards including Arduino Uno; Arduino Leonardo; Arduino Mega 2560; Arduino Due; Arduino Nano; Arduino Mega ADK; LilyPad Arduino and may work with Arduino-compatible boards such as Freeduino and new third party certified boards such as the Intel Galileo Exploring Arduino takes you on an adventure and provides you with exclusive access to materials not found anywhere else!
Description based on publisher supplied metadata and other sources
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2020. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries
Link Print version: Blum, Jeremy Exploring Arduino : Tools and Techniques for Engineering Wizardry New York : John Wiley & Sons, Incorporated,c2013 9781118549360
Subject Arduino (Programmable controller);Engineering -- Equipment and supplies
Electronic books
Alt Author Blum, Jeremy
Record:   Prev Next