Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
INTRODUÇÃO AO ARDUINO, CANAL DIGITAL, FUNÇÃO DELAY
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
INTRODUÇÃOA Plataforma Arduino é considerada plataforma aberta, ou seja, qualquer pessoa pode efetuar uma melhoria
em um código, biblioteca e disponibilizá-la aos demais usuários. Existe uma série de placas Arduino com
caracateristicas especificas.
UNOMEGA
NANOLEONARDO DUE
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
INTRODUÇÃO
A Plataforma Arduino também possui placas baseadas em processadores, que disponibilizam maior
processamento e robustez em projetos de automação, controle e eletrônica.
GALILEO EDISON
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
COMPARATIVO
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
ARDUINO DUE
Módulo Digital
Módulo Analógico
Módulo Digital /Módulo Serial
Módulo Digital /Módulo PWM
Alimentação (Fonte)
Alimentação / GravaçãoUSB
Processador
Pinos de Alimentação
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
ARDUINO DUE
O Arduino DUE trabalha
com tensão de operação de 3,3V,
ou seja, não deve-se utilizar 5V nos
pinos pois ocorrerá a queima dos
mesmos. Para interligação com
componentes eletrônicos que
atuam com tensão de 5V ou mais,
é obrigatório a elaboração de
circuitos de interface.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
ARDUINO DUE (Processador ARM CORTEX-M3 – Atmel SAM3X8E)
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
IDE ARDUINO DUE
A IDE (Interface de Desenvolvimento) pode
ser baixada do site : https://www.arduino.cc
Barra de Ferramentas e Gravação
Sketch de programa
Janela de Compilação
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CONECTANDO O ARDUINO DUE
Para efetuar a comunicação com o Arduino Due, pode-se proceder de duas formas. A primeira é
conhecendo a porta COM do computador a ser utilizada, escolher a entrada “Programming port Serial”. Porém com
a opção “Native port Serial USB” o hardware define a COM de maneira automática.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CONECTANDO O ARDUINO DUE
Para escolher a placa a ser utilizada, deve-ser abrir o menu “Ferramentas – Placa ( )” e definir qual
tipo de hardware utilizar, em nosso caso “Placa (Arduino Due Native USB port)” para efetuar a conexão com a
placa. Em seguida habilitar a COM definida pelo software em “Porta: ( )”.
A maioria dos problemas referentes a comunicação ocorre neste passo, pois deve-se atentar bem a qual
porta o software está disponibilizando a comunicação. Todos estes passos devem ser feitos com a placa conectada
e o drive Plug and Play instalado.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO
Declarações de teste condicional: São utilizadas para testar determinadas condições/variáveis e
Executar um código para cada caso. A linguagem C dispõe de dois tipos de declarações condicionais: O
comando “if” e o comando “switch”.
Declarações de estrutura de repetição: São utilizadas para provocar a execução de um bloco de
comandos enquanto uma determinada condição for verdadeira. Em C dispomos de três declarações de
repetição, os comandos “for”, “while”, “do-while”.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO
COMANDO IF:
De maneira geral, o comando “if” (se) é utilizado para executar um comando ou bloco de comandos
no caso de uma determinada condição ser avaliada como verdadeira. Opcionalmente, é também possível
executar outro comando ou bloco de comandos no caso da condição ser avaliada como falsa.
Estrutura:
if ( condição)
{
comando;
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO
COMANDO ELSE:
O comando else (senão) é um complemento do comando if. Esta função “encerra” o comando if,
pois indica a última condição a ser analisada.
Estrutura:
if (condição)
{
comando;
}
else
{
comando;
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO
COMANDO SWITCH:
A declaração switch permite a realização de comparações sucessivas como a anterior, de uma
forma mais elegante, clara e eficiente.
Estrutura:
switch (variável)
{
case constante 1:
comando a;
break;
case constante 2:
comando b;
break;
default: comando c;
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO
COMANDO FOR:
O laço for é uma das mais comuns estruturas de repetição, sendo a versão C considerada uma
das mais poderosas e flexíveis dentre todas as linguagens de programação.
Estrutura:
for ( inicialização; condição; incremento)
{
comando;
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO
COMANDO WHILE:
Neste comando a condição é avaliada, caso seja verdadeira, então o comando ou bloco de
comandos executado e a condição é novamente avaliada, reiniciando o laço. Caso a condição seja falsa, o
comando ou bloco de comandos não é executado e o programa tem sequência a partir da declaração
seguinte ao bloco while.
Estrutura:
while ( condição)
{
comandos;
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÕES DE PROGRAMAÇÃO (ARDUINO)
Função “Setup”: Nesta função deve-se inserir as configurações iniciais do programa, como definição de
pinos de I/O, configuração do canal analógico, definição do módulo Serial, etc. Outras funções podem ser criadas
ao longo do programa.
Função “Loop”: Toda a lógica de controle deve ser inserida dentro desta função, ela assume o papel da
função “main“ de um programa em C.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CANAL DIGITAL
O Arduino Due possui 54 pinos disponibilizados para o módulo digital, alguns pinos são apenas pinos de
I/O digital e outros pinos apresentam outras funções como as de PWM integradas.
Funções de Programação:
pinMode(): Esta função permite definir quais serão os pinos utilizados no programa e se serão de entrada
ou saída digital.
Exemplo:
pinMode(1, INPUT);
pinMode(2, OUTPUT);
Neste caso os pinos 1 e 2 serão utilizados no programa; o pino 1 como entrada digital e o pino 2
como saída digital.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CANAL DIGITAL
Funções de Programação:
digitalWrite(): Esta função atribui um comando as saídas (depois de definidas).
Exemplo:
digitalWrite(2, HIGH);
digitalWrite(2, LOW);
Neste caso o pino 2 pode ser colocado em nível lógico alto (verdadeiro) ou em nível lógico baixo
(falso).
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CANAL DIGITAL
Funções de Programação:
digitalRead(): Esta função efetua a leitura das entradas (depois de definidas).
Exemplo:
if (digitalRead(1) == 1)
{
digitalWrite(2, HIGH);
}
A análise é feita no pino de entrada e de acordo com a situação física, a saída pode ser
habilitada.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CANAL DIGITAL
Funções de Programação:
digitalRead(): Pode ser utilizada em atribuição de variáveis.
Exemplo:
int pino_1;
pino_1 = digitalRead(1);
if (pino_1 == 1)
{
digitalWrite(2, HIGH);
}
Este método de programação pode auxiliar na elaboração de programas complexos.
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CANAL DIGITAL
Exemplo: Se o pino 1 for habilitado, o pino 2 deverá acionar um led, se o pino 1 estiver desabilitado, led deverá
permanecer desligado.
void setup() {
pinMode(1, INPUT);pinMode(2, OUTPUT);
}
void loop() {
if (digitalRead(1) == HIGH){
digitalWrite(2, HIGH);}
else{
digitalWrite(2, LOW);}
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
CANAL DIGITAL
Exemplo: Aplicando atribuição de variável.
int pino_1;
void setup() {
pinMode(1, INPUT);pinMode(2, OUTPUT);
}
void loop() {
pino_1 = digitalRead(1);
if (pino_1 == HIGH){digitalWrite(2, HIGH);}
else{digitalWrite(2, LOW);
}}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÃO DELAY
A função Delay é utilizada para criar pequenos atrasos na execução do programa. No arduino pode-se
utilizar desta função para criar sistemas temporizados.
Funções de Programação:
delay(ms): pode-se definir o valor de atraso da função em mSeg.
Exemplo:
digitalWrite(1, HIGH);
delay(1000);
digitalWrite(1, LOW);
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com
FUNÇÃO DELAY
Exemplo: Se um botão for pressionado, aguardar 500 mseg para acionar um led. (botão = pino 4, led =
pino 6).void setup() {pinMode(4, INPUT);pinMode(6, OUTPUT);
}
void loop(){
if(digitalRead(4) == HIGH){
delay(500);digitalWrite(6, HIGH);
}
else{
digitalWrite(6, LOW);}
}
Prof. Msc. Bruno Medina PedrosoEtec Presidente VargasCurso Técnico Integrado em MecatrônicaDisciplina: Linguagem de Prog. Apli. Em Meca.
profbrunopedroso.webnode.com