AN INTRODUCTION TO PHYSICAL COMPUTING USING ARDUINO, GRASSHOPPER, AND FIREFLY (CHINESE EDITION ) INTERACTIVE PROTOTYPING
前言 - Andrew Payne
目录 1 2 Firefly Basics 3 COMPONENT TOOLBOX
目录 4 RESOURCES
致谢
1 ARDUINO 1.1 Arduino? - source http://www.arduino.cc 1.2 Arduino IDE 1.3 AN INTRODUCTION TO ELECTRONICS
1.4 - http://www.arduino.cc AN INTRODUCTION TO ELECTRONICS
1 ARDUINO 1.5 DigitalRead AnalogRead Digital Write Analog Write Pulse Width Modulation PWM Pulse Width Modulation AN INTRODUCTION TO ELECTRONICS
1.6 /* Blink an LED using Digital Write. The circuit LED connected from digital pin 13 to ground. */ int LEDpin = 13; // LED connected to digital pin 13 void setup(){ // the digital pin as an output pinmode(ledpin, OUTPUT); } void loop(){ digitalwrite(ledpin, HIGH); // turn the LED on delay(1000); // wait for one second digitalwrite(ledpin, LOW); // turn the LED delay(1000); // wait for one second } AN INTRODUCTION TO ELECTRONICS
1 ARDUINO /* Blink an LED using Digital Write. The circuit: LED connected from digital pin 13 to ground. */ int LEDpin = 13; // LED connected to digital pin 13 void setup() void setup AN INTRODUCTION TO ELECTRONICS
void setup() void setup(){ // the digital pin as an output pinmode(ledpin, OUTPUT); } void loop(){ digitalwrite(ledpin, HIGH); // turn the LED on delay(1000); // wait for one second digitalwrite(ledpin, LOW); // turn the LED delay(1000); // wait for one second } 1.7 AN INTRODUCTION TO ELECTRONICS
1 ARDUINO 1.8 1.9 AN INTRODUCTION TO ELECTRONICS
/* Fade an LED using Analog Write The circuit LED connected through 220ohm resistor to digital pin 3 and to ground. Ω */ int LEDpin = 3; //connect LED to pin 3 int brightness = 0; // how bright the LED is int fadeamount = 5; // step value for LED void setup(){ pinmode(ledpin, OUTPUT); // declare LEDpin to be an output } void loop(){ analogwrite(ledpin, brightness); // write the PWM value to LEDpin // change the brightness for next through the loop brightness = brightness + fadeamount; } // reverse the of the fading at the ends of the fade if (brightness <= 0 brightness >= 255) { fadeamount = -fadeamount; } delay(30); // wait for 30 milliseconds to slow down the dimming analogwrite(ledpin, brightness); // write the PWM value to LEDpin // change the brightness for next through the loop brightness = brightness + fadeamount; AN INTRODUCTION TO ELECTRONICS
1 ARDUINO // reverse the of the fading at the ends of the fade if (brightness <= 0 brightness >= 255) { fadeamount = -fadeamount; } delay(30); // wait for 30 milliseconds to slow down the dimming 1.10 AN INTRODUCTION TO ELECTRONICS
1.11 1.12 AN INTRODUCTION TO ELECTRONICS
1 ARDUINO 1.13 橙色黄色绿色蓝色紫色灰色白色 金色 银色 1.14 AN INTRODUCTION TO ELECTRONICS
1.15 /* AnalogReadSerial Reads an analog input on pin 0, prints the result to the serial monitor */ void setup() { Serial.begin(115200); //start the serial } void loop() { int sensorvalue = analogread(0); Serial.println(sensorValue); } int sensorvalue = analogread(0); Serial.println(sensorValue); AN INTRODUCTION TO ELECTRONICS
1 ARDUINO 1.16 1.17 AN INTRODUCTION TO ELECTRONICS
1.18 AN INTRODUCTION TO ELECTRONICS
1 ARDUINO Serial Monitor 1.19 AN INTRODUCTION TO ELECTRONICS
/* AnalogReadSerial Reads an analog input on pin 0, prints the result to the serial monitor Use the Analog sensor value to precisely control a standard servo */ #include <Servo.h> //import the servo library to use Servo MyServo; //create a variable of type Servo int ServoPin = 9; //connect the signal pin of the servo to Digital Pin 9 void setup() { Serial.begin(115200); //start the serial MyServo. (ServoPin); } void loop() { int sensorvalue = analogread(0); Serial.println(sensorValue); //remap the raw sensor values into a range for Servo (0-180) sensorvalue = map(sensorvalue,0,1023,0,180); MyServo.write(sensorValue); //set the servo to remapped value } #include <Servo.h> //import the servo library to use Servo MyServo; //create a variable of type Servo AN INTRODUCTION TO ELECTRONICS
1 ARDUINO int ServoPin = 9; //connect the signal pin of the servo to Digital Pin 9 void setup() { Serial.begin(115200); //start the serial MyServo. (ServoPin); } //remap the raw sensor values into a range for Servo (0-180) sensorvalue = map(sensorvalue,0,1023,0,180); AN INTRODUCTION TO ELECTRONICS
MyServo.write(sensorValue); //set the servo to remapped value 1.20 AN INTRODUCTION TO ELECTRONICS
1 ARDUINO 1.21 /* The circuit */ int = 7; // the number of the pin int LEDPin = 13; // the number of the LED pin int = 0; // variable for reading the status void setup(){ pinmode(ledpin, OUTPUT); // the LED pin as output pinmode INPUT); // the pin as input } void loop(){ // read the state of the value digitalread // sets the LED to the value digitalwrite(ledpin, } AN INTRODUCTION TO ELECTRONICS
digitalread digitalwrite(ledpin, 1.22 AN INTRODUCTION TO ELECTRONICS
1 ARDUINO 1.23 /* The circuit */ int = 7; // the pin that the is to int LEDPin = 13; // the pin that the LED is to int = 0; // counter for the number of presses int = 0; // current state of the int = 0; // previous state of the void setup() { pinmode INPUT); pinmode(ledpin, OUTPUT); Serial.begin(115200); } void loop() { digitalread // compare the to its previous state if!= { // if the state has changed, increment the counter if == HIGH) { Serial.println( current state: pressed ); Serial.print( number of pushes: ); Serial.println DEC); // Code onto next page... AN INTRODUCTION TO ELECTRONICS
// Code from previous page... }else{ Serial.println( current state: unpressed ); } } // save the current state as the last state for next through the loop. } // turns on the LED every other press by checking the modulo of counter. if % 2 == 0){ digitalwrite(ledpin, HIGH); }else{ digitalwrite(ledpin, LOW); } if!= { if == HIGH) { = + 1; AN INTRODUCTION TO ELECTRONICS
1 ARDUINO Serial.println( current state: pressed ); Serial.print( number of pushes: ); Serial.println DEC); if % 2 == 0){ if % 2 == 0){ digitalwrite(ledpin, HIGH); }else{ digitalwrite(ledpin, LOW); } AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS 2.1 2.2 AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS 2.3 WinAVR ReacTIVision AN INTRODUCTION TO ELECTRONICS
2.4 2.5 2.6 AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS 2.7 AN INTRODUCTION TO ELECTRONICS
AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS 2.8 AN INTRODUCTION TO ELECTRONICS
2.9 Digital PWM: AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS Servo AN INTRODUCTION TO ELECTRONICS
Uno WriteDPin3PWM AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS 2.10 AN INTRODUCTION TO ELECTRONICS
AN INTRODUCTION TO ELECTRONICS
2 FIREFLY BASICS AN INTRODUCTION TO ELECTRONICS
3 COMPONENT TOOLBOX 3.1 Ports Available Open/Close Port Uno Read Uno Write Mega Read Mega Write Serial Read (Generic) Serial Write (Generic) AN INTRODUCTION TO ELECTRONICS
3 COMPONENT TOOLBOX Arduino Code Generator Upload to I/O Board 3.2 Reactivision Wii Nunchuck 3.3 Networking OSC Listener OSC Sender AN INTRODUCTION TO ELECTRONICS
UDP Listener UDP Sender Pachube Read XML Search 3.4 Binary Blink Counter Fader One Way Fader Two Way Buffer Data Log Is Key Pressed AN INTRODUCTION TO ELECTRONICS
3 COMPONENT TOOLBOX Playback Constrain Smoothing Frame Rate Stop Watch AND Flip Flop NOR Flip Flop Bang State Detection AN INTRODUCTION TO ELECTRONICS
4 RESOURCES 4.1 4.2 4.3 4.4 4.5 4.6 LEDS 4.7 AN INTRODUCTION TO ELECTRONICS
4 RESOURCES 4.8 4.9 4.10 4.11 AN INTRODUCTION TO ELECTRONICS
AN INTRODUCTION TO ELECTRONICS
NOTES AN INTRODUCTION TO ELECTRONICS
NOTES AN INTRODUCTION TO ELECTRONICS