SENAI – Serviço Nacional de Aprendizagem Industrial
Introdução a programação no arduino
As duas principais partes (funções) de um programa desenvolvido para o Arduino são:
setup(): onde devem ser definidas algumas configurações iniciais do programa. Executa
uma única vez.
loop(): função principal do programa. Fica executando indefinidamente.
*Todo programa para o Arduino deve ter estas duas funções.
Variáveis:
Variáveis são espaços de armazenamento temporários que guardam informações, como
números ou texto.
Exemplo:
c o n s t byte LED =
void setup():
A função setup() :é executada uma vez no inı́cio do programa. É usado para configurar
pinos, inicializar bibliotecas e preparar o ambiente para a execução do código principal.
Exemplo:
void setup ( ) {
pinMode ( LED PIN , OUTPUT) ;
}
void loop():
A função loop() é onde o código principal é colocado. Ela é executada continuamente após
a execução da função setup(). É onde você coloca as instruções que devem ser repetidas
indefinidamente.
Exemplo:
void loop ( ) {
d i g i t a l W r i t e ( LED PIN , HIGH ) ;
delay (1000);
d i g i t a l W r i t e ( LED PIN , LOW) ;
delay (1000);\
}
pinMode():
Utilizado para configurar um pino como entrada ou saı́da.
Exemplo:
pinMode ( botaoPin , INPUT) ; \ \
digitalWrite():
Usado para definir o estado de um pino digital como HIGH (5V) ou LOW (0V).
Exemplo:
d i g i t a l W r i t e ( LED PIN , HIGH) ; \ \
1
digitalRead():
Lê o estado de um pino digital e retorna HIGH ou LOW.
Exemplo:
i n t estadoBotao = d i g i t a l R e a d ( botaoPin ) ;
Exemplo 1: Escrevendo texto em setup() e loop()
void setup()
{
Serial.begin(9600); // Definição da velocide de transmissão
Serial.println(”Ola, seu nome, seja bem vindo ”);
}
void loop()
{
Exemplo 2: Escrevendo texto em setup() e loop()
void setup()
{
Serial.begin(9600);
void loop()
{
delay(2000);
Serial.println(”ligado por 2 segundos”);
delay(2000);
Serial.println(”desligado 2 segundos ”);
exemplo 3 Ligando um led setup() e loop()
void setup ( )
{
pinMode ( 1 3 , OUTPUT) ;
}
void loop ( )
{
d i g i t a l W r i t e ( 1 3 , HIGH ) ;
delay (2000);
d i g i t a l W r i t e ( 1 3 , LOW) ;
delay (1000);
}
2
exemplo 4 Ligando um led por um sensor
int buttonPin = 7;//Define buttonPin no pino digital 7
int ledPin = 10;//Define ledPin no pino digital 10
int estadoButton = 0;//Variavel responsavel por armazenar o estado do botao (ligado/-
desligado)
void setup()
pinMode(ledPin , OUTPUT);//Define ledPin (pino 10) como saida
pinMode (buttonPin , INPUT);//Define buttonPin (pino 7) como entrada
void loop()
estadoButton = digitalRead (buttonPin);//Le o valor de buttonPin e armazena em
estadoButton
if ( estadoButton == HIGH ) //Se estadoButton for igual a HIGH ou 1
digitalWrite(ledPin , HIGH);//Define ledPin como HIGH, ligando o LED
delay(100);//Intervalo de 100 milissegundos
else //Senao = estadoButton for igual a LOW ou 0
digitalWrite (ledPin , LOW ); //Define ledPin como LOW, desligando o LED
3
Exemplo 5 Ligar e desligar um led por um botão
c o n s t byte LED = 1 3 ;
c o n s t byte BOTAO =2;
byte v a l o r B o t a o ;
byte v a l o r B o t a o A n t e r i o r ;
boolean ledLigado = f a l s e ;
void setup ( )
{
pinMode (LED, OUTPUT) ;
pinMode (BOTAO, INPUT ) ;
void loop ( ) {
v a l o r B o t a o = d i g i t a l R e a d (BOTAO) ;
i f ( v a l o r B o t a o != v a l o r B o t a o A n t e r i o r ){
i f ( v a l o r B o t a o ){
ledLigado = ! ledLigado ;
d i g i t a l W r i t e (LED, l e d L i g a d o ) ;
}
}
valorBotaoAnterior = valorBotao ;
delay ( 1 0 ) ;
}