Upload
alejandro-mesias-nebra-perez
View
650
Download
1
Embed Size (px)
DESCRIPTION
Palestra apresentada no Flisol Campinas 2013
Citation preview
Desmistificando Raspberry
Alejandro Mesias
● Formado em Informática Indústrial pela ETEC.
● Estudante Eng. Computação
Contato:
@meszias
ale dot mesias at gemeio dot com
Experiência
+7a Linux user/admin
+6a Programador Java
+3a Programador Python
Agenda
● História de preocupação
● O que há no RPI
● O que é esse tal de GPIO ?
● Programação embarcada.
● Montagens com Arduino X Montagens com RPI
1.História de preocupação
● Nível de interesse por programação baixou severamente.
● Computação virou Word, Excel, Jogos, Webdesign
● Estudantes inexperientes e desinteressados.
ATmega644 22.1MHze 512K SRAM
http://www.youtube.com/watch?v=ZHfRhqMo8ns
Aproveitando a onda
● Celulares começaram a ficar mais acessíveis em 2008
● Excelentes recursos de multimídia
● A idéia começou a se tornar possível.
● Fundaram a fundação Raspberry PI.
Uma motivação virando realidade
● Contrato de distribuição com a
● Grande interesse mundial
● Produção inicial de 10k RPI na China
● 2mi de interessados e 100k pré venda 1 dia.
● Em 6 meses 500k RPI foram vendidos.
● Fabricação pela Sony, mudança para Wales
● 10k RPI por semana.
Sony
Linha de produção
2. O que há no RPI ?
Raspberry Pi Model B 512MB RAM
● SoC Broadcom BCM2835 (CPU, GPU, DSP, and SDRAM)
● CPU: 700 MHz ARM1176JZF-S core (ARM11 family)
● GPU: Broadcom VideoCore IV, OpenGL ES 2.0, 1080p30 h.264/MPEG-4 AVC high-profile decoder
● Memory (SDRAM): 512 Megabytes (MiB)
● Video outputs: Composite RCA, HDMI
● Audio outputs: 3.5 mm jack, HDMI
● Onboard storage: SD, MMC, SDIO card slot
● 10/100 Ethernet RJ45 onboard network
● Storage via SD/ MMC/ SDIO card slot
Detalhes
3.O que é esse tal de GPIO ?
● Alimentação 3v3 e 5v
● 17 Portas
● 1 UART Serial (Rx/Tx) 3v3
● 1 i2c (0 e 1)
● 2 Pwm (18/21)
Aplicações
Aplicações
Supercomputadores
Programação Embarcada
“Desenvolvimento de software embarcado é uma modalidade de desenvolvimento para a qual o profissional qualificado desenvolve os programas e aplicativos que irão fazer parte de dispositivos eletrônicos que possam funcionar independentes de estarem ou não ligadas a um computador central.”
O que não há
● IDE's pesadas de Java.
● Facilidade de Debug.
● Recursos vastos de memória e processamento.
● Padrão “arrastar e soltar” de programação.
O que recomendo
● Terminal do linux.
● Editores em terminal
● Aprender linguagens independente da IDE
● Python, C, Perl, Lua.
Programar precisa de IDE ?
"toda funcionalidade que você não consegue passar sem na sua IDE correspondente a uma falha de design na sua linguagem de programação"
Arduino e RPI
ArduinoRaspberry Pi
Extremamente simples de funcionar.Extremely simple to get working.
Menos simples de funcionar.
Um sistema embarcado com software fácil-de-fazer.
Computador completo rodando Linux.
Suporte existe virtualmente em todo lugar.
Suporte limitado atualmente, mas deve crescer com o tempo.
Perfeito para controlar hardware (Robótica).
Possui uma poderosa GPU e pode manupular conteúdo HD.
Inúmeros kits diferentes e shields estão disponíveis.
Possui apenas alguns kits.
Baixo consumo de energia (<0.5 W), consegue rodar com na ordem de miliamperes com um clock muito baixo.
Consumo de energia (~3.5 W) é comparativamente maior que o Arduíno.
Fonte: http://www.rpiblog.com/2012/09/arduino-vs-raspberry-pi.html
Arduino (Tipos)
Arduino (Specs)
● Microcontroller ATmega328
● Operating Voltage 5V
● Input Voltage (recommended) 7-12V
● Input Voltage (limits) 6-20V
● Digital I/O Pins 14 (of which 6 provide PWM output)
● Analog Input Pins 6
● DC Current per I/O Pin 40 mA
● DC Current for 3.3V Pin 50 mA
● Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloader
● SRAM 2 KB (ATmega328)
● EEPROM 1 KB (ATmega328)
● Clock Speed 16 MHz