Click here to load reader
Upload
samir-siqueira
View
3.191
Download
2
Embed Size (px)
DESCRIPTION
Mini-Palestra que dei sobre Arduino no Arduino Hack Day :http://blog.arduinrio.cc/2010/09/12/ii-arduino-hack-day-escola-tecnica-estadual-ferreira-viana/
Citation preview
Microcontroladores :A Revolução do Arduino
O que é um Microcontrolador?
Computador ? CI ?
Computador num CI! Computador
Entradas => INTELIGÊNCIA => Saidas Microcontrolador
Entradas => INTELIGÊNCIA => Saidas Sensores => INTELIGÊNCIA => Atuadores
No caso da robótica
Entradas e Saidas do Arduino Duemilanove
Isto geralmente não muda muito para um conjunto de microcontroladores de mesmo porte :
PWM(Modulação por Largura de Pulso)
Conversor Analógico<->Digital (ADC)
Hardware - status - 2004
Referência – PIC – Microchip R$ 32,00 o microcontrolador R$ 300,00 o ambiente de desenvolvimento
Melhores estágios – R$ 300,00 por mes Possível?
Não para todos
Software – status - 2004
Catequese para se programar em assembly Conhecida como a linguagem mais baixo-nível que
humanos conseguem ler. Menos papo e mais código, como se faz um LED
piscar :
list p=16F630 ; list directive to define processor #include <p16F630.inc> ; processor specific variable definitions __CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT VARIABLES UDATA_SHRdelayA RES 1delayB RES 1 ;**********************************************************************RESET_VECTOR CODE 0x000 ; processor reset vector goto main ; go to beginning of programPROGRAM CODEmain call 0x3FF ; retrieve factory calibration value bsf STATUS,RP0 ; set file register bank to 1 movwf OSCCAL ; update register with factory cal value movlw 0x00 movwf TRISC bcf STATUS,RP0 ; set file register bank to 0 loop clrf PORTC call delay movlw 0xFF movwf PORTC call delay goto loop ;-------------------------------------------------------------------;Delay Routine delay movlw 0xFF movwf delayA loopA movlw 0xFF movwf delayB loopB decfsz delayB, f goto loopB decfsz delayA, f goto loopA return;------------------------------------------------------------------- END ; directive 'end of program'
A possibilidade da linguagem C
Era possível programar em C Mas pra que? C é muito facil! É pros fracos! Aliás, C gasta tanta memória que é melhor fazer em
assembly (vai debugar agora em assembly!)
Arduino – a quebra de paradigmas
Software Livre – Faça e extenda (em casa) Hardware Livre – Faça e extenda (em casa!)
Cultura de simplificação Linguagem Wiring – o “C simplificado” Você também pode programar o Arduino em C
puro. Piscando um LED no Arduino :
int ledPin = 13; // LED connected to digital pin 13void setup(){ pinMode(ledPin, OUTPUT); // sets the digital pin as output}void loop(){ digitalWrite(ledPin, HIGH); // sets the LED on delay(1000); // waits for a second digitalWrite(ledPin, LOW); // sets the LED off delay(1000); // waits for a second}
Shields – Bibliotecas de Hardware Com apenas encaixando a placa de expansão e
carregando a biblioteca, você já tem a funcionalidade pronta
No PIC você faria o interfaceamento e teria que programar a interface via software
Shields muito legais existentes : Ethernet (rede cabo azul) Wi-Fi Controladora de diversos motores Sensores diversos Bluetooth Muito mais!
Conclusão Facilidade
Até artistas programam hoje Estudantes de escolas técnicas não tem mais porque
não estudar este assunto Um Arduino custa R$ 40,00 vindo da china Por volta de R$ 85,00 no Brasil.
Criatividade A facilidade te abstrai os problemas menores para que
você se preocupe com o seu real problema Comunidade
Como nós aqui hoje, muitos se ajudam para um aprendizado coletivo, com isto todos só tem a ganhar.