Pub. Date:
Arduino Programming in 24 Hours, Sams Teach Yourself / Edition 1

Arduino Programming in 24 Hours, Sams Teach Yourself / Edition 1

by Richard Blum
Current price is , Original price is $29.99. You

Temporarily Out of Stock Online

Please check back later for updated availability.


In just 24 sessions of one hour or less, Sams Teach Yourself Arduino Programming in 24 Hours teaches you C programmingon Arduino, so you can start creating inspired “DIY” hardwareprojects of your own! Using this book’s straightforward, step-by-stepapproach, you’ll walk through everything from setting up yourprogramming environment to mastering C syntax and features, interfacing your Arduino to performing full-fledged prototyping.Every hands-on lesson and example builds on what you’ve alreadylearned, giving you a rock-solid foundation for real-world success!

Step-by-step instructions carefully walk you through the most common Arduino programming tasks.

Quizzes at the end of each chapter help you test your knowledge.

By the Way notes present interesting information related to the discussion.

Did You Know? tips offer advice or show you easier ways to perform tasks.

Watch Out! cautions alert you to possible problems and give you advice on how to avoid them.

Learn how to...

  • Get the right Arduino hardware and accessories for your needs
  • Download the Arduino IDE, install it, and link it to your Arduino
  • Quickly create, compile, upload, and run your first Arduino program
  • Master C syntax, decision control, strings, data structures, and functions
  • Use pointers to work with memory—and avoid common mistakes
  • Store data on your Arduino’s EEPROM or an external SD card
  • Use existing hardware libraries, or create your own
  • Send output and read input from analog devices or digital interfaces
  • Create and handle interrupts in software and hardware
  • Communicate with devices via the SPI interface and I2C protocol
  • Work with analog and digital sensors
  • Write Arduino C programs that control motors
  • Connect an LCD to your Arduino, and code the output
  • Install an Ethernet shield, configure an Ethernet connection, and write networking programs
  • Create prototyping environments, use prototyping shields, and interface electronics to your Arduino

Product Details

ISBN-13: 9780672337123
Publisher: Sams
Publication date: 09/04/2014
Series: Sams Teach Yourself Series
Pages: 432
Sales rank: 177,371
Product dimensions: 6.90(w) x 9.00(h) x 1.00(d)

About the Author

Richard Blum has worked in the IT industry for more than 25 years as a network and systems administrator, managing Microsoft, UNIX, Linux, and Novell servers for a network with more than 3,500 users. He has developed and teaches programming and Linux courses via the Internet to colleges and universities worldwide. Rich has a master’s degree in management information systems from Purdue University and is the author of several programming books, including Teach Yourself Python Programming for the Raspberry Pi in 24 Hours (coauthored with Christine Bresnahan, 2013, Sams Publishing), Linux Command Line and Shell Scripting Bible (coauthored with Christine Bresnahan, 2011, Wiley), Professional Linux Programming (coauthored with Jon Masters, 2007, Wiley), and Professional Assembly Language (2005, Wrox). When he’s not busy being a computer nerd, Rich enjoys spending time with his wife, Barbara, and two daughters, Katie Jane and Jessica.

Table of Contents

Introduction 1

HOUR 1: Introduction to the Arduino 7

What Is an Arduino? 7

Introducing the Arduino Family 11

Exploring Arduino Shields 18

Summary 20

Workshop 20

HOUR 2: Creating an Arduino Programming Environment 23

Exploring Microcontroller Internals 23

Moving Beyond Machine Code 27

Creating Arduino Programs 29

Installing the Arduino IDE 32

Summary 37

Workshop 38

HOUR 3: Using the Arduino IDE 39

Overview of the IDE 39

Walking Through the Menus 40

Exploring the Toolbar 49

Exploring the Message Area and Console Window 49

Setting Up the Arduino IDE 51

Using the Serial Monitor 52

Summary 54

Workshop 54

HOUR 4: Creating an Arduino Program 57

Building an Arduino Sketch 57

Creating Your First Sketch 59

Interfacing with Electronic Circuits 64

Summary 70

Workshop 71

HOUR 5: Learning the Basics of C 75

Working with Variables 75

Using Operators 80

Exploring Arduino Functions 83

Summary 87

Workshop 87

HOUR 6: Structured Commands 89

Working with the if Statement 89

Grouping Multiple Statements 90

Using else Statements 92

Using else if Statements 93

Understanding Comparison Conditions 95

Creating Compound Conditions 97

Negating a Condition Check 98

Expanding with the switch Statement 98

Summary 99

Workshop 100

HOUR 7: Programming Loops 103

Understanding Loops 103

Using while Loops 104

Using do-while Loops 106

Using for Loops 107

Using Arrays in Your Loops 109

Using Multiple Variables 112

Nesting Loops 112

Controlling Loops 113

Summary 116

Workshop 116

HOUR 8: Working with Strings 119

What’s a String? 119

Understanding C-Style Strings 120

Introducing the Arduino String Object 126

Manipulating String Objects 130

Summary 131

Workshop 132

HOUR 9: Implementing Data Structures 133

What’s a Data Structure? 133

Creating Data Structures 134

Using Data Structures 136

Manipulating Data Structures 138

Arrays of Structures 140

Working with Unions 142

Summary 145

Workshop 145

HOUR 10: Creating Functions 147

Basic Function Use 147

Returning a Value 150

Passing Values to Functions 152

Handling Variables in Functions 154

Calling Functions Recursively 158

Summary 160

Workshop 160

HOUR 11: Pointing to Data 163

What Is a Pointer? 163

Working with Pointers 166

Using Special Types of Pointers 167

Pointer Arithmetic 168

Strings and Pointers 171

Combining Pointers and Structures 173

Using Pointers with Functions 176

Summary 179

Workshop 179

HOUR 12: Storing Data 181

Arduino Memory Refresher 181

Taking a Closer Look at SRAM 183

Creating Dynamic Variables 185

Using Flash to Store Data 189

Using the EEPROM Memory 194

Summary 198

Workshop 198

HOUR 13: Using Libraries 201

What Is a Library? 201

Using the Standard Libraries 203

Using Contributed Libraries 206

Creating Your Own Libraries 208

Summary 214

Workshop 215

HOUR 14: Working with Digital Interfaces 219

Digital Overview 219

Using Digital Outputs 221

Experimenting with Digital Output 223

Working with Digital Inputs 226

Experimenting with Digital Input 229

Summary 231

Workshop 232

HOUR 15: Interfacing with Analog Devices 235

Analog Overview 235

Working with Analog Input 238

Modifying the Input Result 241

Using Input Mapping 242

Changing the Reference Voltage 245

Analog Output 246

Using the Analog Output 246

Summary 248

Workshop 248

HOUR 16: Adding Interrupts 251

What Are Interrupts? 251

Types of Interrupts 252

Using External Interrupts 254

Testing External Interrupts 255

Using Pin Change Interrupts 260

Working with Timer Interrupts 262

Ignoring Interrupts 264

Summary 265

Workshop 265

HOUR 17: Communicating with Devices 267

Serial Communication Protocols 267

Using the Serial Port 268

Working with the SPI Port 274

Working with I2C 277

Summary 284

Workshop 284

HOUR 18: Using Sensors 287

Interfacing with Analog Sensors 287

Working with Voltage 288

Using a Voltage-Based Sensor 293

Working with Resistance Output 295

Using a Resistance-Based Sensor 296

Using Touch Sensors 297

Working with Touch Sensors 298

Summary 300

Workshop 301

HOUR 19: Working with Motors 303

Types of Motors 303

Using DC Motors 305

Experimenting with Motors 308

Using Servo Motors 313

Summary 317

Workshop 317

HOUR 20: Using an LCD 319

What Is an LCD? 319

Interfacing with LCD Devices 321

The LiquidCrystal Library 325

The LCD Shield 329

Summary 335

Workshop 335

HOUR 21: Working with the Ethernet Shield 337

Connecting the Arduino to a Network 337

The Ethernet Shield Library 340

Writing a Network Program 349

Summary 351

Workshop 352

HOUR 22: Advanced Network Programming 355

The Web Protocol 355

Reading Sensor Data from a Web Server 361

Controlling an Arduino from the Web 364

Summary 370

Workshop 370

HOUR 23: Handling Files 373

What Is an SD Card Reader? 373

SD Cards and the Arduino 375

The SD Library 376

Interfacing with the SD Card 378

Storing Sensor Data 382

Summary 385

Workshop 385

HOUR 24: Prototyping Projects 387

Determining Project Requirements 387

Determining Interface Requirements 389

Listing Components 391

Creating a Schematic 392

Creating the Breadboard Circuit 393

Designing the Sketch 394

Writing the Sketch 395

Testing the Sketch 398

Creating a Prototype Board 399

Summary 401

Workshop 401

Index 403

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews