Componentes utilizados: 01x Led Verde / 01x Led Amarelo / 01x Led Vermelho / 03x Resistores de
300 / 03x Resistores de 10k / 03x Pushbutton / cabos diversos / 01x Buzzer 5V
const int ledPin1 = 13;
const int ledPin2 = 12;
const int ledPin3 = 11;
const int Botao1 = 2;
const int Botao2 = 3;
const int Botao3 = 4;
const int Buzzer = 10; //O buzzer está colocado no pino 10
int EstadoBotao1 = 0;
int EstadoBotao2 = 0;
int EstadoBotao3 = 0;
int Tom = 0; //Variavel para armazenar a nota musical
void setup() {
pinMode(Buzzer, OUTPUT);
pinMode(ledPin1, OUTPUT);
pinMode(Botao1, INPUT);
pinMode(ledPin2, OUTPUT);
pinMode(Botao2, INPUT);
pinMode(ledPin3, OUTPUT);
pinMode(Botao3, INPUT);
}
void loop(){
EstadoBotao1 = digitalRead(Botao1);
EstadoBotao2 = digitalRead(Botao2);
EstadoBotao3 = digitalRead(Botao3);
if(EstadoBotao1 && !EstadoBotao2 && !EstadoBotao3) {
Tom = 100;
digitalWrite(ledPin1, HIGH);
}
if(EstadoBotao2 && !EstadoBotao1 && !EstadoBotao3) {
Tom = 200;
digitalWrite(ledPin2, HIGH);
}
if(EstadoBotao3 && !EstadoBotao2 && !EstadoBotao1) {
Tom = 500;
digitalWrite(ledPin3, HIGH);
}
while(Tom > 0) { //enquanto Tom for maior que zero faça o que esta descrit o baixo:
digitalWrite(Buzzer, HIGH); // Liga buzzer
delayMicroseconds(Tom); // Espera o tempo proporcional ao comprimento de onda da nota musical em milisegundos
digitalWrite(Buzzer, LOW); // Desliga buzzer
delayMicroseconds(Tom); // Espera o tempo proporcional ao comprimento de onda da nota musical em milisegundos
Tom = 0; // Reseta o Tom para zero, para sair do loop while e nao tocar o som constantemente
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
}
}
Resumo.
Este meta-artigo irá contar um pouco da história, descrever, como aplicar, caracterizar
e tentará mostrar uma visão mais clara sobre sistemas embarcados. Será mostrado
também um exemplo de aplicação para um sistema embarcado chamado Arduino, que
será explicado passo a passo as funcionalidades e exemplos que esse sistema
pode ser usado em trabalhos, pesquisas, entre outros.
1.
Informações Gerais e História de Sistemas Embarcados
Você já chegou a pensar
que quase tudo que esta em sua volta esta ligado a um sistema computacional, um
exemplo bem simples é do seu micro-ondas você não deve saber mas ele tem uma capacidade computacional muito
maior do que a do projeto Apolo (que levou o homem a lua). É cada vez maior o
numero de equipamentos do seu dia a dia com mais inteligência computacional.
1.1 Um pouco da História
Nos primeiros anos dos
computadores digitais na década de 1940, os computadores eram destinados a uma única
tarefa, e eram muito grandes não era considerados sistemas embarcados. O
primeiro sistema reconhecido foi o Apollo Guidance Computer, desenvolvido por
Charles Stark Draper no MIT.
2. O que são Sistemas Embarcados
Chegamos a um dos mais interessantes tópicos deste artigo que é. O que são sistemas embarcados? Basicamente podemos explicar de modo simples que um sistema embarcado é colocar uma capacidade computacional em um circuito integrado (Em eletrônica um circuito integrado é um circuito eletrônico
miniaturizado, composto por dispositivos condutores), equipamento ou sistema. Deve ser mais que um computador normal, é um sistema completo e independente, mas é muito preparada para realizar apenas uma tarefa que será feita pelo programador. Um sistema embarcado realiza um conjunto de tarefas predefinidas, geralmente com requisitos específicos.
Esses sistemas não podem ser mudados a sua funcionalidade pelo usuário, só poderá ser mudado a funcionalidade com a ajuda do programador que fara um sistema novo para outro tipo de funcionalidade.
3. Características
Sistemas embarcados são
propriamente desenvolvidos para uma tarefa especifica o software escrito para
sistema embarcado é muitas vezes chamado de firmware e armazenado em uma
memória ROM ou memória FLASH ao invés de um disco rígido. Algumas vezes esses
sistemas são executados por recursos computacionais como teclado, tela, led. Ou
podem ser executados sem teclado sem tela etc.
5.
Arduino.
5.1 O
que é um Arduino.
Agora iremos falar sobre o
Arduino. Ele tem uma plataforma física de computação de código aberto baseada
em uma simples placa micro controladora, e ele tem seu próprio ambiente para
desenvolvimento para escrever o código para a placa.
5.2
Utilizações do Arduino.
O Arduino pode ser usado
para desenvolver diversos tipos de projetos, permitindo uma entrada de uma
série de sensores, e controlando uma variedade de luzes, motores, etc.
Projetos do Arduino podem
ser independentes ou podem se comunicar com software rodando em seu computador.
Os circuitos podem ser montados à mão ou comprados pré-montados, o código para programação
de código livre pode ser baixado de graça via Web.
5.3
Linguagens Arduino
A linguagem de programação
do Arduino. Tem origem em Wiring (é uma plataforma de prototipagem eletrônica
de hardware livre), e é essencialmente C/C++. O Objetivo do
projeto é criar ferramentas que são acessíveis, com baixo custo, e fáceis de
usar.
5.4
Softwares Arduino
O Arduino é uma aplicação
multi plataforma escrita em JAVA na qual é derivada dos projetos Wiring, é
projetado para introduzir a programação em pessoas que também ao tem muita
familiaridade com o desenvolvimento de software.
Tendo a Biblioteca chamada
“wirind”, ele possui a capacidade de programar em C/C++ (como foi falado no tópico
5.3). Isto permite com que criar operações de entrada e saída sejam muito mais
facilidade.
Utiliza Atmega8U2 para driver conversor Serial-USB, ao invés do FTDI.
"Uno" significa "Um" em italiano.
Esta versão é considerada a versão 1.0 do projeto, sendo que as placas que sucederem a esta serão referenciadas.
ATmega328
Referencias
Weber, Raul Fernando. 1° edição (2000) “Arquitetura
de Computadores Pessoais”
Instituto de informatica da UFGRS. Editora
Sagra Luzzatto.
Stallings, William. 8° Ediçao(2009)
“Arquitetura e Organização de computadores”.