O projeto iniciou-se na cidade de Ivrea, Itália, em 2005, com o intuito de interagir em projetos escolares de forma a ter um orçamento menor que outros sistemas de prototipagem disponíveis naquela época.
A plataforma Arduino foi desenvolvida na Itália e, por ser uma plataforma aberta, várias versões surgiram e qualquer pessoa pode facilmente construir a sua, com base nos protótipos disponíveis na internet.
Arduíno é uma plataforma de prototipagem eletrônica de hardware livre, projetada com um microcontrolador ATMEL AVR com uma linguagem de programação padrão, na qual tem origem em Wiring, e é essencialmente C/C++. O objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo, flexíveis e fáceis de se usar por artistas e amadores. Principalmente para aqueles que não teriam alcance aos controladores mais sofisticados e de ferramentas mais complicadas.
O Desenvolvimento de Sistemas com Microcontroladores exigia uma grande capacitação dos envolvidos enquanto se era necessário conhecer profundamente a arquitetura do microcontrolador, lidar com linguagens de programação de baixo nível e fazer operações diretamente em registradores.
Plataformas como o arduino aumentaram muito o acesso à esses dispositivos uma vez que abstraiu várias camadas do desenvolvimento, ou seja, foi feita uma padronização do hardware e software básico para os microcontroladores e o programador pode atuar com funções que já foram escritas. As funções que exigiam um nível maior de conhecimento já estão implementadas nas bibliotecas e iniciantes não precisam sequer tomar conhecimento de sua existência.
Um programa básico para arduino tem duas funções:
Setup() - É executada uma única vez quando a máquina é ligada
Loop() - Fica sendo executada de forma contínua até que a máquina seja desligada ou o botão de reset for pressionado.
O Software abaixo é o básico Blink, faz com que um Led que foi ligada à um pino da placa (normalmente todas as placas já vêm com um led ligado ao pino 13)fique piscando eternamente.
Note que em Setup(), a função pinmode(13, OUTPUT) é executada apenas para configurar o dito pino como uma saída.
Se fosse um botão, por exemplo, nós a configuraríamos como uma entrada.
Dentro do Loop nós ligamos ou desligamos o Led com a função digitalWrite(), e para dar tempo a nossos olhos verem o que está acontecendo se coloca um comando delay(1000) no meio. Isso quer dizer que o sistema vai ficar parado(isso mesmo, morto, perdido, cego) durante 1 segundo.
digitalWrite(13,HIGH); ascende o led e digitalWrite(13,LOW) apaga o led.
Note que foi de propósito que eu usei o número 13 ao invés da variável Led aqui. As duas coisas funcionariam exatamente da mesma forma, pois int Led = 13 criou uma variável chamada Led que vale 13, depois se você quiser entender melhor esse negócio, ou se deveria usar uma constante ao invés de variável para fazer a mesma coisa ... acesse o conteúdo programação.
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Henri Coelho Terça, 10.03.2015 17:20:
São muito interessantes e bem apresentados… Mesmo com as limitações iniciais do Renato Aloi, como a câmera sem foco rssss, são muito bons para iniciar a programação.