Arduino Programming in 24 Hours, Sams Teach Yourself

Arduino Programming in 24 Hours, Sams Teach Yourself

By: Richard Blum (author)Paperback

Up to 2 WeeksUsually despatched within 2 weeks

£15.39 RRP £21.99  You save £6.60 (30%) & FREE Saver Delivery on orders over £20


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

About 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.


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

Product Details

  • ISBN13: 9780672337123
  • Format: Paperback
  • Number Of Pages: 432
  • ID: 9780672337123
  • weight: 680
  • ISBN10: 0672337126

Delivery Information

  • Saver Delivery: Yes
  • 1st Class Delivery: Yes
  • Courier Delivery: Yes
  • Store Delivery: Yes

Prices are for internet purchases only. Prices and availability in WHSmith Stores may vary significantly