// Hlavni funkce setup, ktera se zpracuje hned po startu
void setup() {
Serial.begin(9600); // Nastartovani seriove linky rychlosti 9 600 b/s
pinMode(3, OUTPUT); // Nastaveni GPIO pinu 3 na vystup
}
// Druha povinna smycka, jejiz obsah se opakuje stale dokola
void loop() {
// Do 16bitove celociselne promenne bez znamenka 'posuvnik' uloz
// hodnotu z A/D prevodniku a pinu A0
uint16_t posuvnik = analogRead(A0);
// Do osmibitove celociselne promenne 'jas' uloz prepocet promenne posuvnik
// z rozsahu 0-1023 na rozsah 0-255
uint8_t jas = map(posuvnik, 0, 1023, 0, 255);
// Na GPIO pinu 3 vytvor PWM signal,
// jehoz strida/sirka pulzu bude rovna promenne 'jas'
analogWrite(3, jas);
// Pro kontrolu vypis do seriove linky radek ve formatu
// posuvnik TABULATOR jas ZAKONCENIRADKU
Serial.print(posuvnik);
Serial.print('\t');
Serial.println(jas);
}