Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. [email protected].

31
Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. [email protected]

Transcript of Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. [email protected].

Page 1: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Eletrônica BásicaAula 8

Ramo Estudantil UnB.Seção Brasí[email protected]

Page 2: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

AVISO

• Please note that you may reproduce the materials provided here as long as you do not charge anyone for the reproduction or include it with a product that is being sold and the material copied is used for educational purposes only and not for resale.

Make sure to comply with the fact that you must state on the reproduction that this material has “Copyright © by Elenco® Electronics Inc. All rights reserved and has been reproduced

with permission from Elenco Electronics Inc.”

Page 3: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Revisão

“A vantagem de ter péssima memória é divertir-se muitas vezes com as mesmas

coisas boas como se fosse a primeira vez.”Friedrich Nietzsche

Page 4: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Boa Notícia !!

Page 5: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Boa Notícia!!!Acharam o Bóson de Higgs 04/07/2012

Representa a chave para explicar a origem da massa das outras partículas elementares

Descoberta no CERN com 99,8% de certeza Peter Higgs

Ainda está vivo hoje

Page 6: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Revisão Aula 5

• História dos circuitos integrados

• Circuitos integrados: MUSIC • Transistor(TRANSISTOR

HUMANO!!)• Amplificador

Alguma Dúvida?

Page 7: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Revisão Aula 6

• Transformadores• A guerra das correntes: Corrente Contínua X Alternada• Rádio FM• Gravador

Alguma Dúvida?

Page 8: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Revisão Aula 7

• Retificador • Oscilador( Código Morse)• Entropia• Célula Fotoelétrica• História da descoberta doEfeito fotoelétrico

Alguma Dúvida?

Page 9: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Protoboard (Breadboard)

Page 10: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Estrutura

1: Os pontos em 1 são geralmente usados para conectar os terminais + e – ( ou ground(GND))

Todos os pontos em 1, na mesma

linha, estão conectados

2: Os pontos em 2 são geralmente usados para conectaros componentes desejados do circuito))

Todos os pontos em 2, na mesma

coluna, estão conectados

Page 11: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Arduino: Eletrônica simplificada• Projeto criado na Itália pelo Mássimo Banzi no Interaction Design Institute Ivrea;• Nasceu para complementar o aprendizado de programação,computação física e gráfica •Possui o microcontrolador AVR de 8 bits com memória Flash

Page 12: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

O que há no Arduino

Page 13: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Algoritmo no paradigma Estruturado:

para Arduino

Setup(Materiais necessários)

• Escrever na forma• Tipo nome_variável

Função Principal(loop)(Receita)

• {

• “Usar” materiais definidos chamando os procedimentos implementados para chegar à saída desejada

• }

Procedimentos(Funções)

• Escrever na forma:• Tipo de Retorno

Nome_função( variável de entrada)

• {Descrição da função}

Page 14: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Experimento 1: uso da protoboard

Page 15: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Algoritmos!!!

Abū ‘Abd Allāh Muhammad ibn Mūsā

al-Khwārizmī 780 – 850 dc

Apresentou a primeira solução sistemática das equações lineares e quadráticas. É considerado o fundador da Álgebra

O radical de algarismo e algoritmo vem de algoritmi, a forma latina de seu nome

Page 16: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Mas o que é Algoritmo?Um algoritmo:” é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita”

Alan Turing (1912 – 1954 ) Algoritmo quicksort para ordenação De um vetor de elementos( Dividir e conquistar)

Page 17: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Paradigmas de Programação

• Programação estruturada(Arduino)O programa é dividido em subrotinas

chamadas seguencial e logicamente para sair de um estágio inicial conhecido para um final desejado

• Programação orientada a objeto:baseado na composição e interação

entre diversas unidades de software chamadas de objetos.

Page 18: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Vamos Fazer um Bolo??Receita da internet

• BOLO SIMPLES• Ingredientes• 2 copos e meio de farinha• 2 copos e meio de açúcar• 1 copo de leite• 4 ovos• Fermento em pó

Modo de Preparo• Bata as claras em neve,• à parte bata o açúcar com as gemas , misture as claras batendo sempre• a farinha de trigo o fermento e o leite fervendo, por último uma pitada de sal• Asse em forno pré-aquecido• Assadeira de buraco ou redonda• Cubra com uma mistura de açúcar clara e maracujá, você pode também por um chocolate

ou algum ao seu gosto

Page 19: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Como escrever um algoritmo no Arduino

Setup( Preparação dos Materiais necessários)

•Escrever na forma•Tipo nome_variável;

Função Principal(Receita)

(loop)•{•Definir novas variéveis necessárias;•“Usar” variáveis definidos chamando os procedimentos implementados para chegar à saída desejada•}

Procediimentos(Funções)

•Escrever na forma:•Tipo de Retorno Nome_função( variável de entrada)•{Descrição da função}

Page 20: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Mais ou menos o algoritmo da Receita da internet

Setup( Preparação dos Materiais necessários)

•CopoFarinha CF = prepararCopoFarinha();•CopoAcucar CA = prepararCopoAcucar()•CopoLeite CL =prepararCopoLeite();

Função Principal(Receita)•{•Ovo ovos = 4;•Fermento F = 1;•ClaradeNeve cn;•GemaeAcucar Ga;•Bolo B;•Cn = BaterOvo( ovos);•Ga =BaterGemaeAcucar (ovos, CopoAcucar c);•B = Ferver( Cl, F, Ga,cn ) ;•}

Procedimentos(Funções)

• Clara BaterOvo(Ovo o)•GemaeAcucar BaterGemaeAcucar (Ovo o, CopoAcucar c)•Bolo Ferver(CopoLeite l, Fermento f, GemaeAcucar ga, ClaradeNeve cn )

Page 21: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Ambiente Arduino

Um programaArduino Sempretem dois métodos

void Setup(){}

void loop(){

}

Page 22: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Ambiente Arduino

Page 23: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Ambiente Arduino

Page 24: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Tipos padrão

Tipo•Número Inteiro•Numero Racional•Caracter

Descrição

•...-10,1,2...•...-4.64, 0, 5.8, 7.8...•‘a’, ‘A’, ‘#’,...

Como escrever

• int i = 1;• float f = 5.8; double d = -4.64; • char c = ‘c’;

Page 25: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Hello World!Execute o programa pisca_led_rapido.pde

Page 26: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Códido pisca_led_rapido.pde• int tempo = 1000;• void setup() { • pinMode(13, OUTPUT); • }

• void loop() {• digitalWrite(13, HIGH); • delay(tempo); • digitalWrite(13, LOW); • delay(tempo); • • tempo = tempo - 30;• }

Page 27: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Experimento 2

•Execute o programa quadrado.pde

Page 28: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Experimento 2:Código• int n = 0; // Para entrada de dados seriais (for

incoming serial data)

• void setup() {

• Serial.begin(9600); // Ativa a porta serial (opens serial port, sets data rate to 9600 bps)

• Serial.flush();

• }• void loop() {

• // Testa se a prta serial esta recebendo dados (send data only when you receive data:)

• delay(3000);//POR QUE????• Serial.println("Digite o tamanho do lado do

quadrado ");

• }

if (Serial.available() >0) {int Area;// leitura dos dados (read the incoming byte:)

n = Serial.read();

n = n - '0';//POR QUE????

Area = n*n;

// mostra na tela (say what you got:)Serial.print("Valor do lado digitado: ");Serial.println(n); Serial.println("Area ");Serial.println(Area);

}

Serial.flush();

Page 29: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Tabela ASCII: tabela dos caracteres

Page 30: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Experimento 3

• Calculem o perímetro de um quadrado De lado inteiro lido pelo teclado

Page 31: Eletrônica Básica Aula 8 Ramo Estudantil UnB. Seção Brasília. sb.ieee.unb@ieee.org.

Experimento 3int n = 0; // Para entrada de dados seriais (for incoming serial

data)

void setup() {

Serial.begin(9600); // Ativa a porta serial (opens serial port, sets data rate to 9600 bps)

Serial.flush();

}void loop() {

// Testa se a prta serial esta recebendo dados (send data only when you receive data:)

delay(3000);//POR QUE????Serial.println("Digite o tamanho do lado do quadrado ");

if (Serial.available() >0) {int Perimetro;// leitura dos dados (read the incoming byte:)

n = Serial.read();

n = n - '0';//POR QUE????

Perimetro = 4*n;

// mostra na tela (say what you got:)Serial.print("Valor do lado digitado: ");Serial.println(n); Serial.println("Perimetro ");Serial.println(Perimetro);

}

Serial.flush();

}