SlideShare uma empresa Scribd logo
Firmware, esse ilustre desconhecidoMarcelo Castellani – mindaslab.com
Sobre o que falaremos aquiDesenvolvimento de firmware e oportunidades profissionaisMostrar que Arduino não é apenas um hobby e, diferente do que eu já ouvi, não é “perda de tempo”
O que é um firmware?Emeletrônicaecomputação, Firmware éoconjunto de instruçõesoperacionaisprogramadasdiretamente no hardware de um equipamentoeletrônico. É armazenadopermanentemente num circuitointegrado (chip) de memória de hardware, comouma ROM, PROM, EPROM ouainda EEPROM ememória flash, no momentodafabricação do componente.http://pt.wikipedia.org/wiki/Firmware
E onde encontro um firmware?(em todo lugar?)
Arduino - TDC 2011
Arduino - TDC 2011
Arduino - TDC 2011
Arduino - TDC 2011
Arduino - TDC 2011
Arduino - TDC 2011
Firmware está em todo lugar!Acredite, em todo lugar MESMO.
E quem desenvolve isso?Engenheiros e técnicos eletrônicosAnalistas de sistemas e afins
E isso dá dinheiro?Sim. Segundo diversas pesquisas um desenvolvedor Sênior de firmware possui um salário superior a desenvolvedores Sênior em outras especialidades.
www.itjobswatch.co.uk
www.indeed.com
E por que pagam mais?Lei da oferta e da procura
Arduino - TDC 2011
Arduino - TDC 2011
Arduino - TDC 2011
Arduino - TDC 2011
Mas é tão complicado assim?Não é fácil, mas o que é fácil quando o assunto é desenvolvimento de software?Existem boas IDEs e ferramentas que facilitam a vidaA maior parte dasIDEspagas possuem assistentes e ferramentas que facilitam muito a vida do desenvolver
Configurador TCP/IP µVision
Simulador de HW do µVision
JTAGs
Debug
Ok, e agora?O Que fazer?
Primeiro: hardware
Segundo: ambiente
Terceiro: escrever o FW
Conceitos básicosTodo firmware deve ter um “código de inicialização”, chamado por alguns de boot loader, por outros de startup, que é o responsável por iniciar o hardware (processador) e executar a função de entrada do firmware (geralmente main())Geralmente os firmwares possuem um “loader”, ou seja, um código independente capaz de atualizar o código principal.
LoaderLoaderFirmware
ConceitosUm firmware deve ser altamente tolerante a falhas e ter alta disponibilidade. Imagine o firmware de um sistema de freios ABS ou de uma máquina que emite radiação (aparelho de Raios-X)Um firmware deve executar para sempre e ser robusto suficiente para continuar funcionando.  Quando você precisou reiniciar o seu controle remoto por que ele estava consumindo muita memória?
ConceitosHardware possui pouca memória e recursos limitados. Otimização é uma palavra chave.A legislação de muitos Países hoje exige baixo consumo de energia, desligar recursos de processador não usados pode ajudar a economizar energia.Ler datasheets de componentes é importante. Conhecer o ambiente que irá trabalhar sempre é fundamental.
Mão na massa?Não, não vamos escrever um firmware agora, mas sim entender melhor tudo isso, na prática.
Arduino - TDC 2011
Atmega328p
Arduino - TDC 2011
Arduino - TDC 2011
Aplicação
Sem firmware o hardware não é e não faz nada.Ok, pode ser um peso de papel, ou um enfeite, ou uma obra de arte futurista... Coisas mil....
Arduino - TDC 2011
ResumãoSe você gosta de desenvolver hardware deve considerar ser um desenvolvedor de firmware;Existe um mercado grande por aí, com salários interessantes;C, um pouco de Assembly e eletrônica são conhecimentos importantes;Cada vez mais empresas desenvolverão hardware, e cada vez mais desenvolvedores de firmware serão necessários.
Arduino - TDC 2011
Obrigado!marcelo@mindaslab.com@mfcastellani

Mais conteúdo relacionado

PPTX
Memoria PROM
PPTX
Memória rom
PPT
Memorias de ROM
PPTX
Java ME simples e fácil com J2ME Polish
ODP
Introduçao Arduino - FSLDC
PDF
VTraining - Sistema especializado para Simulação Realística em Saúde
PDF
Apostila 3000 questoes (testes) resolvidos banco do brasil (bb), cef, ibge,...
PDF
Apostila 3000 questoes (testes) resolvidos banco do brasil (bb), cef, ibge,...
Memoria PROM
Memória rom
Memorias de ROM
Java ME simples e fácil com J2ME Polish
Introduçao Arduino - FSLDC
VTraining - Sistema especializado para Simulação Realística em Saúde
Apostila 3000 questoes (testes) resolvidos banco do brasil (bb), cef, ibge,...
Apostila 3000 questoes (testes) resolvidos banco do brasil (bb), cef, ibge,...

Semelhante a Arduino - TDC 2011 (20)

PDF
Apostila informatica para concursos robson aquila
PDF
Apostila 3000 questoes (testes) resolvidos banco do brasil (bb), cef, ibge,...
PDF
3000 questoes de informatica resolvidos banco do brasil (bb), cef, ibge, tre...
PDF
3000 questoes de informatica resolvidos banco do brasil (bb), cef, ibge, tre...
PPTX
Conhecimento Basico de Informatica - Parte II
PDF
Questões Comentadas - Informática para Concurso
PDF
Tecnicas de Detenção de Avaria
PDF
Primeiros passos com Nerves (Elixir para dispositivos embarcados)
PPT
Aspectos basicos de hardware e software
PPT
Aspectos basicos de hardware e software
PDF
aula_05.pdf
PDF
Manual Placa Mãe Phitronics - P7I45GC-M.pdf
PPT
Introdução a Lógica e Conceitos de Programação.ppt
PDF
Alfa con 1 -introducao-a-informatica
PPS
Informática 1
PPT
informaticannnnnnnnnjiiiiijgggggghuuj.ppt
PPT
informatica basica para alunos iniciantes hmta.ppt
ODP
Arduino- Conceitos e Aplicações
PDF
INTRODUÇÃO A INFORMÁTICA INICIANTES .pdf
Apostila informatica para concursos robson aquila
Apostila 3000 questoes (testes) resolvidos banco do brasil (bb), cef, ibge,...
3000 questoes de informatica resolvidos banco do brasil (bb), cef, ibge, tre...
3000 questoes de informatica resolvidos banco do brasil (bb), cef, ibge, tre...
Conhecimento Basico de Informatica - Parte II
Questões Comentadas - Informática para Concurso
Tecnicas de Detenção de Avaria
Primeiros passos com Nerves (Elixir para dispositivos embarcados)
Aspectos basicos de hardware e software
Aspectos basicos de hardware e software
aula_05.pdf
Manual Placa Mãe Phitronics - P7I45GC-M.pdf
Introdução a Lógica e Conceitos de Programação.ppt
Alfa con 1 -introducao-a-informatica
Informática 1
informaticannnnnnnnnjiiiiijgggggghuuj.ppt
informatica basica para alunos iniciantes hmta.ppt
Arduino- Conceitos e Aplicações
INTRODUÇÃO A INFORMÁTICA INICIANTES .pdf
Anúncio

Último (18)

PPTX
NR01 - Treinamento - Elaboracao PGR - 2023.pptx
PPT
Olpaddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
PPTX
UFPA2 - Risco de Viés em Revisões Sistemáticas
PPTX
treinamento-nr17-ergonomia.pptx treinamento para ergonomia
PPTX
Slides Sífilis.pptxxxxxxxxxxxxxxxxxxxxxxxx
PDF
Cirurgia Seguraaaaaaaaaaaaaaaaaaaaaaaaaa
PPTX
Slide_Introdução ao Google Looker Studio (1).pptx
PPTX
SLIDE POEMASSSSSSSSSSSSSSSSSSSSSSSSSSSSS C A.pptx
PPTX
material de aprendizado para enstudoSHAKempreendedorismo.pptx
PPTX
folclMMMMore_sul_brasil_apresentacao.pptx
PPT
logistica e centros de distribuição no sec
PDF
C Ubbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
PPTX
COMO FALAR EM PUBLICO - PARA ESTUDANTES E PROFISSIONAIS
PPTX
CORREÇÃO DE EXERCICIO - Testando os conhecimentos sobre tecidos humanos.pptx
PPTX
ciencias24.pptx ciencias24.pptx ciencias24.pptx
PPT
NR 18 treinamento para colaboradores da construção
PPTX
NR17+-+Treinamento+Operador+de+Check+Out+-+2023.pptx
PDF
artigo CADEIA DE ABASTECIMENTO GESTÃO DO ESTOQUE.pdf
NR01 - Treinamento - Elaboracao PGR - 2023.pptx
Olpaddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
UFPA2 - Risco de Viés em Revisões Sistemáticas
treinamento-nr17-ergonomia.pptx treinamento para ergonomia
Slides Sífilis.pptxxxxxxxxxxxxxxxxxxxxxxxx
Cirurgia Seguraaaaaaaaaaaaaaaaaaaaaaaaaa
Slide_Introdução ao Google Looker Studio (1).pptx
SLIDE POEMASSSSSSSSSSSSSSSSSSSSSSSSSSSSS C A.pptx
material de aprendizado para enstudoSHAKempreendedorismo.pptx
folclMMMMore_sul_brasil_apresentacao.pptx
logistica e centros de distribuição no sec
C Ubbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
COMO FALAR EM PUBLICO - PARA ESTUDANTES E PROFISSIONAIS
CORREÇÃO DE EXERCICIO - Testando os conhecimentos sobre tecidos humanos.pptx
ciencias24.pptx ciencias24.pptx ciencias24.pptx
NR 18 treinamento para colaboradores da construção
NR17+-+Treinamento+Operador+de+Check+Out+-+2023.pptx
artigo CADEIA DE ABASTECIMENTO GESTÃO DO ESTOQUE.pdf
Anúncio

Arduino - TDC 2011

  • 1. Firmware, esse ilustre desconhecidoMarcelo Castellani – mindaslab.com
  • 2. Sobre o que falaremos aquiDesenvolvimento de firmware e oportunidades profissionaisMostrar que Arduino não é apenas um hobby e, diferente do que eu já ouvi, não é “perda de tempo”
  • 3. O que é um firmware?Emeletrônicaecomputação, Firmware éoconjunto de instruçõesoperacionaisprogramadasdiretamente no hardware de um equipamentoeletrônico. É armazenadopermanentemente num circuitointegrado (chip) de memória de hardware, comouma ROM, PROM, EPROM ouainda EEPROM ememória flash, no momentodafabricação do componente.http://pt.wikipedia.org/wiki/Firmware
  • 4. E onde encontro um firmware?(em todo lugar?)
  • 11. Firmware está em todo lugar!Acredite, em todo lugar MESMO.
  • 12. E quem desenvolve isso?Engenheiros e técnicos eletrônicosAnalistas de sistemas e afins
  • 13. E isso dá dinheiro?Sim. Segundo diversas pesquisas um desenvolvedor Sênior de firmware possui um salário superior a desenvolvedores Sênior em outras especialidades.
  • 16. E por que pagam mais?Lei da oferta e da procura
  • 21. Mas é tão complicado assim?Não é fácil, mas o que é fácil quando o assunto é desenvolvimento de software?Existem boas IDEs e ferramentas que facilitam a vidaA maior parte dasIDEspagas possuem assistentes e ferramentas que facilitam muito a vida do desenvolver
  • 23. Simulador de HW do µVision
  • 24. JTAGs
  • 25. Debug
  • 26. Ok, e agora?O Que fazer?
  • 30. Conceitos básicosTodo firmware deve ter um “código de inicialização”, chamado por alguns de boot loader, por outros de startup, que é o responsável por iniciar o hardware (processador) e executar a função de entrada do firmware (geralmente main())Geralmente os firmwares possuem um “loader”, ou seja, um código independente capaz de atualizar o código principal.
  • 32. ConceitosUm firmware deve ser altamente tolerante a falhas e ter alta disponibilidade. Imagine o firmware de um sistema de freios ABS ou de uma máquina que emite radiação (aparelho de Raios-X)Um firmware deve executar para sempre e ser robusto suficiente para continuar funcionando. Quando você precisou reiniciar o seu controle remoto por que ele estava consumindo muita memória?
  • 33. ConceitosHardware possui pouca memória e recursos limitados. Otimização é uma palavra chave.A legislação de muitos Países hoje exige baixo consumo de energia, desligar recursos de processador não usados pode ajudar a economizar energia.Ler datasheets de componentes é importante. Conhecer o ambiente que irá trabalhar sempre é fundamental.
  • 34. Mão na massa?Não, não vamos escrever um firmware agora, mas sim entender melhor tudo isso, na prática.
  • 40. Sem firmware o hardware não é e não faz nada.Ok, pode ser um peso de papel, ou um enfeite, ou uma obra de arte futurista... Coisas mil....
  • 42. ResumãoSe você gosta de desenvolver hardware deve considerar ser um desenvolvedor de firmware;Existe um mercado grande por aí, com salários interessantes;C, um pouco de Assembly e eletrônica são conhecimentos importantes;Cada vez mais empresas desenvolverão hardware, e cada vez mais desenvolvedores de firmware serão necessários.

Notas do Editor

  • #8: Freio ABS, Injeção Eletrônica
  • #10: Alimentador automático peixes, porta retrato digital