Você está na página 1de 4

2.

O sensor ultrassnico emite um pulso de ultrassom quando seu pino TRIGGER coloc
ado
em nvel lgico baixo;
3. Caso o pulso de ultrassom encontre um objeto sua frente, ele ir refletir e vol
tar para o
sensor. A volta do pulso indicada pelo pino ECHO. Calculando a diferena de tempo
entro entre
o envio do pulso e sua volta, possvel calcular a distncia do objeto frente do sens
or;
MEDIA
float sum
void setup(){
serial begin(9600) Obs:analogReference(INT) muda resoluo
}
void loop(){
sum=0
for(int i=1;i<=100;i=i+1){
float valor = Analogread(x)*Radc
sum=(sum+valor);
delay(10);
}
serial.println(sum/i)
ULTRASSOM
#define echoPin 13 //Pino 13 recebe o pulso do echo
#define trigPin 12 //Pino 12 envia o pulso para gerar o echo
void setup()
{
Serial.begin(9600); //inicia a porta serial
pinMode(echoPin, INPUT); // define o pino 13 como entrada (recebe)
pinMode(trigPin, OUTPUT); // define o pino 12 como saida (envia)
}
void loop()
{
//seta o pino 12 com um pulso baixo "LOW" ou desligado ou ainda 0
digitalWrite(trigPin, LOW);
// delay de 2 microssegundos
delayMicroseconds(2);
//seta o pino 12 com pulso alto "HIGH" ou ligado ou ainda 1
digitalWrite(trigPin, HIGH);
//delay de 10 microssegundos
delayMicroseconds(10);
//seta o pino 12 com pulso baixo novamente
digitalWrite(trigPin, LOW);
//pulseInt l o tempo entre a chamada e o pino entrar em high
long duration = pulseIn(echoPin,HIGH);
//Esse calculo baseado em s = v . t, lembrando que o tempo vem dobrado
//porque o tempo de ida e volta do ultrassom
long distancia = duration /29 / 2 ;
Serial.print("Distancia em CM: ");
Serial.println(distancia);
delay(1000); //espera 1 segundo para fazer a leitura novamente
}

3-DEBOUNCE
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 46 as an output.
Serial.begin(115200);
pinMode(13, OUTPUT);
pinMode(5, INPUT);
}
// the loop function runs over and over again forever
void loop() {
if ((digitalRead(9) == 1) && (digitalRead(7) ==1)) {
delay(150);
Serial.println("10,10");
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
}
else
if ((digitalRead(9) == 0) && (digitalRead(7) ==1)){
delay(150);
Serial.println("0,10");
digitalWrite(13, LOW); // turn the LED off (LOW is the voltage level)
}
else
if ((digitalRead(9) == 1) && (digitalRead(7) ==0)){
delay(150);
Serial.println("10,0");
digitalWrite(13, LOW); // turn the LED on (HIGH is the voltage level)
}
else
if ((digitalRead(9) == 0) && (digitalRead(7) ==0)){
delay(150);
Serial.println("0,0");
digitalWrite(13, HIGH); // turn the LED off (LOW is the voltage level)
}
}
4-ADC
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 46 as an output.
Serial.begin(9600);
}
// the loop function runs over and over again forever
void loop() {
v=analogRead(10);
Serial.println(v,);
}
5-TEMPE
int r, i;
float a, T, M;
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 46 as an output.
Serial.begin(9600);
analogReference(INTERNAL1V1);

}
// the loop function runs over and over again forever
void loop() {
for (i=0; i <= 100; i=i+1){
r=analogRead(A4);
delay(1);
T=1.1*r/(0.01*1023.0);
a=(T+a);
}
M=a/i;
a=0;
Serial.print(T);
Serial.print( ",");
Serial.println(M);
6-LCD
int r, i;
float a, T, M;
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup() {
//set up the LCSD's number of columns and rows:
lcd.begin(16, 2);
//Print a message to the LCD:
lcd.print("
UFSCar
");
//Ajuste do brilho do blacklight - entre 0 e 255
analogWrite (10,200);
delay(1000);
lcd.clear();
}
void loop(){
lcd.setCursor(0,0);
lcd.print(M);
lcd.print("
");
lcd.setCursor(0,1);
lcd.print(s);
delay(1000);
for (i=0; i <= 50; i=i+1){
r=analogRead(A3);
delay(1);
a=(r+a);
if (r > 9300){
lcd.setCursor(0,1);
lcd.print("=======================");
delay(1000);
}
else {
lcd.print("===========");
delay(1000);
}

if (r < 1100){
lcd.print("=
delay(1000);
}
}
M=a/i;
a=0;

");