====== Mini Demo Shield ======
{{:arduino-if2012:mini_demo_shield.jpg?500|}}
//Mini Demo Shield// je malá rozšiřující deska pro Arduino určená pro prvnotní seznámení s platformou Arduino.
Tento shiedl obsahuje:
* RGB led
* 2x tlačítko
* teplotní senzor (napětí na výstupu senzoru je úměrné teplotě)
* 2x konektro pro zozšíření kompatibilní s platformou Groow
Odkazy:
* **[[http://www.slideshare.net/ah01/arduino-workshop-11857553|Slidy z workshopu]]** ({{:arduino-workshop_horcica.pdf|pdf}}, {{:arduino-tahak_horcica.pdf|tahák}})
* **[[https://github.com/ah01/if12-workshop|Zdrojové soubory]]** (ukázkové sketche, podklady pro výrobu)
===== RGB Led =====
Na desce je umístěna tříbarenvná RGB Led. Je připojena na piny 9, 10, 11.
#define LED_R 10
#define LED_G 11
#define LED_B 9
Ukázka:
#define LED_R 11
#define LED_G 9
#define LED_B 10
void setup() {
pinMode(LED_R, OUTPUT);
pinMode(LED_G, OUTPUT);
pinMode(LED_B, OUTPUT);
}
void loop () {
}
===== Tlačítka =====
Na desce jsou umístěna 2 tlačítka označená jako **A** a **B**. Jsou připojeny na analogové piny A0 a A1. Přestože se jedná o oanalogové vstupní piny je možné je použít zcela normálně jako digitální piny.
Tlačítka jsou zapojena proti zemi. Aby byla zajištěna klidová úroveň nestisknutého talčítka, je třeba aktivovat vnitřní pull-up rezostory.
#define BTN_A A0
#define BTN_B A1
Setup:
pinMode(BTN_A, INPUT_PULLUP);
pinMode(BTN_B, INPUT_PULLUP);
Ukázka:
#define LED_R 10
#define LED_G 11
#define LED_B 9
#define BTN_A A0
#define BTN_B A1
void setup () {
pinMode(LED_R, OUTPUT);
pinMode(BTN_A, INPUT_PULLUP);
pinMode(BTN_B, INPUT_PULLUP);
}
void loop () {
if (digitalRead(BTN_A) == LOW) { // tlačítka jsou aktvní v LOW, v klidu mají HIGH
digitalWrite(LED_R, HIGH);
}
if (digitalRead(BTN_B) == LOW) {
digitalWrite(LED_R, LOW);
}
}
===== Teplotní čidlo =====
Na desce je umístěno teplotní čislo LM335, což je analogový teplotní snímač jehož výstupní napětí je úměrné teplote (10 mV/°C). Čidlo je připojeno na **analogový pin 3**.
Analogový vstup jsou 10bit, to dává při napájení 5 V rozlišení jednoho bitu cca 5mV. Pro přepočet naměřené hodnoty v bitech přímo na teplotu ve °C lze použít následující vzorec (kde x je naměřená hodnota v bitech):
T = x * 0.488281 - 273;
\\
#define TEMP 3
Setup:
--- není třeba, analogové vstupy jsou nakonfigurovány ihned po resetu
Ukázka:
#define TEMP 3
void setup () {
Serial.begin(9600);
}
void loop() {
float T = analogRead(3) * 0.488281 - 273;
Serial.println(T);
delay(1000);
}
===== Rozšiřující konektory =====
Na desce se nacházejí 2 rozšiřující 4pin konektory. Jeden označený jako IO je připojen na digitální piny 2 a 3. Druhý označený jako I2C je připojený k analogovým pinům 5 a 4 (ty zároveň slouží jako i2c zběrnice).