INTRODUÇÃO
A 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.
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.
ARDUINO DUE Módulo Digital Módulo Analógico Alimentação (Fonte) Alimentação / Gravação USB Pinos de Alimentação
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.
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
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.
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.
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
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; }
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
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;
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;
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;
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
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);
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).
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.
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);
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); } }
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); } }
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);
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); else { digitalWrite(6, LOW); } }