Add Examples

Added examples from https://www.sparkfun.com/tutorials/203
This commit is contained in:
Mike S 2014-01-15 15:30:31 -07:00
parent ff37da619a
commit 5c75cbc046
54 changed files with 1821 additions and 1197 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,45 @@
/*
Simon Experiments #1
Blink
Pete Lewis
Sparkfun Electronics
10/13/2010
This example code is in the public domain.
//////////////////////////////////////////////////
SETUP & UPLOAD INSTRUCTIONS
1. Select "Tools" from the upper window menu.
2. Select "Serial Port" and then select the COM PORT that your FTDI BASIC is connected on. (It most likely will be the COM 2 or higher).
3. Select "Tools", then "Board", then "LilyPad Arduino w/ ATmega328"
4. Click on the "upload button" - it looks like a box with an arrow to the right.
//////////////////////////////////////////////////
*/
int ledPin = 3; // The simon board has 4 LEDs on it.
// For this example, we're just going to use one.
// The other LEDs are on pins 3,5,10 and 13.
// For fun, try switching "ledPin" to another LED and see what happens!
// The setup() funtion runs once, when the sketch starts
void setup() {
// initialize the digital pin as an output:
pinMode(ledPin, OUTPUT);
}
// the loop() function runs over and over again,
// as long as the Arduino has power
void loop()
{
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
delay(1000); // wait for a second
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,59 @@
/*
Simon Experiments #1
Blink
Pete Lewis
Sparkfun Electronics
10/13/2010
//////////////////////////////////////////////////
SETUP & UPLOAD INSTRUCTIONS
1. Select "Tools" from the upper window menu.
2. Select "Serial Port" and then select the COM PORT that your FTDI BASIC is connected on. (It most likely will be the COM 2 or higher).
3. Select "Tools", then "Board", then "LilyPad Arduino w/ ATmega328"
4. Click on the "upload button" - it looks like a box with an arrow to the right.
//////////////////////////////////////////////////
*/
#include "WProgram.h"
void setup();
void loop();
int ledPin = 3; // The simon board has 4 LEDs on it.
// For this example, we're just going to use one.
// The other LEDs are on pins 3,5,10 and 13.
// For fun, try switching "ledPin" to another LED and see what happens!
// The setup() funtion runs once, when the sketch starts
void setup() {
// initialize the digital pin as an output:
pinMode(ledPin, OUTPUT);
}
// the loop() function runs over and over again,
// as long as the Arduino has power
void loop()
{
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
delay(1000); // wait for a second
}
int main(void)
{
init();
setup();
for (;;)
loop();
return 0;
}

View File

@ -0,0 +1 @@
:00000001FF

Binary file not shown.

View File

@ -0,0 +1,60 @@
:100000000C9461000C947E000C947E000C947E0095
:100010000C947E000C947E000C947E000C947E0068
:100020000C947E000C947E000C947E000C947E0058
:100030000C947E000C947E000C947E000C947E0048
:100040000C94A4000C947E000C947E000C947E0012
:100050000C947E000C947E000C947E000C947E0028
:100060000C947E000C947E00000000002400270009
:100070002A0000000000250028002B0000000000DE
:1000800023002600290004040404040404040202DA
:100090000202020203030303030301020408102007
:1000A0004080010204081020010204081020000012
:1000B0000007000201000003040600000000000029
:1000C000000011241FBECFEFD8E0DEBFCDBF11E08E
:1000D000A0E0B1E0E6E9F3E002C005900D92A230A5
:1000E000B107D9F711E0A2E0B1E001C01D92AB3039
:1000F000B107E1F70E949D000C94C9010C94000027
:100100008091000161E00E947C0168EE73E080E074
:1001100090E00E94F8008091000160E00E947C0164
:1001200068EE73E080E090E00E94F800089580910E
:10013000000161E00E945C0108950E9422010E947A
:1001400097000E948000FDCF1F920F920FB60F9272
:1001500011242F933F934F935F936F937F938F93CC
:100160009F93AF93BF932091060130910701409177
:1001700008015091090170910A01DA01C901029642
:10018000A11DB11D672F6A5F6D3730F06D57DA0121
:10019000C9010396A11DB11D60930A018093060158
:1001A00090930701A0930801B09309018091020187
:1001B00090910301A0910401B09105010196A11D48
:1001C000B11D8093020190930301A0930401B093A9
:1001D0000501BF91AF919F918F917F916F915F9139
:1001E0004F913F912F910F900FBE0F901F90189538
:1001F000EF92FF920F931F937B018C018FB7F894BE
:100200004091060150910701609108017091090128
:100210008FBF2FB7F8948091060190910701A091AC
:100220000801B09109012FBF841B950BA60BB70BDA
:10023000E816F9060A071B0760F71F910F91FF9058
:10024000EF900895789484B5826084BD84B5816010
:1002500084BD85B5826085BD85B5816085BDEEE6CE
:10026000F0E0808181608083E1E8F0E0808182605D
:100270008083808181608083E0E8F0E0808181601C
:100280008083E1EBF0E0808184608083E0EBF0E04C
:10029000808181608083EAE7F0E0808184608083F0
:1002A000808182608083808181608083808180689A
:1002B00080831092C1000895282F30E0C90186562E
:1002C0009F4FFC0194912A573F4FF9018491882355
:1002D00091F0E82FF0E0EE0FFF1FE859FF4FA591D6
:1002E000B491662329F48C91909589238C93089579
:1002F0008C91892B8C930895482F50E0CA01825528
:100300009F4FFC012491CA0186569F4FFC01949196
:100310004A575F4FFA0134913323D1F1222331F14F
:10032000233021F4809180008F7705C0243031F490
:10033000809180008F7D8093800018C0213019F457
:1003400084B58F7704C0223021F484B58F7D84BDBD
:100350000DC0263021F48091B0008F7705C0273082
:1003600029F48091B0008F7D8093B000E32FF0E0FE
:10037000EE0FFF1FEE58FF4FA591B491662329F4AD
:100380008C91909589238C9308958C91892B8C93D3
:060390000895F894FFCF70
:02039600030062
:00000001FF

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,69 @@
/*
Simon Experiments #2
Button
Pete Lewis
Sparkfun Electronics
10/13/2010
This example code is in the public domain.
//////////////////////////////////////////////////
SETUP & UPLOAD INSTRUCTIONS
1. Select "Tools" from the upper window menu.
2. Select "Serial Port" and then select the COM PORT that your FTDI BASIC is connected on. (It most likely will be the COM 2 or higher).
3. Select "Tools", then "Board", then "LilyPad Arduino w/ ATmega328"
4. Click on the "upload button" - it looks like a box with an arrow to the right.
//////////////////////////////////////////////////
*/
int ledPin = 3; // The simon board has 4 LEDs on it.
// For this example, we're just going to use one.
// The other LEDs are on pins 3,5,10 and 13.
// For fun, try switching "ledPin" to another pin number and see what happens!
int buttonPin = 2; // The simon board has 4 BUTTONS on it.
// For this example, we're just going to use one.
// The other BUTTONS are on pins 2,6,9 and 12.
// For fun, try switching "buttonPin" to another pin number and see what happens!
int button_state; // This variable will be used to "store" the state of the button.
// It will allow us to know whether the button is pressed or not.
// The setup() funtion runs once, when the sketch starts
void setup() {
// initialize the led pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the internal pull-up on the button pin:
digitalWrite(buttonPin, HIGH);
// initialize the button pin as an input:
pinMode(buttonPin, INPUT);
}
// the loop() function runs over and over again,
// as long as the Arduino has power
void loop()
{
// Using the digitalRead() function, we can read the state of a pin, and know whether or not it is Logic HIGH or Logic LOW.
// When you press the button, you are actually causing an electrical connection between the pin on the micro (buttonPin) and Logic LOW (aka GND).
// Every time the loop starts over it will first set the variable "button_state" to the state of the pin.
// It is refreshing every time the loop starts over.
int button_state = digitalRead(buttonPin);
// The second step in the loop is to actually do something with this variable.
// In this next "if statement" we are going to decide to do something. Here we are going to turn on the ledPin for a second.
if(button_state == 1){
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
}
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,80 @@
/*
Simon Experiments #2
Button
Pete Lewis
Sparkfun Electronics
10/13/2010
//////////////////////////////////////////////////
SETUP & UPLOAD INSTRUCTIONS
1. Select "Tools" from the upper window menu.
2. Select "Serial Port" and then select the COM PORT that your FTDI BASIC is connected on. (It most likely will be the COM 2 or higher).
3. Select "Tools", then "Board", then "LilyPad Arduino w/ ATmega328"
4. Click on the "upload button" - it looks like a box with an arrow to the right.
//////////////////////////////////////////////////
*/
#include "WProgram.h"
void setup();
void loop();
int ledPin = 3; // The simon board has 4 LEDs on it.
// For this example, we're just going to use one.
// The other LEDs are on pins 3,5,10 and 13.
// For fun, try switching "ledPin" to another pin number and see what happens!
int buttonPin = 2; // The simon board has 4 BUTTONS on it.
// For this example, we're just going to use one.
// The other BUTTONS are on pins 2,6,9 and 12.
// For fun, try switching "buttonPin" to another pin number and see what happens!
int button_state; // This variable will be used to "store" the state of the button.
// It will allow us to know whether the button is pressed or not.
// The setup() funtion runs once, when the sketch starts
void setup() {
// initialize the led pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the button pin as an input:
pinMode(buttonPin, INPUT);
}
// the loop() function runs over and over again,
// as long as the Arduino has power
void loop()
{
// Using the digitalRead() function, we can read the state of a pin, and know whether or not it is Logic HIGH or Logic LOW.
// When you press the button, you are actually causing an electrical connection between the pin on the micro (buttonPin) and Logic HIGH (aka power).
// Every time the loop starts over it will first set the variable "button_state" to the state of the pin.
// It is refreshing every time the loop starts over.
int button_state = digitalRead(buttonPin);
// The second step in the loop is to actually do something with this variable.
// In this next "if statement" we are going to decide to do something. Here we are going to turn on the ledPin for a second.
if(button_state == 1){
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
}
}
int main(void)
{
init();
setup();
for (;;)
loop();
return 0;
}

View File

@ -0,0 +1 @@
:00000001FF

Binary file not shown.

View File

@ -0,0 +1,70 @@
:100000000C9461000C947E000C947E000C947E0095
:100010000C947E000C947E000C947E000C947E0068
:100020000C947E000C947E000C947E000C947E0058
:100030000C947E000C947E000C947E000C947E0048
:100040000C94A9000C947E000C947E000C947E000D
:100050000C947E000C947E000C947E000C947E0028
:100060000C947E000C947E00000000002400270009
:100070002A0000000000250028002B0000000000DE
:1000800023002600290004040404040404040202DA
:100090000202020203030303030301020408102007
:1000A0004080010204081020010204081020000012
:1000B0000007000201000003040600000000000029
:1000C000000011241FBECFEFD8E0DEBFCDBF11E08E
:1000D000A0E0B1E0EEE3F4E002C005900D92A430A0
:1000E000B107D9F711E0A4E0B1E001C01D92AD3035
:1000F000B107E1F70E94A2000C941D020C940000CD
:10010000809102010E94CE01019781F4809100014B
:1001100061E00E94810168EE73E080E090E00E945F
:10012000FD008091000160E00E94810108958091AE
:10013000000161E00E9461018091020160E00E9483
:10014000610108950E9427010E9497000E9480008B
:10015000FDCF1F920F920FB60F9211242F933F9352
:100160004F935F936F937F938F939F93AF93BF93BF
:10017000209108013091090140910A0150910B0131
:1001800070910C01DA01C9010296A11DB11D672F02
:100190006A5F6D3730F06D57DA01C9010396A11D12
:1001A000B11D60930C018093080190930901A09305
:1001B0000A01B0930B018091040190910501A09177
:1001C0000601B09107010196A11DB11D80930401A4
:1001D00090930501A0930601B0930701BF91AF91E1
:1001E0009F918F917F916F915F914F913F912F914F
:1001F0000F900FBE0F901F901895EF92FF920F93E4
:100200001F937B018C018FB7F894409108015091A6
:10021000090160910A0170910B018FBF2FB7F8940B
:100220008091080190910901A0910A01B0910B0100
:100230002FBF841B950BA60BB70BE816F9060A0710
:100240001B0760F71F910F91FF90EF90089578942E
:1002500084B5826084BD84B5816084BD85B58260CB
:1002600085BD85B5816085BDEEE6F0E08081816069
:100270008083E1E8F0E0808182608083808181601A
:100280008083E0E8F0E0808181608083E1EBF0E052
:10029000808184608083E0EBF0E0808181608083F6
:1002A000EAE7F0E0808184608083808182608083DF
:1002B0008081816080838081806880831092C1000A
:1002C0000895282F30E0C90186569F4FFC01949174
:1002D0002A573F4FF9018491882391F0E82FF0E0ED
:1002E000EE0FFF1FE859FF4FA591B491662329F443
:1002F0008C91909589238C9308958C91892B8C9364
:100300000895482F50E0CA0182559F4FFC01249167
:10031000CA0186569F4FFC0194914A575F4FFA01DC
:1003200034913323D1F1222331F1233021F4809110
:1003300080008F7705C0243031F4809180008F7D5C
:100340008093800018C0213019F484B58F7704C0E1
:10035000223021F484B58F7D84BD0DC0263021F478
:100360008091B0008F7705C0273029F48091B000CC
:100370008F7D8093B000E32FF0E0EE0FFF1FEE586B
:10038000FF4FA591B491662329F48C919095892310
:100390008C9308958C91892B8C930895682F70E02D
:1003A000CB0182559F4FFC012491CB0186569F4F74
:1003B000FC0144916A577F4FFB019491992319F4F2
:1003C00020E030E038C0222331F1233021F4809145
:1003D00080008F7705C0243031F4809180008F7DBC
:1003E0008093800018C0213019F484B58F7704C041
:1003F000223021F484B58F7D84BD0DC0263021F4D8
:100400008091B0008F7705C0273029F48091B0002B
:100410008F7D8093B000892F90E0880F991F8458BA
:100420009F4FFC01A591B4918C9120E030E0842392
:0E04300011F021E030E0C9010895F894FFCFEB
:04043E0003000200B5
:00000001FF

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,13 @@
int ledPin = 3; // The simon board has 4 LEDs on it.
// For this example, we're just going to use one.
// The other LEDs are on pins 3,5,10 and 13.
// For fun, try switching "ledPin" to another pin number and see what happens!
int buttonPin = 2; // The simon board has 4 BUTTONS on it.
// For this example, we're just going to use one.
// The other BUTTONS are on pins 2,6,9 and 12.
// For fun, try switching "buttonPin" to another pin number and see what happens!
int button_state; // This variable will be used to "store" the state of the button.
// It will allow us to know whether the button is pressed or not.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,69 @@
/*
Simon Experiments #2
Buzzer
Pete Lewis
Sparkfun Electronics
10/13/2010
This example code is in the public domain.
*/
int ledPin = 3; // LEDs are on pins 3,5,10 and 13.
int buttonPin = 2; // BUTTONS are on pins 2,6,9 and 12.
int button_state; // This variable will be used to "store" the state of the button.
/// These next two definitions are setting up the buzzer pins.
/// By sending these HIGH/LOW we can create a sound from the buzzer.
int buzzer_1 = 4;
int buzzer_2 = 7;
void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(buttonPin, HIGH);
pinMode(buttonPin, INPUT);
pinMode(buzzer_1, OUTPUT);
pinMode(buzzer_2, OUTPUT);
digitalWrite(buzzer_1, LOW); // buzzer_1 will toggle HIGH/LOW to create the sound - see buzz() function below.
digitalWrite(buzzer_2, LOW); // buzzer_2 will toggle as well (to create more volume).
}
void loop()
{
int button_state = digitalRead(buttonPin);
if(button_state == 1){
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
// Call the "buzz()" funtion. See below to know what this does.
buzz();
}
}
//////////////////////////////////////////////////////////////////////////////////////
void buzz(){
/// this function makes the buzzer pin move and crease a sound.
/// By writing the pin HIGH/LOW in a pattern we can create a frequency.
/// this FOR LOOP is used to repeat the pattern and let us hear the note for second.
for(int i = 0; i < 100; i++){
digitalWrite(buzzer_1, HIGH);
digitalWrite(buzzer_2, LOW);
delay(1);
digitalWrite(buzzer_1, LOW);
digitalWrite(buzzer_2, HIGH);
delay(1);
}
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,79 @@
/*
Simon Experiments #2
Buzzer
Pete Lewis
Sparkfun Electronics
10/13/2010
*/
#include "WProgram.h"
void setup();
void loop();
void buzz();
int ledPin = 3; // LEDs are on pins 3,5,10 and 13.
int buttonPin = 2; // BUTTONS are on pins 2,6,9 and 12.
int button_state; // This variable will be used to "store" the state of the button.
/// These next two definitions are setting up the buzzer pins.
/// By sending these HIGH/LOW we can create a sound from the buzzer.
int buzzer_1 = 4;
int buzzer_2 = 7;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
pinMode(buzzer_1, OUTPUT);
pinMode(buzzer_2, OUTPUT);
digitalWrite(buzzer_1, LOW); // buzzer_1 will toggle HIGH/LOW to create the sound - see buzz() function below.
digitalWrite(buzzer_2, LOW); // buzzer_2 will always stay low.
}
void loop()
{
int button_state = digitalRead(buttonPin);
if(button_state == 1){
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
// Call the "buzz()" funtion. See below to know what this does.
buzz();
}
}
//////////////////////////////////////////////////////////////////////////////////////
void buzz(){
/// this function makes the buzzer pin move and crease a sound.
/// By writing the pin HIGH/LOW in a pattern we can create a frequency.
/// this FOR LOOP is used to repeat the pattern and let us hear the note for second.
for(int i = 0; i < 100; i++){
digitalWrite(buzzer_1, HIGH);
delay(1);
digitalWrite(buzzer_1, LOW);
delay(1);
}
}
int main(void)
{
init();
setup();
for (;;)
loop();
return 0;
}

View File

@ -0,0 +1 @@
:00000001FF

Binary file not shown.

View File

@ -0,0 +1,77 @@
:100000000C9461000C947E000C947E000C947E0095
:100010000C947E000C947E000C947E000C947E0068
:100020000C947E000C947E000C947E000C947E0058
:100030000C947E000C947E000C947E000C947E0048
:100040000C94E0000C947E000C947E000C947E00D6
:100050000C947E000C947E000C947E000C947E0028
:100060000C947E000C947E00000000002400270009
:100070002A0000000000250028002B0000000000DE
:1000800023002600290004040404040404040202DA
:100090000202020203030303030301020408102007
:1000A0004080010204081020010204081020000012
:1000B0000007000201000003040600000000000029
:1000C000000011241FBECFEFD8E0DEBFCDBF11E08E
:1000D000A0E0B1E0ECEAF4E002C005900D92A83097
:1000E000B107D9F711E0A8E0B1E001C01D92A1313C
:1000F000B107E1F70E94D9000C9454020C9400005F
:10010000CF93DF93C0E0D0E08091040161E00E94D2
:10011000B80161E070E080E090E00E9434018091DD
:10012000040160E00E94B80161E070E080E090E0CE
:100130000E9434012196C436D10531F7DF91CF9169
:100140000895809102010E940502019791F4809127
:10015000000161E00E94B80168EE73E080E090E089
:100160000E9434018091000160E00E94B8010E9469
:10017000800008958091000161E00E9498018091C3
:10018000020160E00E9498018091040161E00E94F8
:1001900098018091060161E00E949801809104011C
:1001A00060E00E94B8018091060160E00E94B80101
:1001B00008950E945E010E94BA000E94A100FDCF36
:1001C0001F920F920FB60F9211242F933F934F93CC
:1001D0005F936F937F938F939F93AF93BF93209180
:1001E0000C0130910D0140910E0150910F01709161
:1001F0001001DA01C9010296A11DB11D672F6A5FC6
:100200006D3730F06D57DA01C9010396A11DB11D9C
:100210006093100180930C0190930D01A0930E0147
:10022000B0930F018091080190910901A0910A01FA
:10023000B0910B010196A11DB11D8093080190930F
:100240000901A0930A01B0930B01BF91AF919F9157
:100250008F917F916F915F914F913F912F910F906F
:100260000FBE0F901F901895EF92FF920F931F9360
:100270007B018C018FB7F89440910C0150910D01D6
:1002800060910E0170910F018FBF2FB7F89480918C
:100290000C0190910D01A0910E01B0910F012FBFA3
:1002A000841B950BA60BB70BE816F9060A071B076C
:1002B00060F71F910F91FF90EF900895789484B5A7
:1002C000826084BD84B5816084BD85B5826085BD52
:1002D00085B5816085BDEEE6F0E080818160808338
:1002E000E1E8F0E0808182608083808181608083AA
:1002F000E0E8F0E0808181608083E1EBF0E08081E4
:1003000084608083E0EBF0E0808181608083EAE7B5
:10031000F0E080818460808380818260808380813E
:10032000816080838081806880831092C1000895FD
:10033000282F30E0C90186569F4FFC0194912A571F
:100340003F4FF9018491882391F0E82FF0E0EE0F00
:10035000FF1FE859FF4FA591B491662329F48C91B2
:10036000909589238C9308958C91892B8C93089573
:10037000482F50E0CA0182559F4FFC012491CA01C9
:1003800086569F4FFC0194914A575F4FFA01349172
:100390003323D1F1222331F1233021F480918000E5
:1003A0008F7705C0243031F4809180008F7D809359
:1003B000800018C0213019F484B58F7704C0223032
:1003C00021F484B58F7D84BD0DC0263021F4809149
:1003D000B0008F7705C0273029F48091B0008F7D61
:1003E0008093B000E32FF0E0EE0FFF1FEE58FF4FB9
:1003F000A591B491662329F48C91909589238C93CF
:1004000008958C91892B8C930895682F70E0CB010F
:1004100082559F4FFC012491CB0186569F4FFC01D2
:1004200044916A577F4FFB019491992319F420E07E
:1004300030E038C0222331F1233021F48091800054
:100440008F7705C0243031F4809180008F7D8093B8
:10045000800018C0213019F484B58F7704C0223091
:1004600021F484B58F7D84BD0DC0263021F48091A8
:10047000B0008F7705C0273029F48091B0008F7DC0
:100480008093B000892F90E0880F991F84589F4F68
:10049000FC01A591B4918C9120E030E0842311F00F
:0C04A00021E030E0C9010895F894FFCF7E
:0804AC00030002000400070038
:00000001FF

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.