/Firmware-Engineer-Knowledge

The knowledge mastered by embedded engineers, their own summary and review, prepare for the interview

Primary LanguageC

plan

mission options

  • [] Basics of C language
  • [] data structure simple algorithm
  • [] Hardware basics
  • [] Basic knowledge of microcontroller (51 STM32)
  • [] μC/OS II (principle + porting)
  • [] Protocol Timing Analysis (IIC,SPI,UART,232/485)
  • [] Network (TCP/IP, Network Basics)
  • [] FPGA (basic knowledge + FIFO + RS codec)
  • [] Miscellaneous (shell, git)

#Table of contents

  • Basics of C language
    • type of data
    • bit operation
    • Arrays and pointers
    • structure
    • preprocessor
    • static, const, volatile
  • Data structure + simple algorithm
    • linked list
    • stack
    • queue
    • Binary tree
    • Classic sorting algorithm
      • bubbling
      • Quick row
      • choose
      • insert
      • Heap sort
      • Hill sort
    • Binary algorithm
      • Dynamic programming
  • Basic knowledge of hardware
    • Transistor
    • register
    • number system
    • Memory knowledge
  • Basic knowledge of MCU (51+STM32)
    • Clock circuit
    • input Output
    • interrupt
    • compilation
  • μC/OS II (principle + transplantation)
    • Principle
      • Task
      • Clock and interrupt
      • Task synchronization and communication
        • signal
        • Mutex semaphore
        • Message mailbox
        • message queue
        • Semaphore set
      • Memory management
    • transplant
      • 51
      • STM32
  • Protocol timing analysis (IIC, SDIO, SPI, UART)
    • IIC
    • SDIO
    • SPI
    • UART
  • Network (TCP/IP, Basic Knowledge of Network)
    • Network level
    • OSI seven -layer model
    • TCP/IP
    • UDP
    • Routing Protocol
    • ARP/PARP
    • DNS
  • FPGA
    • Verilog language
    • Module
    • state machine
    • to be continued
  • Miscellaneous item
    • shell
    • git
  • project
    • Bluetooth lock
    • RS editor codeware