====== Τι είναι το Arduino Starter Kit R4 ; ====== Το Arduino Starter Kit R4 είναι ένα πακέτο εκμάθησης βασικών γνώσεων προγραμματισμού μικροελεγκτών. Περιλαμβάνει την πλακέτα [[https://docs.arduino.cc/hardware/uno-r4-wifi/|Arduino UNO R4 WiFi]] καθώς και πλήθος βασικών ηλεκτρικών στοιχείων για δημιουργία απλών κυκλωμάτων . {{:openhw:arduino:arduino-projects-book.png?200 }} ====== Άσκηση 1 ====== {{ :openhw:arduino:arduino-starter-kit-ex1.png?400 }} \\ {{ :openhw:arduino:arduino-starter-kit-ex1-series.png?200 }} \\ Η ταυτοποίηση των αντιστάσεων δεν ήταν ευκολη. {{ :openhw:arduino:arduino-starter-kit-ex1-parallel.png?200 }} \\ ====== Άσκηση 2 ====== {{ :openhw:arduino:arduino-starter-kit-ex2.png?200 }} int switchState = 0 ; void setup() { // put your setup code here, to run once: pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(2,INPUT); } void loop() { // put your main code here, to run repeatedly: switchState = digitalRead(2); if (switchState == LOW) { digitalWrite(3,HIGH); // green LED digitalWrite(4,LOW); // red LED digitalWrite(5,LOW); // red LED } else { digitalWrite(3,LOW); // green LED digitalWrite(4,LOW); // red LED digitalWrite(5,HIGH); // red LED delay(250); digitalWrite(4,HIGH); // red LED digitalWrite(5,LOW); // red LED delay(250); } } {{ :openhw:arduino:arduino-starter-kit-ex2-diagram.png?200 }} ====== Άσκηση 3 (αισθητήρας θερμότητας) ====== {{:openhw:arduino:arduino-starter-kit-ex3.png?200 |}} const int sensorPin = A0; const float baselineTemp = 27.0; void setup() { Serial.begin(9600); // open a serial port for (int pinNumber = 2; pinNumber<5; pinNumber++) { pinMode(pinNumber, OUTPUT); digitalWrite(pinNumber, LOW); } } void loop() { int sensorVal = analogRead(sensorPin); Serial.print("Sensor Value: "); Serial.print(sensorVal); // convert the ADC reading to voltage float voltage = (sensorVal/1024.0) * 5.0; Serial.print(", Volts: "); Serial.print(voltage); Serial.print(", degrees C: "); // convert the voltage to temperature in degrees float temperature = (voltage - 0.5) * 100; Serial.println(temperature); if(temperature < baselineTemp+2) { digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); }else if(temperature >= baselineTemp+2 && temperature < baselineTemp+4) { digitalWrite(2, HIGH); digitalWrite(3, LOW); digitalWrite(4, LOW); }else if(temperature >= baselineTemp+4 && temperature < baselineTemp+6) { digitalWrite(2, HIGH); digitalWrite(3, HIGH); digitalWrite(4, LOW); }else if(temperature >= baselineTemp+6) { digitalWrite(2, HIGH); digitalWrite(3, HIGH); digitalWrite(4, HIGH); } delay(1); }