Skip to Content
Making Things Talk
book

Making Things Talk

by Tom Igoe
September 2007
Beginner to intermediate
432 pages
17h 48m
English
O'Reilly Media, Inc.
Content preview from Making Things Talk
APPENDIX C 371
Simple Serial
Language: Arduino/Wiring
Listens for an incoming serial byte, adds one to the byte
and sends the result back out serially. Also blinks an LED
on pin 13 every half second.
int LEDPin = 13; // you can use any digital I/O pin you want
int inByte = 0; // variable to hold incoming serial data
long blinkTimer = 0; // keeps track of how long since the LED
// was last turned off
int blinkInterval = 1000; // a full second from on to off to on again
void setup() {
pinMode(LEDPin, OUTPUT); // set pin 13 to be an output
Serial.begin(9600); // configure the serial port for 9600 bps
// data rate.
}
void loop() {
// if there are any incoming serial bytes available to read:
if (Serial.available() > 0) {
// then read the first available byte:
inByte = Serial.read();
// and add one to it, then send the result out:
Serial.print(inByte+1, BYTE);
}
// Meanwhile, keep blinking the LED.
// after a quarter of a second, turn the LED on:
if (millis() - blinkTimer >= blinkInterval / 2) {
digitalWrite(LEDPin, HIGH); // turn the LED on pin 13 on
}
// after a half a second, turn the LED off and reset the timer:
if (millis() - blinkTimer >= blinkInterval) {
digitalWrite(LEDPin, LOW); // turn the LED off
blinkTimer = millis();
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Making Things Talk, 2nd Edition

Making Things Talk, 2nd Edition

Tom Igoe

Publisher Resources

ISBN: 9780596510510Catalog PageErrata