Aula 01 Introducao Ao Arduino
Aula 01 Introducao Ao Arduino
Microcontrolador AVR
Atmega328 da Atmel
Botão de reset
USB-B
Portas digitais PWM
Alimentação
Antes de começar:
Limitações do Arduino:
Corrente máxima: 500 mA total, 50 mA por porta
Certifique-se que seu circuito não requer mais
corrente do que o Arduino pode oferecer
Cuidado com curto-circuitos, pode queimar o
microcontrolador
Sempre desligue o Arduino quando for mexer no
circuito eletrônico
Ambiente de programação: IDE Wiring
Barra de título
Menu
Barra de ferramentas
Janela de edição
Janela de status
Ambiente de programação: IDE Wiring
Compilação
Upload
Gravar sketch
Ambiente de programação: IDE Wiring
010010001101...
Porta USB
Comunicação serial
Comunicação serial
Permite receber e enviar informações entre o
Arduino e um computador
void setup() {
Serial.begin(9600);
Serial.println(“Ola Arduino!”);
}
void loop() {
}
Gravando o sketch Arduino
Executando o sketch Arduino
/* olaArduino.ino
Primeiro sketch Arduino
*/
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(“Ola Arduino!”);
}
Executando o sketch Arduino
Entrada e saída digital
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Sketch original Modificado
Sketch blink com variável LED
/*
Blink
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(LED, HIGH); // turn the LED on (HIGH is the voltage
level)
delay(1000); // wait for a second
digitalWrite(LED, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Sketch original Modificado
Prática de programação do Arduino
Montar um circuito de quatro LEDs com acendimento
sequencial, usando as portas digitais 8, 9, 10 e 11
Sketch do LED sequencial
/* void loop() {
LEDsequencial digitalWrite(pinLED1, HIGH);
Liga e desliga quatro LEDs delay(atraso);
em sequencia digitalWrite(pinLED1, LOW);
*/ delay(atraso);
digitalWrite(pinLED2, HIGH);
int pinLED1 = 8; delay(atraso);
int pinLED2 = 9; digitalWrite(pinLED2, LOW);
int pinLED3 = 10; delay(atraso);
int pinLED4 = 11; digitalWrite(pinLED3, HIGH);
int atraso = 30; delay(atraso);
digitalWrite(pinLED3, LOW);
void setup() { delay(atraso);
pinMode(pinLED1, OUTPUT); digitalWrite(pinLED4, HIGH);
pinMode(pinLED2, OUTPUT); delay(atraso);
pinMode(pinLED3, OUTPUT); digitalWrite(pinLED4, LOW);
pinMode(pinLED4, OUTPUT); delay(atraso);
} }