際際滷

際際滷Share a Scribd company logo
PROJECT: Arduino
II.
Promnn辿
int pin = 13;
int pauza = 1000;
void setup() {
pinMode(pin, OUTPUT);
}
void loop() {
digitalWrite(pin, HIGH);
delay(pauza);
digitalWrite(pin, LOW);
delay(pauza);
}
PROJECT: Arduino MakersLAB / Paraleln鱈
Polis // Milan "Sodom叩k" P哲lkr叩bek
Typy promnn箪ch
typ velikost rozsah
signed unsigned
char 8 b 128 a転 127 0 a転 255
int 16 b 32768 a転 32767 0 a転 65535
long 32 b
2147483648
a転 2147483647
0 a転 4294967295
boolean 8 b true nebo false
PROJECT: Arduino MakersLAB / Paraleln鱈
Polis // Milan "Sodom叩k" P哲lkr叩bek
typ velikost rozsah
float 32 b 3,4x1038 a転 3,4x1038
double 64 b 1,7x10308 a転 1,7x10308
ASCII tabulka
PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek
Logick辿:
 false  hodnota 0
 true  nejen 1, ale jak辿koliv nenulov辿 鱈slo
Typ digit叩ln鱈ho pinu:
 OUTPUT  nastav鱈 pin jako v箪stup (40mA)
 INPUT  nastav鱈 pin jako vstup
 INPUT_PULLUP  jako INPUT, ale v箪choz鱈 hodnota je HIGH (vnitn鱈 rezistor
pipojen na +5V)
Hodnoty napt鱈 na pinu:
 HIGH  5V pi v箪stupu, pi vstupu pokud je vt邸鱈 ne転 3V
 LOW  0V pi v箪stupu, pi vstupu pokud je men邸鱈 ne転 2V
Vlastn鱈:
#define NZEV hodnota // bez stedn鱈ku nebo
const typ NZEV = hodnota;
Konstanty
Konstanty
#define LED 13
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(LED, HIGH);
delay(1000);
digitalWrite(LED, LOW);
delay(1000);
}
Podm鱈nka if
Syntaxe:
if (podm鱈nka) {
p鱈kazy... ;
} else {
p鱈kazy... ;
}
}
PROJECT: Arduino MakersLAB / Paraleln鱈
Polis // Milan "Sodom叩k" P哲lkr叩bek
Oper叩tory podm鱈nek
Oper叩tor Kompletn鱈 z叩pis V箪znam
== x == y pokud se x rovn叩 y
!= x != y pokud se x nerovn叩 y
< x < y pokud je x men邸鱈 ne転 y
> x > y pokud je x vt邸鱈 ne転 y
<= x <= y pokud je x men邸鱈 nebo rovno y
>= x >= y pokud je x vt邸鱈 nebo rovno y
PROJECT: Arduino MakersLAB / Paraleln鱈
Polis // Milan "Sodom叩k" P哲lkr叩bek
Kombinov叩n鱈 podm鱈nek:
&&  logick箪 souin (AND)
||  logick箪 souet (OR)
!  logick叩 negace (NOT)
if((a == 1) && (b == 0)) {}; // podm鱈nka splnna, pokud a=1 A ZROVE b=0
if((a == 1) || (b == 0)) {}; // podm鱈nka splnna, pokud a=1 NEBO b=0
if(a == !b) {}; // podm鱈nka splnna, pokud a je opak b (nap. a = true a b=false
Rezistor
 Pasivn鱈 (nedod叩v叩 energii) elekronick叩 sou叩stka, kter叩 klade
pr哲chodu elektrick辿ho proudu odpor.
 Hodnota jeho odporu (rezistence) je z叩visl叩 na teplot.
 Pi vt邸鱈m zat鱈転en鱈, ne転 na kter辿 je rezistor uren, se zni鱈 (peh叩t鱈m).
 Nez叩le転鱈 na polarit.
 Jednotka: 立 [Ohm]
 Rezistence se m鱈 v jednotk叩ch ohm, znaeno 立. Vztah napt鱈,
proudu a rezistence vyjaduje Ohm哲v z叩kon:
kde I je proud v amp辿rech, U je napt鱈 ve voltech a R je
odpor v ohmech. Pokud zn叩me 2 veliiny, snadno dopo鱈t叩me tet鱈.
 Rezistor o odporu R = 1 立 propust鱈 pi napt鱈 U = 1 V proud I = 1 A.
 Rezistor o odporu 20 k立 (tj. 20 000 立) propust鱈 pi napt鱈 100 V
proud o velikosti 100/20000, tj. 1/200 A, ili 5 mA.
 Pokud rezistorem o rezistenci 1000 立 prot辿k叩 proud 1 袖A, tvo鱈 se na
nm napt鱈 1 mV.
 Pokud v鱈me, 転e rezistor pi napt鱈 3 V propustil proud 10 mA, v鱈me, 転e
m叩 rezistenci 300 立.
Tla鱈tko
PROJECT: Arduino MakersLAB / Paraleln鱈
Polis // Milan "Sodom叩k" P哲lkr叩bek
Tla鱈tko
#DEFINE TLACITKO 2;
#DEFINE LED 13;
int stavTlacitka = 0;
void setup() {
pinMode(LED, OUTPUT);
pinMode(TLACITKO, INPUT);
}
void loop() {
stavTlacitka = digitalRead(TLACITKO);
if (stavTlacitka == HIGH) {
digitalWrite(LED, HIGH);
} else {
digitalWrite(LED, LOW);
}
}
PROJECT: Arduino MakersLAB / Paraleln鱈
Polis // Milan "Sodom叩k" P哲lkr叩bek
Cykly
Cyklus for
#define LED 11
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
for (int i = 0; i < 256; i++) {
analogWrite(LED, i);
delay(10);
}
}
Cyklus while
#define LED 11
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
int i = 0;
while (i < 256)
{
analogWrite(LED, i);
delay(10);
i++;
}
}
Cyklus do - while
#define LED 11
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
int i = 0;
do {
analogWrite(LED, i);
delay(10);
i++;
}
while (i < 256);
}
Fotorezistor
 Fotorezistor (d鱈ve oznaov叩n jako fotoodpor) je pasivn鱈 elektronick叩
sou叩stka , jej鱈転 elektrick箪 odpor se sni転uje se zvy邸uj鱈c鱈 se intenzitou
dopadaj鱈c鱈ho svtla, resp. elektrick叩 vodivost se zvy邸uje.
Teremin
Teremin
#define PINOUT 8
#define PININ A0
int vyska = 0;
int svetlo = 0;
void setup() {
pinMode(PINOUT, OUTPUT);
pinMode(PININ, INPUT);
}
void loop() {
svetlo = analogRead(PININ);
vyska = map(svetlo, 0, 1023, 100, 1000);
tone(PINOUT, vyska); // tone(pin, frequency(Hz), duration(ms))  noTone(pin)
}

More Related Content

PROJECT: Arduino 2

  • 2. Promnn辿 int pin = 13; int pauza = 1000; void setup() { pinMode(pin, OUTPUT); } void loop() { digitalWrite(pin, HIGH); delay(pauza); digitalWrite(pin, LOW); delay(pauza); } PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek
  • 3. Typy promnn箪ch typ velikost rozsah signed unsigned char 8 b 128 a転 127 0 a転 255 int 16 b 32768 a転 32767 0 a転 65535 long 32 b 2147483648 a転 2147483647 0 a転 4294967295 boolean 8 b true nebo false PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek typ velikost rozsah float 32 b 3,4x1038 a転 3,4x1038 double 64 b 1,7x10308 a転 1,7x10308
  • 4. ASCII tabulka PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek
  • 5. Logick辿: false hodnota 0 true nejen 1, ale jak辿koliv nenulov辿 鱈slo Typ digit叩ln鱈ho pinu: OUTPUT nastav鱈 pin jako v箪stup (40mA) INPUT nastav鱈 pin jako vstup INPUT_PULLUP jako INPUT, ale v箪choz鱈 hodnota je HIGH (vnitn鱈 rezistor pipojen na +5V) Hodnoty napt鱈 na pinu: HIGH 5V pi v箪stupu, pi vstupu pokud je vt邸鱈 ne転 3V LOW 0V pi v箪stupu, pi vstupu pokud je men邸鱈 ne転 2V Vlastn鱈: #define NZEV hodnota // bez stedn鱈ku nebo const typ NZEV = hodnota; Konstanty
  • 6. Konstanty #define LED 13 void setup() { pinMode(LED, OUTPUT); } void loop() { digitalWrite(LED, HIGH); delay(1000); digitalWrite(LED, LOW); delay(1000); }
  • 7. Podm鱈nka if Syntaxe: if (podm鱈nka) { p鱈kazy... ; } else { p鱈kazy... ; } } PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek
  • 8. Oper叩tory podm鱈nek Oper叩tor Kompletn鱈 z叩pis V箪znam == x == y pokud se x rovn叩 y != x != y pokud se x nerovn叩 y < x < y pokud je x men邸鱈 ne転 y > x > y pokud je x vt邸鱈 ne転 y <= x <= y pokud je x men邸鱈 nebo rovno y >= x >= y pokud je x vt邸鱈 nebo rovno y PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek Kombinov叩n鱈 podm鱈nek: && logick箪 souin (AND) || logick箪 souet (OR) ! logick叩 negace (NOT) if((a == 1) && (b == 0)) {}; // podm鱈nka splnna, pokud a=1 A ZROVE b=0 if((a == 1) || (b == 0)) {}; // podm鱈nka splnna, pokud a=1 NEBO b=0 if(a == !b) {}; // podm鱈nka splnna, pokud a je opak b (nap. a = true a b=false
  • 9. Rezistor Pasivn鱈 (nedod叩v叩 energii) elekronick叩 sou叩stka, kter叩 klade pr哲chodu elektrick辿ho proudu odpor. Hodnota jeho odporu (rezistence) je z叩visl叩 na teplot. Pi vt邸鱈m zat鱈転en鱈, ne転 na kter辿 je rezistor uren, se zni鱈 (peh叩t鱈m). Nez叩le転鱈 na polarit. Jednotka: 立 [Ohm] Rezistence se m鱈 v jednotk叩ch ohm, znaeno 立. Vztah napt鱈, proudu a rezistence vyjaduje Ohm哲v z叩kon: kde I je proud v amp辿rech, U je napt鱈 ve voltech a R je odpor v ohmech. Pokud zn叩me 2 veliiny, snadno dopo鱈t叩me tet鱈. Rezistor o odporu R = 1 立 propust鱈 pi napt鱈 U = 1 V proud I = 1 A. Rezistor o odporu 20 k立 (tj. 20 000 立) propust鱈 pi napt鱈 100 V proud o velikosti 100/20000, tj. 1/200 A, ili 5 mA. Pokud rezistorem o rezistenci 1000 立 prot辿k叩 proud 1 袖A, tvo鱈 se na nm napt鱈 1 mV. Pokud v鱈me, 転e rezistor pi napt鱈 3 V propustil proud 10 mA, v鱈me, 転e m叩 rezistenci 300 立.
  • 10. Tla鱈tko PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek
  • 11. Tla鱈tko #DEFINE TLACITKO 2; #DEFINE LED 13; int stavTlacitka = 0; void setup() { pinMode(LED, OUTPUT); pinMode(TLACITKO, INPUT); } void loop() { stavTlacitka = digitalRead(TLACITKO); if (stavTlacitka == HIGH) { digitalWrite(LED, HIGH); } else { digitalWrite(LED, LOW); } } PROJECT: Arduino MakersLAB / Paraleln鱈 Polis // Milan "Sodom叩k" P哲lkr叩bek
  • 12. Cykly
  • 13. Cyklus for #define LED 11 void setup() { pinMode(LED, OUTPUT); } void loop() { for (int i = 0; i < 256; i++) { analogWrite(LED, i); delay(10); } }
  • 14. Cyklus while #define LED 11 void setup() { pinMode(LED, OUTPUT); } void loop() { int i = 0; while (i < 256) { analogWrite(LED, i); delay(10); i++; } }
  • 15. Cyklus do - while #define LED 11 void setup() { pinMode(LED, OUTPUT); } void loop() { int i = 0; do { analogWrite(LED, i); delay(10); i++; } while (i < 256); }
  • 16. Fotorezistor Fotorezistor (d鱈ve oznaov叩n jako fotoodpor) je pasivn鱈 elektronick叩 sou叩stka , jej鱈転 elektrick箪 odpor se sni転uje se zvy邸uj鱈c鱈 se intenzitou dopadaj鱈c鱈ho svtla, resp. elektrick叩 vodivost se zvy邸uje.
  • 18. Teremin #define PINOUT 8 #define PININ A0 int vyska = 0; int svetlo = 0; void setup() { pinMode(PINOUT, OUTPUT); pinMode(PININ, INPUT); } void loop() { svetlo = analogRead(PININ); vyska = map(svetlo, 0, 1023, 100, 1000); tone(PINOUT, vyska); // tone(pin, frequency(Hz), duration(ms)) noTone(pin) }

Editor's Notes

  1. Pi peteen鱈 peroluje na opanou hodnotu int x; x = -32768; x = x - 1; // x now contains 32,767 - rolls over in neg. direction x = 32767; x = x + 1; // x now contains -32,768 - rolls over unsigned int cislo; signed char zaporne_cislo = -100; U pedposledn鱈ho p鱈kladu chyb鱈 kl鱈ov辿 slovo signed nebo unsigned. Toto slovo je nepovinn辿 a pokud jej neuvedeme, je promnn叩 automaticky se znam辿nkem.
  2. Break continue