manuals.online logo
Brands
  1. Home
  2. •
  3. Brands
  4. •
  5. sparkfun
  6. •
  7. Motherboard
  8. •
  9. sparkfun ProtoShield User manual

sparkfun ProtoShield User manual



Skill Level: Beginner
ProtoShield Quickstart Guide
by Jimb0 | June 24, 2010 |
Arduino ProtoShield
You've got a project idea, you have an Arduino, now what you really need is a
platform to actually build your new project onto. You need something that will easily
connect your Arduino to all the external bits and pieces your project requires. Enter,
the Arduino ProtoShield.
What is the ProtoShield?
The ProtoShield is designed to facilitate prototyping - it allows for easy connections
between a breadboard and an Arduino. The ProtoShield provides your Arduino with
easy access to a prototyping area, two general use LEDs, access to a BlueSMiRF
socket, a general use push button, and - most important of all - the Arduino reset
button. There's also an option of sticking a mini, self-adhesive breadboard onto the
ProtoShield - keeping it reusable for all of your future projects.
The ProtoShield is one of many Arduino shields. Shields are designed to sit on top of
an Arduino, extending the functionality of the popular microprocessor platform.
How do I assemble it?
The ProtoShield is shipped in kit form - as a box of parts and a PCB. We've written a
step-by-step assembly tutorial to guide you in building your new shield. Don't worry if
you've never soldered before, this is a great kit for beginners!
How do I use it?
Well, that's mostly up to you! There are a few things I will point out, though:
Using the LEDs
As the assembly guide points out, you have to wire the LEDs to whichever Arduino
pin you'd like. Once you've done that, you can program your Arduino to run the ever-
important 'Blink' sketch (in Arduino, go to File->Examples->Digital->Blink):
int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop()
{
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
}
Make sure you change the value of 'ledPin' to whatever digital pin your LED is
connected to; in the above example it is tied to pin 13. That sketch should turn the
LED on for a second, off for a second, on for a second, off for a second, and so on.
Note that both LEDs have one leg tied to ground through a 330Ωresistor, and the
other leg connected to either JC2 or JC3 (and then to whatever pin you have them
connected to on your Arduino). This means that you have to 'digitalWrite' the pin
HIGH to turn the LED on, and LOW to turn it off.
Sidenote: The 330Ωresistor is there to limit the current that is allowed to go through
the LED. This is a necessity for just about every LED, as they are prone to blow up if
supplied current that is over their maximum rating (about 20mA for these LEDs).
Using the Button
As with the LEDs, before you can use the button you have to connect it to a digital or
analog pin of your choice. For a perfect example of how to use the button, check out
the 'Button' example (in Arduino go to File->Examples->Digital->Button):
const int buttonPin = 2;
const int ledPin = 13;
int buttonState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop(){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
}
else {
digitalWrite(ledPin, LOW);
}
}
Make sure you change 'buttonPin' and 'ledPin' according to how you've wired them,
the example assumes they're connected to digital pins 2 and 13, respectively.
The button on the ProtoShield is 'pulled high', meaning one side of the button is
connected, through a resistor, to +5V and also to 'JC1' (which should then be
connected to an Arduino pin of your choice). The other end of the button is simply
connected to ground. This means that when the button is pressed it will read as
LOW, otherwise it will be HIGH. In the example above, the LED will be on unless the
button is being pressed.
Using the BlueSMiRF port
Bluetooth is a really simple, and effective way to add wireless communication to your
project. The BlueSMiRF Gold works as, essentially, a serial cable minus the wires.
Only four connections are required to communicate with the BlueSMiRF - 5V, GND,
RX and TX.
When you connect the BlueSMiRF to your ProtoShield, take care to match the 'VCC',
'GND', 'TX-O', and 'RX-I' labels of the BlueSMiRF with the '5V', 'GND', 'D0', and 'D1'
labels of the shield.
You can use the standard 'Serial.print' and 'Serial.read' commands to send and
receive serial data. Here's an example that builds on the previous code, adding serial
communication:
intledPin=13;
intbuttonPin=2;
intbuttonState=LOW;
intoldButtonState=HIGH;
charserInput;
voidsetup()
{
pinMode(ledPin,OUTPUT);
pinMode(buttonPin,INPUT);
digitalWrite(ledPin,HIGH);
Serial.begin(115200);
}
voidloop()
{
buttonState=digitalRead(buttonPin);
if(Serial.available()>0)
{
serInput=Serial.read();
Serial.println("Miny,Moe.");
}
if(buttonState!=oldButtonState)
{
if(buttonState==HIGH)
{
digitalWrite(ledPin,HIGH);
Serial.print("Meeny,");
}
else
{
digitalWrite(ledPin,LOW);
Serial.print("Eeny,");
}
}
oldButtonState=buttonState;
}
This example will actually work with both the standard USB serial connection, or a
BlueSMiRF. Give it a try! Note that the baud rate is set to 115200 bps, this is the
default baud rate of the BlueSMiRF. Pressing the button will turn the LED off and
send "Eeny, " out the serial port. Releasing the button will turn the LED back on and
print "Meeny, ". Sending any character to the Arduino, over a serial connection, will
print "Miny, Moe.".
If you want to communicate between your computer and the BlueSMiRF, you will
need a bluetooth dongle of some sort. Many options exist to add bluetooth to your
computer (if it doesn't already have it). For beginners, I'd recommend the Bluetooth
USB module; another, more advanced, option is the USB BlueDongle.
How have others used the shield?
The ProtoShield can be used to prototype just about any Arduino project you could
imagine. As examples of the huge variety of projects the shield has been used for,
check out these links:
• Arduino USB Host
• Ultrasonic Range Finder Tape measure
• Joystick Control of Servo Motors
•4-BitMaze
• Temperature Monitor/Controller
• Weather Station Receiver
• Basic 555 Timer
Do you have an example you'd like posted here? Drop us an email!
Schematic and PCB Layout
For technical information including the schematic and design files, please see the
product page. You may also want to add/review the comments on that page or do a
Google search for more example projects that use the ProtoShield.
Have a suggestion for how we can improve this quickstart guide? Concepts not
explained clearly? Need more example code? Please let us know. You can leave a
comment below or email us spar[email protected]. Also let us know if this is the most
awesome Quickstart guide you have ever encountered and we will stop trying to
improve it.
2
/
12
/
201
5
htt
p
s://www.s
p
arkfun.com/tutorials/191

This manual suits for next models

1

Other sparkfun Motherboard manuals

sparkfun MPR121 Technical document

sparkfun

sparkfun MPR121 Technical document

sparkfun DEV-16138 Technical document

sparkfun

sparkfun DEV-16138 Technical document

sparkfun Qwiic Shield for Thing Plus Technical document

sparkfun

sparkfun Qwiic Shield for Thing Plus Technical document

sparkfun Qwiic SHIM for Raspberry Pi Technical document

sparkfun

sparkfun Qwiic SHIM for Raspberry Pi Technical document

sparkfun MAG3110 Technical document

sparkfun

sparkfun MAG3110 Technical document

sparkfun ESP8266 Technical document

sparkfun

sparkfun ESP8266 Technical document

sparkfun XBee Shield Technical document

sparkfun

sparkfun XBee Shield Technical document

sparkfun gator:particle Technical document

sparkfun

sparkfun gator:particle Technical document

sparkfun Power Delivery Board - USB-C (Qwiic) Technical document

sparkfun

sparkfun Power Delivery Board - USB-C (Qwiic) Technical document

sparkfun Qwiic Shield for Teensy Technical document

sparkfun

sparkfun Qwiic Shield for Teensy Technical document

sparkfun PRT-13144 Technical document

sparkfun

sparkfun PRT-13144 Technical document

sparkfun BeagleBone Black Proto Cape Technical document

sparkfun

sparkfun BeagleBone Black Proto Cape Technical document

sparkfun gator:bit v2 Technical document

sparkfun

sparkfun gator:bit v2 Technical document

sparkfun Qwiic 12-Bit ADC Technical document

sparkfun

sparkfun Qwiic 12-Bit ADC Technical document

sparkfun nRF52832 Technical document

sparkfun

sparkfun nRF52832 Technical document

sparkfun FreeSoC2 Technical document

sparkfun

sparkfun FreeSoC2 Technical document

sparkfun Raspberry gPIo User manual

sparkfun

sparkfun Raspberry gPIo User manual

sparkfun KIT-14173 Technical document

sparkfun

sparkfun KIT-14173 Technical document

sparkfun DEV-15046 User manual

sparkfun

sparkfun DEV-15046 User manual

sparkfun Simon Says User manual

sparkfun

sparkfun Simon Says User manual

sparkfun DEV-14044 Technical document

sparkfun

sparkfun DEV-14044 Technical document

sparkfun RV-8803 Technical document

sparkfun

sparkfun RV-8803 Technical document

sparkfun Pi Servo Hat Technical document

sparkfun

sparkfun Pi Servo Hat Technical document

sparkfun Pro Micro Technical document

sparkfun

sparkfun Pro Micro Technical document

Popular Motherboard manuals by other brands

ASROCK ZH77 Pro3 user manual

ASROCK

ASROCK ZH77 Pro3 user manual

IBASE Technology MB870 user manual

IBASE Technology

IBASE Technology MB870 user manual

Rohm TO-263-7L user guide

Rohm

Rohm TO-263-7L user guide

Fujitsu Flash-64P-M01 manual

Fujitsu

Fujitsu Flash-64P-M01 manual

IBASE Technology MB970 user manual

IBASE Technology

IBASE Technology MB970 user manual

Shuttle AK35GT manual

Shuttle

Shuttle AK35GT manual

ECS A750GM-M manual

ECS

ECS A750GM-M manual

NXP Semiconductors UM11623 manual

NXP Semiconductors

NXP Semiconductors UM11623 manual

EPC EPC9048 quick start guide

EPC

EPC EPC9048 quick start guide

Linear Technology DC1668B-C Demo Manual

Linear Technology

Linear Technology DC1668B-C Demo Manual

MSI X299-A PRO quick start

MSI

MSI X299-A PRO quick start

Linear Technology DC1659A quick start guide

Linear Technology

Linear Technology DC1659A quick start guide

Pure Photonics PPEB700 product manual

Pure Photonics

Pure Photonics PPEB700 product manual

MSI G41M-P33 series user manual

MSI

MSI G41M-P33 series user manual

MSI X399 GAMING PRO CARBON AC manual

MSI

MSI X399 GAMING PRO CARBON AC manual

Asus P7P55D-E EVO user manual

Asus

Asus P7P55D-E EVO user manual

Avnet PicoZed FMC V2 user guide

Avnet

Avnet PicoZed FMC V2 user guide

Biostar GF8100 M2+ TE Setup manual

Biostar

Biostar GF8100 M2+ TE Setup manual

manuals.online logo
manuals.online logoBrands
  • About & Mission
  • Contact us
  • Privacy Policy
  • Terms and Conditions

Copyright 2025 Manuals.Online. All Rights Reserved.