Códigos Kit USK4 Mega2560: mudanças entre as edições
Ir para navegação
Ir para pesquisar
imported>Fargoud |
imported>Fargoud |
||
| (8 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
Maiores informações, circuitos e explicações na apostila | Maiores informações, circuitos e explicações na apostila | ||
=LED RGB= | |||
// Define Pins | // Define Pins | ||
| Linha 85: | Linha 85: | ||
} | } | ||
=Entradas digitais= | |||
int ledPin = 5; | int ledPin = 5; | ||
| Linha 112: | Linha 112: | ||
} | } | ||
= | =''Buzzer'' ativo= | ||
int buzzer = 12;//the pin of the active buzzer | int buzzer = 12;//the pin of the active buzzer | ||
| Linha 144: | Linha 144: | ||
} | } | ||
= | =''Buzzer'' passivo= | ||
Biblioteca: [[pitches.h]] | |||
#include "pitches.h" | #include "pitches.h" | ||
// notes in the melody: | // notes in the melody: | ||
| Linha 169: | Linha 170: | ||
// restart after two seconds | // restart after two seconds | ||
delay(2000); | delay(2000); | ||
} | |||
=Sensor "''Tilt''" de inclinação= | |||
/*****************************************/ | |||
const int ledPin = 13;//the led attach to | |||
void setup() | |||
{ | |||
pinMode(ledPin,OUTPUT);//initialize the ledPin as an output | |||
pinMode(2,INPUT); | |||
digitalWrite(2, HIGH); | |||
} | |||
/******************************************/ | |||
void loop() | |||
{ | |||
int digitalVal = digitalRead(2); | |||
if(HIGH == digitalVal) | |||
{ | |||
digitalWrite(ledPin,LOW);//turn the led off | |||
} | |||
else | |||
{ | |||
digitalWrite(ledPin,HIGH);//turn the led on | |||
} | |||
} | |||
/**********************************************/ | |||
=Servo motor= | |||
Biblioteca: [[servo.h]] | |||
#include <Servo.h> | |||
Servo myservo; // create servo object to control a servo | |||
// twelve servo objects can be created on most boards | |||
int pos = 0; // variable to store the servo position | |||
void setup() { | |||
myservo.attach(9); // attaches the servo on pin 9 to the servo object | |||
} | |||
void loop() { | |||
for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees | |||
// in steps of 1 degree | |||
myservo.write(pos); // tell servo to go to position in variable 'pos' | |||
delay(15); // waits 15ms for the servo to reach the position | |||
} | |||
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees | |||
myservo.write(pos); // tell servo to go to position in variable 'pos' | |||
delay(15); // waits 15ms for the servo to reach the position | |||
} | |||
} | |||
=Sensor Ultrassom SR04= | |||
Biblioteca: [[SR04.h]] | |||
#include "SR04.h" | |||
#define TRIG_PIN 12 | |||
#define ECHO_PIN 11 | |||
SR04 sr04 = SR04(ECHO_PIN,TRIG_PIN); | |||
long a; | |||
void setup() { | |||
Serial.begin(9600); | |||
delay(1000); | |||
} | |||
void loop() { | |||
a=sr04.Distance(); | |||
Serial.print(a); | |||
Serial.println("cm"); | |||
delay(1000); | |||
} | } | ||
Edição atual tal como às 15h15min de 8 de maio de 2019
Maiores informações, circuitos e explicações na apostila
LED RGB
// Define Pins
#define BLUE 3
#define GREEN 5
#define RED 6
void setup()
{
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);
digitalWrite(RED, HIGH);
digitalWrite(GREEN, LOW);
digitalWrite(BLUE, LOW);
}
// define variables
int redValue;
int greenValue;
int blueValue;
// main loop
void loop()
{
#define delayTime 10 // fading time between colors
redValue = 255; // choose a value between 1 and 255 to change the color.
greenValue = 0;
blueValue = 0;
// this is unnecessary as we've either turned on RED in SETUP
// or in the previous loop ... regardless, this turns RED off
// analogWrite(RED, 0);
// delay(1000);
for(int i = 0; i < 255; i += 1) // fades out red bring green full when i=255
{
redValue -= 1;
greenValue += 1;
// The following was reversed, counting in the wrong directions
// analogWrite(RED, 255 - redValue);
// analogWrite(GREEN, 255 - greenValue);
analogWrite(RED, redValue);
analogWrite(GREEN, greenValue);
delay(delayTime);
}
redValue = 0;
greenValue = 255;
blueValue = 0;
for(int i = 0; i < 255; i += 1) // fades out green bring blue full when i=255
{
greenValue -= 1;
blueValue += 1;
// The following was reversed, counting in the wrong directions
// analogWrite(GREEN, 255 - greenValue);
// analogWrite(BLUE, 255 - blueValue);
analogWrite(GREEN, greenValue);
analogWrite(BLUE, blueValue);
delay(delayTime);
}
redValue = 0;
greenValue = 0;
blueValue = 255;
for(int i = 0; i < 255; i += 1) // fades out blue bring red full when i=255
{
// The following code has been rearranged to match the other two similar sections
blueValue -= 1;
redValue += 1;
// The following was reversed, counting in the wrong directions
// analogWrite(BLUE, 255 - blueValue);
// analogWrite(RED, 255 - redValue);
analogWrite(BLUE, blueValue);
analogWrite(RED, redValue);
delay(delayTime);
}
}
Entradas digitais
int ledPin = 5;
int buttonApin = 9;
int buttonBpin = 8;
byte leds = 0;
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(buttonApin, INPUT_PULLUP);
pinMode(buttonBpin, INPUT_PULLUP);
}
void loop()
{
if (digitalRead(buttonApin) == LOW)
{
digitalWrite(ledPin, HIGH);
}
if (digitalRead(buttonBpin) == LOW)
{
digitalWrite(ledPin, LOW);
}
}
Buzzer ativo
int buzzer = 12;//the pin of the active buzzer
void setup()
{
pinMode(buzzer,OUTPUT);//initialize the buzzer pin as an output
}
void loop()
{
unsigned char i;
while(1)
{
//output an frequency
for(i=0;i<80;i++)
{
digitalWrite(buzzer,HIGH);
delay(1);//wait for 1ms
digitalWrite(buzzer,LOW);
delay(1);//wait for 1ms
}
//output another frequency
for(i=0;i<100;i++)
{
digitalWrite(buzzer,HIGH);
delay(2);//wait for 2ms
digitalWrite(buzzer,LOW);
delay(2);//wait for 2ms
}
}
}
Buzzer passivo
Biblioteca: pitches.h
#include "pitches.h"
// notes in the melody:
int melody[] = {
NOTE_C5, NOTE_D5, NOTE_E5, NOTE_F5, NOTE_G5, NOTE_A5, NOTE_B5, NOTE_C6};
int duration = 500; // 500 miliseconds
void setup() {
}
void loop() {
for (int thisNote = 0; thisNote < 8; thisNote++) {
// pin8 output the voice, every scale is 0.5 sencond
tone(8, melody[thisNote], duration);
// Output the voice after several minutes
delay(1000);
}
// restart after two seconds
delay(2000);
}
Sensor "Tilt" de inclinação
/*****************************************/
const int ledPin = 13;//the led attach to
void setup()
{
pinMode(ledPin,OUTPUT);//initialize the ledPin as an output
pinMode(2,INPUT);
digitalWrite(2, HIGH);
}
/******************************************/
void loop()
{
int digitalVal = digitalRead(2);
if(HIGH == digitalVal)
{
digitalWrite(ledPin,LOW);//turn the led off
}
else
{
digitalWrite(ledPin,HIGH);//turn the led on
}
}
/**********************************************/
Servo motor
Biblioteca: servo.h
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// twelve servo objects can be created on most boards
int pos = 0; // variable to store the servo position
void setup() {
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop() {
for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
// in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
}
Sensor Ultrassom SR04
Biblioteca: SR04.h
#include "SR04.h"
#define TRIG_PIN 12
#define ECHO_PIN 11
SR04 sr04 = SR04(ECHO_PIN,TRIG_PIN);
long a;
void setup() {
Serial.begin(9600);
delay(1000);
}
void loop() {
a=sr04.Distance();
Serial.print(a);
Serial.println("cm");
delay(1000);
}