www.ticmania.net
Download IDE Arduino https://www.arduino.cc/en/Main/Software
https://learn.sparkfun.com/tutorials/esp8266-thing-hookup-guide/installing-the-esp8266-arduino-addon
http://arduino.esp8266.com/stable/package_esp8266com_index.json
As Três Leis da Robótica:
1) um robô não pode ferir um humano ou permitir que um humano sofra algum mal;
2) os robôs devem obedecer às ordens dos humanos, excepto nos casos em que tais ordens entrem em conflito com a primeira lei;
3) um robô deve proteger sua própria existência, desde que não entre em conflito com as leis anteriores.
Links Arduino - Links variados com informações e exemplos de projetos em arduino Apontamentos PDF - Arduino programing
Ferramentas Lógicas Software
Atenção ao fornecedor do arduino IDE. Neste momento existem 2 versões de arduino IDE, produzidas por empresas distintas arduino.cc e arduino.org.
Eu optei pela https://www.arduino.cc/en/Main/Software.
Arduino - configuração&Instalação - Install the Arduino Software (IDE)
Siga as instruções na seção Primeiros passos do site da Arduino, arduino.ccGuide
Digital pin – 0 a 13 fornecem acesso ao chip
Podem funcionar como input ou output
INPUT - lendo variações de voltagem de um dispositivo externo
OUTPUT - aplicar uma determinada voltagem entre 0 e 5 volts para um dispositivo externo
Pins 3 - 5 - 6 - 9 - 10 - 11 pulse modulation ~
Podem ajustar a quantidade de volts que aplicam a um dispositivo externo (entre 0 e 5 volts)
Pin 1 - TX (transmitir)
Pin 0 - RX (receber)
Sempre que é necessário a comunicação entre o Arduíno e o computador é através destas portas que o fazemos.
Analog In pin 0 ao 5 – analog to digital
Recebe sinais analógicos e transforma-os em sinais digitais.
GPIO - General Purpose Input/OutputGeneral Purpose Input/Output - são portas programáveis de entrada e saída de dados que são utilizadas para permitir uma interface entre os periféricos e os microcontroladores/microprocessadores.
<declarações> : declaração de constantes, variáveis, tipos, etc (OPCIONAL)
void setup ( ) { <codigo> } : <codigo> é executado uma só vez; serve principalmente para efetuar inicializações
void loop ( ) { <codigo> } : após a execução de “setup”, <codigo> é executado de modo contínuo (em ciclo) até que a
alimentação seja desligada (ou reset ).
Comentários
//linha de comentário
/* texto de comentário
*/
Primeiro Programa
void setup()
{
Serial.begin(9600);
Serial.println("Olá Mundo");
}
void loop()
{}
TOP
Palavras reservadas Arduino // Arduino reserved words
arduino.cc/en/RefHomePage
Como limpar a informação no chip do arduino?
Carregar o exemplo BareMinimum
Vamos abrir o exemplo: Ficheiro > Exemplos > Basics > DigitalReadSerial
/*
Comentário com mais de uma linha
*/
// Pin 2 tem um botão ligado a ele
//; informa o compilador o fim de linha
// É nesta área que se faz a declaração de variáveis
int pushButton = 2;
//Funções (A saber que há linhas de código por traz da função SETUP porque é uma função)
//Corre apenas uma vez
// void esta função não retorna nenhum valor para o programa
// Chavetas dão início e fim à função
void setup() {
// Indicia a serial communication at 9600 bits per second:
Serial.begin(9600);
// O pin2 do pushButton tem função de INPUT
pinMode(pushButton, INPUT);
}
// LOOP é outra função que corre infinitamente
void loop() {
// Lê o input pin:
int buttonState = digitalRead(pushButton);
// imprime o estado do botão (0 desligado – 1 ligado):
Serial.println(buttonState);
delay(1000); // delay 1 segundo
}
As variáveis permitem-nos guardar e transportar informação de uma parte para outra do programa. É necessário ter em conta que as variáveis devem estar de acordo com o tipo de dados que vão transportar/armazenar.
Atente à seguinte analogia: Um trabalhador necessita de transportar/guardar, cimento e água, para isso dispõe de um saco de papel e de um balde de plástico. Agora o trabalhador deve decidir em que recipientes deve colocar a água e o cimento.
Condições:
Balde de plástico – Pode transportar água e cimento.
Saco de papel – pode transportar cimento, mas não pode transportar água.
Então
A melhor opção será transportar o cimento no saco de papel e a água no balde de plástico.
O mesmo acontece com os dados, as variáveis devem ser escolhidas em função do tipo de dados que vão armazenar/transportar.
Para evitar erros nunca use caracteres especiais numa variável e nunca comesse uma variável por número
Declarar inicializar variáveis
Declarar – Para declarar uma variável basta indicar ao programa o nome da nossa variável e o tipo de dados que ela pode conter:
int ledTeste; // declara a variável com o nome ledTeste que pode conter números Inteiros
Inicializar – Para inicializar uma variável basta indicar o dado que ficará guardado nela:
ledTeste = 13; // Inicializa a variável ledTeste com o valor de 13
Também podemos declarar e inicializar uma variável ao mesmo tempo:
int ledTeste = 13;
LED a piscar
Objetivos:
INPUT OUTPUT - Definir o modo de um PIN, pode ser INPUT ou OUTPUT
HIGH LOW - Escrever voltagens num pin digital do arduino, pode ser HIGH ou LOW, ligado ou desligado, respetivamente
delay – Permite adiar um acontecimento
Serial.println(Variável) - Permite enviar uma informação para o serial monitor.
VARIAÇÕES // Serial.print(Variável) // Serial.println(Variável) //Serial.println("Mensagem ao utilizador através do serial monitor")
digitalRead(Variável) - Permite ler o valor de um determinado pin.
VARIAÇÕES // Variável1 = digitalRead(Variável2) - Neste caso a Variável1 é atribuido o valor de Variável2
Exercício
No IDE do arduino abrir - Ficheiro > Exemplos > Basics > DigitalReadSerial
Desafios:
1- Altera os valores de delay para ver o que acontece.
2- Altera o número do pin 13 para 12 e faz as devidas alterações no programa e no circuito.
3- Altera o teu programa para que em vez de 1 led acenda dois ao mesmo tempo.
3.1 – Altera o programa para que os leds pisquem alternadamente.
4- Faz com que o que está a acontecer apareça no serial monitor e interpreta o resultado.
Ponto da situação:
Vamos verificar o que já aprendemos da nossa Cheat Sheet Arduino
INPUT OUTPUT - Definir o modo de um PIN, pode ser INPUT ou OUTPUT
HIGH LOW - Escrever voltagens num pin digital do arduino, pode ser HIGH ou LOW, ligado ou desligado, respetivamente
delay – Permite adiar um acontecimento
Serial.println(Variável) - Permite enviar uma informação para o serial monitor.
VARIAÇÕES // Serial.print(Variável) // Serial.println(Variável) //Serial.println("Mensagem ao utilizador através do serial monitor")
digitalRead(Variável) - Permite ler o valor de um determinado pin.
VARIAÇÕES // Variável1 = digitalRead(Variável2) - Neste caso a Variável1 é atribuido o valor de Variável2
Variáveis - int
Serial.begin(9600) - Permite iniciar o serial monitor