Você está na página 1de 3

ARDUÍNO - manual de instrução do arduíno: www.arduino.io/reference.

SIMULADOR DE
ARDUÍNO: THINKERCAD

- estrutura:
void setup () {} // oq fica dentro das chaves dos voids é chamado de escopo
void loop () {}
- todo comando termina com ";"
- o arduíno é "case sensitive", ou seja, letra maiúscula/minúscula são coisas
diferentes
- comentários podem ser feitos com o comando "//" ou "/* texto */"

- variáveis:
são globais (funcionam em todo o programa) ou locais (são exclusivas do void
setup ou do void loop)
tipos de dados: int a;
float b; <-> double e; // na placa arduíno q usamos (arduíno
uno), esse tipo de dado só usa 4 bytes assim como o float, ent a precisão (n° de
casas decimais) n muda tanto
boolean c;
char d;
OBS.: String -> é quando tem mais de um caracter, por exemplo: João. O
comando read só lê 1 caracter, por exemplo: J

- principais comandos...
pra portas seriais: // portas seriais são as q comunicam com o computador (USB é
um tipo de comunicação serial)
Serial.begin (9600); // 9600 é uma frequência padrão
a=Serial.read (); // só lê um caracter e o sinal "=" siginifica "recebe", o
sinal "==" significa " é igual a"
b=Serial.parseInt (); // lê e já entende o número como inteiro
c=Serial.parseFloat (); // lê e já entende o número como decimal
Serial.print (a);
Serial.println ("texto"); // q nem o "escreval" do VisualG
pra portas digitais:
pinMode(porta,Tipo); // define se a porta é de entrada ou saída. Ex.:
pinMode(10,INPUT)
digitalWrite(porta, valor); // Ex.: digitalWrite(10, high)
digitalRead(porta); // lê caracter apenas
pra portas analógicas:
pinMode(porta,Tipo); // define se a porta é de entrada ou saída
analogWrite(porta, valor);
analogRead(porta);
extras:
delay (500); // interrompe/para o funcionamento objetivando, por exemplo, dar
tempo de digitar. É medido em milissegundos.
const int a=3; // define uma constante
#define a 3 // define uma constante sem ocupar memória, bom pra economizar,
substitui pelo valor q vc quiser, NÃO termina com ";"
#include<biblioteca.h> // serve pra se comunicar com um dispositivo diferente,
exemplo: #include<wire.h>, atinge todos os equipamentos compatíveis. Outro exemplo
é: #include<motor.h>, caso vá trabalhar com um motor, dessa forma os comandos
específicos do componente podem ser usados no arduíno. Tbm NÃO termina com ";"

- Tipos de porta:
INPUT // entrada
INPUT_PULLUP // entrada, mas é utilizado quando se quer ativar o resistor para n
queimar o arduíno. Inverte o valor q entra, ligado passa a ser 0 e desligado vira
1.
OUTPUT // saída
- Valores nas portas digitais:
HIGH // 5V
LOW // 0V
- Valores nas portas analógicas: // são de entrada, podendo virar de saída na
prática
Saída - 0 até 255 // equivale a 0V a 5V
Entrada - 0 até 1023 // na entrada são mais para poder precisar melhor certas
coisas, como a detecção de movimento

- x++ significa x=x+1, x-- significa x=x-1


- Operadores de comparação: // COMPLETAR COM OS SIGNIFICADOS
==
>=
<=
<
>
!=
- Operadores lógicos:
! // not
|| // or
&& // and
- Funções:
abs(); max(); min(); pow(); sq(); sqr(); cos(); sin(); cos(); // servem para, por
exemplo, trabalhar com raiz quadrada, potenciação, etc.

- Estabelecendo uma decisão:


if (condição) {comandos a serem executados}
if (condição) {comandos a serem exeutados } else {outros comandos a serem
executados} // pode colocar outro if dentro do else, exemplo: if (x>7) {cmds} else
{if (x>=5) {cmds} else {cmds}}

***ACRESCENTAR NO RESUMO***

delaymicroseconds() // delay usado pra trabalhar com microsegundos.


Botões causam curto, por isso são utilizados com resistor interno da placa arduíno,
por meio do INPUT_PULLUP. (a n ser q seja usado resistor externo)
t=pulseIn(7,HIGH) -> ESTUDAR, USADO COM SENSOR SONAR (DE ECO). Mede o tempo de
mudança do estado de uma porta (do 0 pro 1 ou do 1 pro 0).
Servo motor: gira de 0 a 180 graus, muito leve mas tem pouca potência. Usa-se
#include<servo.h>

- Procedimento: executa os comandos desejados toda vez que vc utilizá-lo, evitando


repetição desnecessária. Por exemplo, temos o procedimento de buzinar 2 vezes,
dessa forma:
void buzina(){digitalWrite(11,HIGH)
delay(500)
digitalWrite(11,LOW)
delay(500)
digitalWrite(11,HIGH)
delay(500)}
- após usar biblioteca, necessário nomear o equipamento q vai ser usado, exemplo:
#include <Ultrassonic.h>
Ultrassonic Sonar (8,9);
- no sonar, trig é a porta que emite o som, já o echo recebe o som de volta (recebe
o eco). Dessa forma, mede-se a distância

- laços de repetição: 3 tipos diferentes


while(condição){comandos} Exemplo: int x=0; // o while
testa antes de executar o comando, executando-o enquanto a condição for respeitada
while(x<10){Serial.print(x);
x++;}
do{comandos} // combinando
o "do" com o "while" o programa executa antes de testar, dps interrompe caso a
condição n seja respeitada
while(condição); Exemplo: int x=0;
do{Serial.print(x);
x++;}
while(x<10);

for("início";"teste";"incremento"){comandos}

Exemplo: for(int x=0;x<10;x++)


{Serial.print(x);} // o "for" já é perfeitin pra usar com contadores, enquanto os
outros são pra outras coisas

OBS: O Q É FIRMWARE?
LEMBRAR DE COMPLEMENTAR COM ANOTAÇÕES DO PAPEL, Filipe fop, baú da eletronica,
etc
ultrassom utilizado nas aulas é o HC-SR04, baixar biblioteca dele

apresentação de informatica dia 10 de novembro


projetos: - mini carros de guerra com laser duelando pra ver quem acerta o
outro primeiro
- carro robô que verifica se compartimentos estão com gases tóxicos
ou não e avisa o usuário externo
possível 3º projeto: "batalha naval" de detecção e ataque de bases
inimigas

Você também pode gostar