Professional Documents
Culture Documents
1/15
Hello World Melhorado!
2/15
Hello World Melhorado!
int LED = 13; //definição do LED
int POT = A0; //definição do potênciometro
unsigned int tempo = 0;
void setup()
{
pinMode(LED, OUTPUT);
Serial.begin(9600);
}
void loop()
{
tempo = analogRead(POT); //lê potênciometro
Serial.println(tempo); //envia pela serial
digitalWrite(LED, !digitalRead(LED));
delay(tempo);
}
3/15
Display de 7 Segmentos
(anodo comum) + RS232
4/15
Display de 7 Segmentos
(anodo comum) + RS232
int SEG_A = 9; //definição do display_seg 0
int SEG_B = 10; //definição do display_seg 1
int SEG_C = 2; //definição do display_seg 2
int SEG_D = 3; //definição do display_seg 3
int SEG_E = 4; //definição do display_seg 4
int SEG_F = 5; //definição do display_seg 5
int SEG_G = 6; //definição do display_seg 6
int PD = 7; //definição do display_seg 7
5/15
Display de 7 Segmentos
(anodo comum) + RS232
// pgfedcba
byte segmentos[16] = { 0b11000000, //0
0b11111001, //1
0b10100100, //2
0b10110000, //3
0b10011001, //4
0b10010010, //5
0b10000010, //6
0b11111000, //7
0b10000000, //8
0b10010000, //9
0b10001000, //A
0B10000011, //B
0b10100111, //C
0b10100001, //D
0b10000110, //E
0b10001110 };//F 6/15
Display de 7 Segmentos
(anodo comum) + RS232
void display_7seg( byte display_seg )
{//função display_segs: recebe um byte
//chamado display_seg e envia os bits para o display
{
digitalWrite(SEG_A, bitRead(display_seg, 0));
digitalWrite(SEG_B, bitRead(display_seg, 1));
digitalWrite(SEG_C, bitRead(display_seg, 2));
digitalWrite(SEG_D, bitRead(display_seg, 3));
digitalWrite(SEG_E, bitRead(display_seg, 4));
digitalWrite(SEG_F, bitRead(display_seg, 5));
digitalWrite(SEG_G, bitRead(display_seg, 6));
digitalWrite(PD, bitRead(display_seg, 7));
}
7/15
Display de 7 Segmentos
(anodo comum) + RS232
void setup()
{
pinMode(SEG_A, OUTPUT); //definição dos pinos
pinMode(SEG_B, OUTPUT);
pinMode(SEG_C, OUTPUT);
pinMode(SEG_D, OUTPUT);
pinMode(SEG_E, OUTPUT);
pinMode(SEG_F, OUTPUT);
pinMode(SEG_G, OUTPUT);
pinMode(PD, OUTPUT);
Serial.begin(9600); //configura RS-232
display_7seg( 0b11111111 ); //apaga o display
}
8/15
Display de 7 Segmentos
(anodo comum) + RS232
void loop()
{
delay(100); //delay
caractere = analogRead(POT); //lê potênciometro
caractere = map(caractere, 0, 1023, 0, 15); //ajusta
Serial.println(caractere); //envia pela serial
display_7seg( segmentos[caractere] );
}
9/15
Temporizador com Alarme
com Tempo Ajustável
10/15
Temporizador com Alarme
com Tempo Ajustável
int LED1 = 13;//definição do LED 1
int BUZZER = 11;//definição do BUZZER
void setup()
{
pinMode(LED1, OUTPUT); //definição da direção dos pinos
pinMode(BUZZER, OUTPUT);
pinMode(BOTAO1, INPUT);
Serial.begin(9600); //configura serial
}
11/15
Temporizador com Alarme
com Tempo Ajustável
void loop()
{
delay(100);
tempo = analogRead(POT);//lê o potenciômetro
tempo = map(tempo, 0, 1023, 1000, 10000); //ajusta o valor
Serial.println(tempo); //imprime o valor
12/15
Temporizador com Alarme
com Tempo Ajustável
digitalWrite(BUZZER, HIGH); //liga BUZZER
delay(1000); //tempo de 1 segundo
digitalWrite(BUZZER, LOW); //desliga BUZZER
delay(1000); //tempo de 1 segundo
digitalWrite(BUZZER, HIGH); //liga BUZZER
delay(1000); //tempo de 1 segundo
digitalWrite(BUZZER, LOW); //desliga BUZZER
delay(1000); //tempo de 1 segundo
digitalWrite(BUZZER, HIGH); //liga BUZZER
delay(1000); //tempo de 1 segundo
digitalWrite(BUZZER, LOW); //desliga BUZZER
}
13/15
Display de 7 Segmentos
14/15
Bibliografia
15/15