Learn Arduino with Olympia Circuits
Learn Arduino
  • Home
    • Get Started
    • How to Use This Site
  • Electronics
    • The Basics
    • Electricity Flows like Water
    • Electronic Components
    • The Arno Board
  • Programming
    • The Basics
    • setup and loop Blocks
    • Variables and Arrays
    • Connecting with the Pins
    • Flow Control >
      • if Statement
      • Loops
      • Delays
    • Functions
    • Serial Communication
    • USB
    • Some Thoughts
  • Projects
    • Projects 1 >
      • 1.01: Blink
      • 1.02 Blink x2
      • 1.03 Blink Faster
      • 1.04 LED Chase!
      • 1.05 Wait To Blink
      • 1.06 Blink a Little Faster Now
      • 1.07 LED Fade
      • 1.08 RGB Blink
      • 1.09 Change RGB Color with SW1
      • 1.10 Fade RGB Colors
      • 1.11 Reaction Time Game
    • Projects 2 >
      • 2.01 Hello World
      • 2.02 Talk Back
      • 2.03 ASCII Values
      • 2.04 Ski Game
      • 2.05 Demonstration of the String Object
    • Projects 3 >
      • 3.01 Read the Potentiometer
      • 3.02 ASCIIbet Soup
      • 3.03 Potentiometer sets LED Brightness
      • 3.04 Potentiometer Sets Blink Rate
      • 3.05 LED Chase, Part II
    • Projects 4 >
      • 4.01 Bringing the Piezo to Life
      • 4.02 Controlling the Piezo with a Function
      • 4.03 Piezo C Major
      • 4.04 Piezo Greensleaves
      • 4.05 Piezo Metronome
      • 4.06 Piezo as an Input
      • 4.07 Piezo as an Input 2
      • 4.08 Metronome II
      • 4.09 Piezo Playback
      • 4.10 Piezo Fireworks
      • 4.11 Piezo Mosquito
    • Projects 5 >
      • 5.01 The Phototransistor
      • 5.02 Light and Sound
      • 5.03 Light and Sound II
    • Projects 6 >
      • 6.01 EEPROM
      • 6.02 I2C Address Scan
      • 6.03 Read the I2C Temperature Sensor
      • 6.04 High Temperature Alarm
    • Projects 7 >
      • 7.01 Arno Phone Home
      • 7.02 Keyboard Alphabet
      • 7.03 Move Mouse
      • 7.04 Draw Squares
    • Special Projects >
      • Bike Light Demo
  • References
    • Arno Pin Key
    • Arno Schematic
    • Project Index

Project 2.03 ASCII Values

The Arno and the PC communicate by sending series of bits through the USB cable (look back at the discussion of variables in the Programming section for more on bits).  Each set of eight bits is called a byte.  A byte sent through a serial connection can be interpreted as being either a number or a character.  For example, the byte 01000001 equals the number 65 (0 + 26 + 0 + 0 + 0 + 0 + 0  + 20 = 65).  The number is converted to a character using a standard protocol called the ASCII table (search for “ASCII” on the internet for more information).  Going back to our example, 65 is interpreted as ‘A’.  In this project we print the ASCII table through the serial monitor. The conversion between a number and a character (also called a glyph), is simple; when we declare a char variable, the Arno interprets the variable’s value as a character.


Concepts:  ASCII, binary

Circuits: none


Select Sketch

///////////////////////////////////////////////////
//Project 203 ASCII values
void setup(){
Serial.begin(9600);
}
void loop(){
for(int k = 33; k<=126; k++){
char glyph = k;
Serial.print(k);
Serial.print( = );
Serial.println(glyph);
delay(250);
}
}
///////////////////////////////////////////////////

Back to Projects 2

Copyright Olympia Circuits LLC 2014. All Rights Reserved.