DEMO
##程式碼
const int sensorPin = A0; const float baselineTemp = 24.0; void setup(){ Serial.begin(9600); 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); float voltage = (sensorVal/1024.0)*5.0; Serial.print(", Volts:"); Serial.print(voltage); Serial.print(", degrees C:"); float temperature = (voltage - .5)*100; Serial.println(temperature); if(temperature < baselineTemp){ digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); } else if(temperature >= baselineTemp+2 && temperature < baselineTemp+4){ 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); }
##Project 4 :Color Mixing Lamp
DEMO
##程式碼
const int greenLEDPin=9; const int redLEDPin=11; const int blueLEDPin=10; const int redSensorPin=A0; const int greenSensorPin=A1; const int blueSensorPin=A2; int redValue=0; int greenValue=0; int blueValue=0; int redSensorValue=0; int greenSensorValue=0; int blueSensorValue=0; void setup(){ Serial.begin(9600); pinMode(greenLEDPin,OUTPUT); pinMode(redLEDPin,OUTPUT); pinMode(blueLEDPin,OUTPUT); } void loop(){ redSensorValue=analogRead(redSensorPin); delay(5); greenSensorValue=analogRead(greenSensorPin); delay(5); blueSensorValue=analogRead(blueSensorPin); Serial.print("Raw Sensor Value \t Red"); Serial.print(redSensorValue); Serial.print("\t Green"); Serial.print(greenSensorValue); Serial.print("\t Blue"); Serial.print(blueSensorValue); redValue=redSensorValue/4; greenValue=greenSensorValue/4; blueValue=blueSensorValue/4; Serial.print("Mapped Sensor Value \t Red"); Serial.print(redValue); Serial.print("\t Green"); Serial.print(greenValue); Serial.print("\t Blue"); Serial.print(blueValue); analogWrite(redLEDPin,redValue); analogWrite(greenLEDPin,greenValue); analogWrite(blueLEDPin,blueValue); }
沒有留言:
張貼留言