13

Click here to load reader

Microcontroladores - A revolução do Arduino

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

Page 1: Microcontroladores - A  revolução do Arduino

Microcontroladores :A Revolução do Arduino

Page 2: 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

Page 3: Microcontroladores - A  revolução do Arduino

Entradas e Saidas do Arduino Duemilanove

Isto geralmente não muda muito para um conjunto de microcontroladores de mesmo porte :

Page 4: Microcontroladores - A  revolução do Arduino

PWM(Modulação por Largura de Pulso)

Page 5: Microcontroladores - A  revolução do Arduino

Conversor Analógico<->Digital (ADC)

Page 6: Microcontroladores - A  revolução do Arduino

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

Page 7: Microcontroladores - A  revolução do Arduino

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 :

Page 8: Microcontroladores - A  revolução do Arduino

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'

Page 9: Microcontroladores - A  revolução do Arduino

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!)

Page 10: Microcontroladores - A  revolução do Arduino

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 :

Page 11: Microcontroladores - A  revolução do 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}

Page 12: Microcontroladores - A  revolução do Arduino

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!

Page 13: Microcontroladores - A  revolução do Arduino

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.