Mini Demo Shield
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:
- 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).