arduino-0017-linux-x64
This commit is contained in:
		
							parent
							
								
									ed785c5798
								
							
						
					
					
						commit
						ddf58ffb08
					
				
					 436 changed files with 62981 additions and 0 deletions
				
			
		
							
								
								
									
										40
									
								
								arduino-0017-linux-x64/examples/Digital/Blink/Blink.pde
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								arduino-0017-linux-x64/examples/Digital/Blink/Blink.pde
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,40 @@
 | 
			
		|||
/*
 | 
			
		||||
  Blink
 | 
			
		||||
 
 | 
			
		||||
 Turns on an LED on for one second, then off for one second, repeatedly.
 | 
			
		||||
 
 | 
			
		||||
 The circuit:
 | 
			
		||||
 * LED connected from digital pin 13 to ground.
 | 
			
		||||
 
 | 
			
		||||
 * Note: On most Arduino boards, there is already an LED on the board
 | 
			
		||||
 connected to pin 13, so you don't need any extra components for this example.
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 Created 1 June 2005
 | 
			
		||||
 By David Cuartielles
 | 
			
		||||
 
 | 
			
		||||
 http://arduino.cc/en/Tutorial/Blink
 | 
			
		||||
 
 | 
			
		||||
 based on an orginal by H. Barragan for the Wiring i/o board
 | 
			
		||||
 
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
int ledPin =  13;    // LED connected to digital pin 13
 | 
			
		||||
 | 
			
		||||
// The setup() method runs once, when the sketch starts
 | 
			
		||||
 | 
			
		||||
void setup()   {                
 | 
			
		||||
  // initialize the digital pin as an output:
 | 
			
		||||
  pinMode(ledPin, OUTPUT);     
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// the loop() method 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
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,58 @@
 | 
			
		|||
/* Blink without Delay
 | 
			
		||||
 
 | 
			
		||||
 Turns on and off a light emitting diode(LED) connected to a digital  
 | 
			
		||||
 pin, without using the delay() function.  This means that other code
 | 
			
		||||
 can run at the same time without being interrupted by the LED code.
 | 
			
		||||
 
 | 
			
		||||
  The circuit:
 | 
			
		||||
 * LED attached from pin 13 to ground.
 | 
			
		||||
 * Note: on most Arduinos, there is already an LED on the board
 | 
			
		||||
 that's attached to pin 13, so no hardware is needed for this example.
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 created 2005
 | 
			
		||||
 by David A. Mellis
 | 
			
		||||
 modified 17 Jun 2009
 | 
			
		||||
 by Tom Igoe
 | 
			
		||||
 
 | 
			
		||||
 http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// constants won't change. Used here to 
 | 
			
		||||
// set pin numbers:
 | 
			
		||||
const int ledPin =  13;      // the number of the LED pin
 | 
			
		||||
 | 
			
		||||
// Variables will change:
 | 
			
		||||
int ledState = LOW;             // ledState used to set the LED
 | 
			
		||||
long previousMillis = 0;        // will store last time LED was updated
 | 
			
		||||
 | 
			
		||||
// the follow variables is a long because the time, measured in miliseconds,
 | 
			
		||||
// will quickly become a bigger number than can be stored in an int.
 | 
			
		||||
long interval = 1000;           // interval at which to blink (milliseconds)
 | 
			
		||||
 | 
			
		||||
void setup() {
 | 
			
		||||
  // set the digital pin as output:
 | 
			
		||||
  pinMode(ledPin, OUTPUT);      
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void loop()
 | 
			
		||||
{
 | 
			
		||||
  // here is where you'd put code that needs to be running all the time.
 | 
			
		||||
 | 
			
		||||
  // check to see if it's time to blink the LED; that is, is the difference
 | 
			
		||||
  // between the current time and last time we blinked the LED bigger than
 | 
			
		||||
  // the interval at which we want to blink the LED.
 | 
			
		||||
  if (millis() - previousMillis > interval) {
 | 
			
		||||
    // save the last time you blinked the LED 
 | 
			
		||||
    previousMillis = millis();   
 | 
			
		||||
 | 
			
		||||
    // if the LED is off turn it on and vice-versa:
 | 
			
		||||
    if (ledState == LOW)
 | 
			
		||||
      ledState = HIGH;
 | 
			
		||||
    else
 | 
			
		||||
      ledState = LOW;
 | 
			
		||||
      
 | 
			
		||||
    // set the LED with the ledState of the variable:
 | 
			
		||||
    digitalWrite(ledPin, ledState);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										54
									
								
								arduino-0017-linux-x64/examples/Digital/Button/Button.pde
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								arduino-0017-linux-x64/examples/Digital/Button/Button.pde
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,54 @@
 | 
			
		|||
/*
 | 
			
		||||
  Button
 | 
			
		||||
 
 | 
			
		||||
 Turns on and off a light emitting diode(LED) connected to digital  
 | 
			
		||||
 pin 13, when pressing a pushbutton attached to pin 7. 
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 The circuit:
 | 
			
		||||
 * LED attached from pin 13 to ground 
 | 
			
		||||
 * pushbutton attached to pin 2 from +5V
 | 
			
		||||
 * 10K resistor attached to pin 2 from ground
 | 
			
		||||
 
 | 
			
		||||
 * Note: on most Arduinos there is already an LED on the board
 | 
			
		||||
 attached to pin 13.
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 created 2005
 | 
			
		||||
 by DojoDave <http://www.0j0.org>
 | 
			
		||||
 modified 17 Jun 2009
 | 
			
		||||
 by Tom Igoe
 | 
			
		||||
 
 | 
			
		||||
  http://www.arduino.cc/en/Tutorial/Button
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// constants won't change. They're used here to 
 | 
			
		||||
// set pin numbers:
 | 
			
		||||
const int buttonPin = 2;     // the number of the pushbutton pin
 | 
			
		||||
const int ledPin =  13;      // the number of the LED pin
 | 
			
		||||
 | 
			
		||||
// variables will change:
 | 
			
		||||
int buttonState = 0;         // variable for reading the pushbutton status
 | 
			
		||||
 | 
			
		||||
void setup() {
 | 
			
		||||
  // initialize the LED pin as an output:
 | 
			
		||||
  pinMode(ledPin, OUTPUT);      
 | 
			
		||||
  // initialize the pushbutton pin as an input:
 | 
			
		||||
  pinMode(buttonPin, INPUT);     
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void loop(){
 | 
			
		||||
  // read the state of the pushbutton value:
 | 
			
		||||
  buttonState = digitalRead(buttonPin);
 | 
			
		||||
 | 
			
		||||
  // check if the pushbutton is pressed.
 | 
			
		||||
  // if it is, the buttonState is HIGH:
 | 
			
		||||
  if (buttonState == HIGH) {     
 | 
			
		||||
    // turn LED on:    
 | 
			
		||||
    digitalWrite(ledPin, HIGH);  
 | 
			
		||||
  } 
 | 
			
		||||
  else {
 | 
			
		||||
    // turn LED off:
 | 
			
		||||
    digitalWrite(ledPin, LOW); 
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,74 @@
 | 
			
		|||
/* 
 | 
			
		||||
 Debounce
 | 
			
		||||
 
 | 
			
		||||
 Each time the input pin goes from LOW to HIGH (e.g. because of a push-button
 | 
			
		||||
 press), the output pin is toggled from LOW to HIGH or HIGH to LOW.  There's
 | 
			
		||||
 a minimum delay between toggles to debounce the circuit (i.e. to ignore
 | 
			
		||||
 noise).  
 | 
			
		||||
 
 | 
			
		||||
 The circuit:
 | 
			
		||||
 * LED attached from pin 13 to ground
 | 
			
		||||
 * pushbutton attached from pin 2 to +5V
 | 
			
		||||
 * 10K resistor attached from pin 2 to ground
 | 
			
		||||
 
 | 
			
		||||
 * Note: On most Arduino boards, there is already an LED on the board
 | 
			
		||||
 connected to pin 13, so you don't need any extra components for this example.
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 created 21 November 2006
 | 
			
		||||
 by David A. Mellis
 | 
			
		||||
 modified 3 Jul 2009
 | 
			
		||||
 by Limor Fried
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 http://www.arduino.cc/en/Tutorial/Debounce
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// constants won't change. They're used here to 
 | 
			
		||||
// set pin numbers:
 | 
			
		||||
const int buttonPin = 2;     // the number of the pushbutton pin
 | 
			
		||||
const int ledPin =  13;      // the number of the LED pin
 | 
			
		||||
 | 
			
		||||
// Variables will change:
 | 
			
		||||
int ledState = HIGH;         // the current state of the output pin
 | 
			
		||||
int buttonState;             // the current reading from the input pin
 | 
			
		||||
int lastButtonState = LOW;   // the previous reading from the input pin
 | 
			
		||||
 | 
			
		||||
// the following variables are long's because the time, measured in miliseconds,
 | 
			
		||||
// will quickly become a bigger number than can be stored in an int.
 | 
			
		||||
long lastDebounceTime = 0;  // the last time the output pin was toggled
 | 
			
		||||
long debounceDelay = 50;    // the debounce time; increase if the output flickers
 | 
			
		||||
 | 
			
		||||
void setup() {
 | 
			
		||||
  pinMode(buttonPin, INPUT);
 | 
			
		||||
  pinMode(ledPin, OUTPUT);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void loop() {
 | 
			
		||||
  // read the state of the switch into a local variable:
 | 
			
		||||
  int reading = digitalRead(buttonPin);
 | 
			
		||||
 | 
			
		||||
  // check to see if you just pressed the button 
 | 
			
		||||
  // (i.e. the input went from LOW to HIGH),  and you've waited 
 | 
			
		||||
  // long enough since the last press to ignore any noise:  
 | 
			
		||||
 | 
			
		||||
  // If the switch changed, due to noise or pressing:
 | 
			
		||||
  if (reading != lastButtonState) {
 | 
			
		||||
    // reset the debouncing timer
 | 
			
		||||
    lastDebounceTime = millis();
 | 
			
		||||
  } 
 | 
			
		||||
  
 | 
			
		||||
  if ((millis() - lastDebounceTime) > debounceDelay) {
 | 
			
		||||
    // whatever the reading is at, it's been there for longer
 | 
			
		||||
    // than the debounce delay, so take it as the actual current state:
 | 
			
		||||
    buttonState = reading;
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
  // set the LED using the state of the button:
 | 
			
		||||
  digitalWrite(ledPin, buttonState);
 | 
			
		||||
 | 
			
		||||
  // save the reading.  Next time through the loop,
 | 
			
		||||
  // it'll be the lastButtonState:
 | 
			
		||||
  lastButtonState = reading;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										71
									
								
								arduino-0017-linux-x64/examples/Digital/Melody/Melody.pde
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								arduino-0017-linux-x64/examples/Digital/Melody/Melody.pde
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,71 @@
 | 
			
		|||
/* Melody
 | 
			
		||||
 * (cleft) 2005 D. Cuartielles for K3
 | 
			
		||||
 *
 | 
			
		||||
 * This example uses a piezo speaker to play melodies.  It sends
 | 
			
		||||
 * a square wave of the appropriate frequency to the piezo, generating
 | 
			
		||||
 * the corresponding tone.
 | 
			
		||||
 *
 | 
			
		||||
 * The calculation of the tones is made following the mathematical
 | 
			
		||||
 * operation:
 | 
			
		||||
 *
 | 
			
		||||
 *       timeHigh = period / 2 = 1 / (2 * toneFrequency)
 | 
			
		||||
 *
 | 
			
		||||
 * where the different tones are described as in the table:
 | 
			
		||||
 *
 | 
			
		||||
 * note 	frequency 	period 	timeHigh
 | 
			
		||||
 * c 	        261 Hz 	        3830 	1915 	
 | 
			
		||||
 * d 	        294 Hz 	        3400 	1700 	
 | 
			
		||||
 * e 	        329 Hz 	        3038 	1519 	
 | 
			
		||||
 * f 	        349 Hz 	        2864 	1432 	
 | 
			
		||||
 * g 	        392 Hz 	        2550 	1275 	
 | 
			
		||||
 * a 	        440 Hz 	        2272 	1136 	
 | 
			
		||||
 * b 	        493 Hz 	        2028	1014	
 | 
			
		||||
 * C	        523 Hz	        1912 	956
 | 
			
		||||
 *
 | 
			
		||||
 * http://www.arduino.cc/en/Tutorial/Melody
 | 
			
		||||
 */
 | 
			
		||||
  
 | 
			
		||||
int speakerPin = 9;
 | 
			
		||||
 | 
			
		||||
int length = 15; // the number of notes
 | 
			
		||||
char notes[] = "ccggaagffeeddc "; // a space represents a rest
 | 
			
		||||
int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 };
 | 
			
		||||
int tempo = 300;
 | 
			
		||||
 | 
			
		||||
void playTone(int tone, int duration) {
 | 
			
		||||
  for (long i = 0; i < duration * 1000L; i += tone * 2) {
 | 
			
		||||
    digitalWrite(speakerPin, HIGH);
 | 
			
		||||
    delayMicroseconds(tone);
 | 
			
		||||
    digitalWrite(speakerPin, LOW);
 | 
			
		||||
    delayMicroseconds(tone);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void playNote(char note, int duration) {
 | 
			
		||||
  char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
 | 
			
		||||
  int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };
 | 
			
		||||
  
 | 
			
		||||
  // play the tone corresponding to the note name
 | 
			
		||||
  for (int i = 0; i < 8; i++) {
 | 
			
		||||
    if (names[i] == note) {
 | 
			
		||||
      playTone(tones[i], duration);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void setup() {
 | 
			
		||||
  pinMode(speakerPin, OUTPUT);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void loop() {
 | 
			
		||||
  for (int i = 0; i < length; i++) {
 | 
			
		||||
    if (notes[i] == ' ') {
 | 
			
		||||
      delay(beats[i] * tempo); // rest
 | 
			
		||||
    } else {
 | 
			
		||||
      playNote(notes[i], beats[i] * tempo);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    // pause between notes
 | 
			
		||||
    delay(tempo / 2); 
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,88 @@
 | 
			
		|||
/*
 | 
			
		||||
  State change detection (edge detection)
 | 
			
		||||
 	
 | 
			
		||||
 Often, you don't need to know the state of a digital input all the time,
 | 
			
		||||
 but you just need to know when the input changes from one state to another.
 | 
			
		||||
 For example, you want to know when a button goes from OFF to ON.  This is called
 | 
			
		||||
 state change detection, or edge detection.
 | 
			
		||||
 
 | 
			
		||||
 This example shows how to detect when a button or button changes from off to on
 | 
			
		||||
 and on to off.
 | 
			
		||||
 	
 | 
			
		||||
 The circuit:
 | 
			
		||||
 * pushbutton attached to pin 2 from +5V
 | 
			
		||||
 * 10K resistor attached to pin 2 from ground
 | 
			
		||||
 * LED attached from pin 13 to ground (or use the built-in LED on
 | 
			
		||||
   most Arduino boards)
 | 
			
		||||
 
 | 
			
		||||
 created  27 Sep 2005
 | 
			
		||||
 modified 17 Jun 2009
 | 
			
		||||
 by Tom Igoe
 | 
			
		||||
 	
 | 
			
		||||
 http://arduino.cc/en/Tutorial/ButtonStateChange
 | 
			
		||||
 
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// this constant won't change:
 | 
			
		||||
const int  buttonPin = 2;    // the pin that the pushbutton is attached to
 | 
			
		||||
const int ledPin = 13;       // the pin that the LED is attached to
 | 
			
		||||
 | 
			
		||||
// Variables will change:
 | 
			
		||||
int buttonPushCounter = 0;   // counter for the number of button presses
 | 
			
		||||
int buttonState = 0;         // current state of the button
 | 
			
		||||
int lastButtonState = 0;     // previous state of the button
 | 
			
		||||
 | 
			
		||||
void setup() {
 | 
			
		||||
  // initialize the button pin as a input:
 | 
			
		||||
  pinMode(buttonPin, INPUT);
 | 
			
		||||
  // initialize serial communication:
 | 
			
		||||
  Serial.begin(9600);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void loop() {
 | 
			
		||||
  // read the pushbutton input pin:
 | 
			
		||||
  buttonState = digitalRead(buttonPin);
 | 
			
		||||
 | 
			
		||||
  // compare the buttonState to its previous state
 | 
			
		||||
  if (buttonState != lastButtonState) {
 | 
			
		||||
    // if the state has changed, increment the counter
 | 
			
		||||
    if (buttonState == HIGH) {
 | 
			
		||||
      // if the current state is HIGH then the button
 | 
			
		||||
      // wend from off to on:
 | 
			
		||||
      buttonPushCounter++;
 | 
			
		||||
      Serial.println("on");
 | 
			
		||||
      Serial.print("number of button pushes:  ");
 | 
			
		||||
      Serial.println(buttonPushCounter, DEC);
 | 
			
		||||
    } 
 | 
			
		||||
    else {
 | 
			
		||||
      // if the current state is LOW then the button
 | 
			
		||||
      // wend from on to off:
 | 
			
		||||
      Serial.println("off"); 
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // save the current state as the last state, 
 | 
			
		||||
    //for next time through the loop
 | 
			
		||||
    lastButtonState = buttonState;
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
  // turns on the LED every four button pushes by 
 | 
			
		||||
  // checking the modulo of the button push counter.
 | 
			
		||||
  // the modulo function gives you the remainder of 
 | 
			
		||||
  // the division of two numbers:
 | 
			
		||||
  if (buttonPushCounter % 4 == 0) {
 | 
			
		||||
    digitalWrite(ledPin, HIGH);
 | 
			
		||||
  } else {
 | 
			
		||||
   digitalWrite(ledPin, LOW);
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Reference in a new issue