Hi guys....
i have project vibration disco light,this first starting project learning.
input use piezo electric for vibration sensor to analog pin and output to LED in digital out.
led will connected to optocoupler for drive high current lamp.
i success for now for 1 analog input with 1 PWM output....
i was try to add more input and output, but still fail code to upload.
please help me for add 3 or 4 sensor , what code should I add or I subtract to run multiple inputs and outputs.
thank you...
this the code after modification.
/*
Analog input, analog output, serial output
Reads an analog input pin, maps the result to a range from 0 to 255 and uses
the result to set the pulse width modulation (PWM) of an output pin.
Also prints the results to the Serial Monitor.
The circuit:
-
piezo knock connected to analog pin 0 and ground
Center piezo goes to the analog pin. -
LED connected from digital pin 9 to ground
created 29 Dec. 2008
modified 9 Apr 2012
by Tom Igoe
modification by wor's 8 juni 2018
This example code is in the public domain.
*/
// These constants won't change. They're used to give names to the pins used:
const int analogInPin = A0; // Analog input pin that the piezo knock is attached to
const int analogOutPin = 9; // Analog output pin that the LED is attached to
const int analogInPin = A1; // Analog input pin that the piezo knock is attached to
const int analogOutPin = 8; // Analog output pin that the LED is attached to
const int analogInPin = A2; // Analog input pin that the piezo knock is attached to
const int analogOutPin = 7; // Analog output pin that the LED is attached to
const int analogInPin = A3; // Analog input pin that the piezo knock is attached to
const int analogOutPin = 6; // Analog output pin that the LED is attached to
(red color not accepted after i upload)
int sensorValue = 0; // value read from the piezo knock
int outputValue = 0; // value output to the PWM (analog out)
void setup() {
// initialize serial communications at 9600 bps:
Serial.begin(9600);
}
void loop() {
// read the analog in value:
sensorValue = analogRead(analogInPin);
// map it to the range of the analog out:
outputValue = map(sensorValue, 0, 1023, 0, 255);
// change the analog out value:
analogWrite(analogOutPin, outputValue);
// print the results to the Serial Monitor:
Serial.print("sensor = ");
Serial.print(sensorValue);
Serial.print("\t output = ");
Serial.println(outputValue);
// wait 5 milliseconds before the next loop for the analog-to-digital
// converter to settle after the last reading:
delay(50);
}