This pad builds on [[hacklab-courses-arduino/rev.1414]], created by Esko & Kimmo & Ape & Mika & Laura & Lapm & ? & Anttu & MiKu & Antti Hämäläinen & Kremmen & aaro & lapm & riverrun & netl & suovula & Mikko & Marcus Weckman & anacron & [unnamed author] & Paavo & Jari & Leena & Kilpuri & Marek & Marko
Arduinon alkeet 22.02.-23.02.
-- DC-moottorin ohjaamista ---
H-silta, itse rakennettuna H-silta
*http://itp.nyu.edu/physcomp/Labs/DCMotorControl "Connect the motor to the H-bridge"
*ja siihen piiriksi http://www.partco.biz/verkkokauppa/product_info.php?products_id=263
*
Tai sitten kaupasta valmis shieldi
*http://www.partco.biz/verkkokauppa/product_info.php?cPath=5&products_id=14179
*http://dx.com/p/ardumoto-l298p-motor-driver-shield-for-arduino-163089#.UwnaZF5Skxo
*
-- ohelma 6 - Painonapin lukeminen ----
int pushButton = 3;
void setup() {
Serial.begin(115200);
pinMode(pushButton, INPUT);
}
void loop() {
int buttonState = digitalRead(pushButton);
Serial.println(1 - buttonState);
delay(10);
}
Ledien RBG arvojen laskentaan: http://www.calculatorcat.com/free_calculators/color_slider/rgb_hex_color_slider.phtml
-- ohjelma 5 - RGB-led ----
int red_pin = 9;
int green_pin = 10;
int blue_pin = 11;
void setup() {
pinMode(red_pin, OUTPUT);
pinMode(green_pin, OUTPUT);
pinMode(blue_pin, OUTPUT);
}
void loop() {
int red = 255;
int green = 0;
int blue = 0;
analogWrite(red_pin, 255 - red);
analogWrite(green_pin, 255 - green);
analogWrite(blue_pin, 255 - blue);
}
-- ohjelma 4 - serialpalkkimittari ---
void setup() {
pinMode(A0, INPUT);
Serial.begin(115200);
}
void loop() {
int sensorValue = analogRead(A0);
// Tulostetaan luku aina neljän merkin pituisena, lisätään eteen tyhjää
if (sensorValue < 10) {
Serial.print(" ");
} else if (sensorValue < 100) {
Serial.print(" ");
} else if (sensorValue < 1000) {
Serial.print(" ");
}
Serial.print(sensorValue);
Serial.print(" ");
// Tulostetaan vaakapalkki sensorivaluen mukaan
// 32 x 32 = 1024
// 64 x 16 = 1024
// 128 x 8 = 1024
for (int i = 0; i < 64; i++) {
if (sensorValue/16 > i) {
Serial.print("|");
} else {
Serial.print(".");
}
}
Serial.println();
delay(10);
}
--
-- ohjelma 3 ----
int ledipinni = 11;
int potikkapinni = A0;
void setup() {
pinMode(ledipinni, OUTPUT);
pinMode(potikkapinni, INPUT);
}
void loop() {
int potikka_arvo = analogRead(potikkapinni);
int pwm_arvo = potikka_arvo/4; // 0..1023 / 4 = 0..255
analogWrite(ledipinni, pwm_arvo);
}
------
-- ohjelma 2 -----
int ledipinni = 11;
void setup() {
pinMode(ledipinni, OUTPUT);
}
void loop() {
for (int i = 0; i <= 255; i++) {
analogWrite(ledipinni, i);
delay(100);
}
for (int i = 255; i >= 0; i--) {
analogWrite(ledipinni, i);
delay(100);
}
}
-------
-- ohjelma 1 ------
int ledipinni = 12;
void setup() {
pinMode(ledipinni, OUTPUT);
digitalWrite(ledipinni, HIGH); // turn the LED on (HIGH is the voltage level)
delay(3000);
}
void loop() {
digitalWrite(ledipinni, LOW);
delay(1000);
digitalWrite(ledipinni, HIGH);
delay(2000);
}
-----
analogijännite:
http://arduino.cc/en/Reference/analogWrite#.UwiLl44Y5UQ
Ulos- / sisääntulo
HIGH=5V
LOW=0V
LED
etuvastus 150ohm tai 330ohm
litteä puoli (lyhyempi jalka) maahan
Kauppoja
*http://www.partco.fi/
*http://www.robomaa.com/
*http://www.dx.com/
*http://www.verkkokauppa.com/
*https://www.sparkfun.com/
*http://www.miniinthebox.com/fi/arduino_c5028
Lounas 12:15 - 13:00
-----
Arduino IDE ohjelma:
http://arduino.cc/en/Main/Software#toc1
Mac Ajurit FTDI (Duemilanove ja Nano, UNOt toimivat suoraan)
http://www.ftdichip.com/Drivers/VCP.htm
luki että OSX 10.7 asti, mutta toimii myös 10.8
linuxilla:
pitää olla käyttäjäryhmässä (nimi vaihtelee distroittain) dialout ja kirjautua ulos ja sisään
sudo adduser <käyttäjä> dialout
kytkennät:
http://fritzing.org/download/
Simulator
http://123d.circuits.io
http://www.falstad.com/circuit/