Curso Firmware Development

  • Development

Curso Firmware Development

24 Horas
Visão Geral

Curso Firmware Development, ajudará você a dominar as habilidades de desenvolvimento de software embarcado em soluções de Firmware. Nossas soluções práticas e aprofundadas o ajudarão a desenvolver projetos de desenvolvimento de Firmware por meio de microcontroladores baseados em ARM. Você também receberá dois projetos de Firmware em tempo real sob a orientação de instrutores de Firmware certificados durante o treinamento, que o ajudarão a passar no Exame de Certificação de Firmware.

Objetivo

Após realizar este  Curso Firmware Development, você será capaz de

  • Aprenda programação incorporada em C e microcontrolador.
  • Use um sistema operacional em tempo real (RTOS) para o desenvolvimento de aplicativos.
  • Aprenda a desenvolver um firmware para um aplicativo específico usando a ficha técnica do dispositivo.
  • Obtenha uma visão geral dos compiladores, controladores e outras ferramentas de desenvolvimento.
  • Desenvolver projetos de desenvolvimento de firmware orientados a interrupções.

Por que você deve aprender Desenvolvimento de Firmware?

  1. A demanda por profissionais de Firmware está aumentando rapidamente com os desenvolvimentos mais recentes ocorrendo em tecnologia embarcada.
  2. Devido à alta demanda por Desenvolvimento de Firmware, existem inúmeras oportunidades de trabalho disponíveis em todo o mundo.
  3. As principais empresas multinacionais estão recrutando profissionais de Firmware certificados.
  4. Os profissionais de firmware estão ganhando muito mais salários do que os profissionais que trabalham em outras tecnologias.
Publico Alvo
  • profissionais que acabaram e se forma na faculdade,
  • profissionais que atuam com eletrônica, ciência da computação entre outras áreas 
  • Profissional de software embarcado
  • Profissional de firmware
Pre-Requisitos

Não há pré-requisitos específicos para participar deste curso

  • Qualquer pessoa que queira construir sua carreira no domínio embarcado e Firmware pode participar deste treinamento.
  • Ter conhecimento de sistemas embarcados é uma vantagem adicional.
  • Conhecimento básico de C e Micro controlador pode ser uma vantagem, mas não obrigatório
Materiais
Português/Inglês
Conteúdo Programatico

Microcontrollers

  1. Overview of 8051 architecture, Stack, Queues, Pipeline, Boot loader
  2. Application code area
  3. Secondary Boot loader.

Machine Level Programming

  1. Binary format
  2. Hardware storage methods.

Assembly Level Programming

  1. Op codes
  2. Mnemonics
  3. Assemblers Vs Compiler’s
  4. Instruction sets.

ANSI Standard Embedded C & Advanced C Programming

  1. Why C? Why Not assembly/machine languages
  2. Fundamentals of C
  3. ANSI standards
  4. Industry Coding standards
  5. Hex file generation process
  6. Conditional statements, Loops, Functions, Arrays, Strings, Storage classes, Structures & union
  7. Enumerated data types
  8. Bit operations, Pointers
  9. Dynamic memory allocations
  10. File handling concepts
  11. Data structures, Array of pointers, Pointers and dynamic memory structures
  12. Union and structure uses differences
  13. Sorting and searching techniques
  14. Managing data in arrays
  15. Operations on arrays Vs strings
  16. Managing data in linked lists
  17. Testing of modules, Test drivers, test stubs
  18. Single linked lists operations,
  19. Doubly linked lists maintaining data, Stack, queue operations using arrays
  20. Linked lists queue using arrays
  21. Circular linked list
  22. Linear search, Binary search, Hash-based search
  23. Development tools and environment
  24. Creating make files
  25. GDB debugging of programs
  26. Development Tools and Environments
  27. Debugging techniques.

Mini Project

  1. Project on C and data structures.

Object Oriented Programming With C++

  1. Overview and Characteristics
  2. Function overloading
  3. Scope resolution operator
  4. Class in C++, Access Specifiers, Constructor, Destructor, Static members, Functions, Friend Classes, Friend Functions, Operator Overloading, Data Conversions, Inheritance, Polymorphism
  5. Exception Handling
  6. Templates
  7. Input and Output stream

Microcontroller Programming

  1. Cross compilers
  2. Embedded C programming
  3. Embedded C debugging
  4. Memory models
  5. Library reference
  6. #pragma directives

On Chip Peripherals

  1. Ports: INPUT/OUTPUT
  2. Timers/counters
  3. Interrupts, UART, Debugger.

Externals Interface

  1. LED, LCD, Switches
  2. Seven segment display
  3. Keyboard Matrix, TFT LCD, Touch Screen.

Common Protocols

  1. 12C, SPI
  2. Industrial Protocols
  3. CAN
  4. Modbus and SMBUS
  5. I2S
  6. Zigbee Wi-Fi, Bluetooth, GPS, GPRS, USB, Memory card, Ethernet.

ARM

  1. Introduction
  2. Core features
  3. Version history
  4. Data flow model, Registers, CPU modes
  5. Memory organization, Interrupts, Pipelining
  6. ARM assembly language programming
  7. Addressing modes, ARM 7 instruction set, (20% 7 instruction set), (20/80%-rule of assembly language),
  8. Usage of kEIL IDE
  9. Demonstrating ARM ISA
  10. Demonstrating THUMB ISA,
  11. ARM embedded C languages Implementation,
  12. Exposure to an ARM7 CPU
  13. Core based microcontroller
  14. LPC2114-ARM based Microcontroller from Philips
  15. Semiconductors
  16. On-chip system peripherals bus Structure (AMBA)
  17. Memory map
  18. Phase locked loop
  19. VPB divider
  20. On-chip user peripherals
  21. General purpose I/O: demo, Using switch & LED, Vector interrupt controller (VIC), External interrupts demos.

Networking And TCP/IP Applications

Network structure

Classifications and Topologies

Switching and routing

Gateway, Repeater, Hub, Bridge, OSI layers, TCP/IP layers

Physical and logical address, ARP & RARP, Internet protocol, Routing protocol and IP datagrams

Error and Control Messages (ICMP) UDP

Transfer Control Protocol

TCP networking Applications, FTP, TFTP, TELNET, DNS, DHCP, SNTP, POP3, IMAP, SNMP.

Socket Programming

  1. Overview
  2. Concurrent processing
  3. Programming interface
  4. Socket interface
  5. Client/server design
  6. Concurrent connection-oriented servers
  7. Socket calls for TCP and UDP
  8. Single process
  9. Concurrent servers
  10. Implementation of TFTP/SMTP.

RTOS RT-LINUX

  1. RT-Linux
  2. Different types of operating systems
  3. RTOS basics-Linux as real-time
  4. RTOS introduction (hard Real-time, soft real time)
  5. Latency in Linux
  6. Priority inheritance
  7. Linux 2.6 features for real-time
  8. 2.6 kernel compilation
  9. RT LINUX patching
  10. Linux RT PREEMPT patches
  11. Configuring the kernel with RT-PATCH
  12. Implementation of real-time application
  13. Linux real-time API
  14. Measuring and comparing scheduling latency in standard Linux and in RT-Linux with the latest RT patches
  15. Porting RT-Linux on arm and application development.
TENHO INTERESSE

Cursos Relacionados

Curso Python Programação Advanced

32 horas

Curso SAP ABAP S4hana Developer Foundation

32 horas

Curso Full Stack and React Essentials

32 Horas

Curso Node.js for JavaScript Developers

24 horas

Curso Elasticsearch for Developers

16H

Curso Elastic Stack Foundation

24 horas

Curso Apache Spark™ Foundation

8 Horas