Uploaded by omkalsait.ok

Firmware Development Course Curriculum TEKSLATE

advertisement
Firmware Development – Course Curriculum
What is Firmware?

What is the Difference between a firmware and software?
Architectures

Von Neumann Architecture

Harvard Architecture

AVR Architecture

PIC Architecture

ARM Architecture
What is RISC and CISC?
Microprocessors and microcontrollers back then and now

Boundaries between microcontrollers and microprocessor back then

New Boundaries between microcontrollers and microprocessor
Wired Protocols

I2C

SPI

UART

USART

CAN Bus Protocol

EtherNet/IP

Profibus

Profinet

CANOpen

Modbus/TCP

RS232

RS485

TCP/IP
Wireless Protocols

WiFi

BT

BLE 4.2 or 5.0 with Mesh

LoRaWAN
Firmware Development – Course Curriculum

6LoWPAN

Zigbee

Sub-GHz RF
Knowledge of wireless industry standards with preference to including IEEE
802.11a/b/g/n/ac/ax
JTAG and USB ASP
DSP Assembly Programming
Introduction to RTOS and FreeRTOS

Introduction to Vxworks
What are PLA, PAL, FPGA?
Types of Memories

Flash Memory

RAM

SDRAM

ROM

PROM

EPROM

EEPROM
What is Cache memory?
What is pipelining?
Introduction to ARM TrustZone and Secure OS like

OPTEE for Trusted Execution Environment (TEE)
Comprehensions of

ARM /X86 Boot flow

ARM memory initialization,

BootROM architecture and

UBoot development
Firmware Development – Course Curriculum
Arduino and AVR

Arduino Open Source Software.

Advantages of Proteus IDE.(No hardware Required).

Development Boards.

Arduino Uno development Board.

Hardware explantion.

Atmega 328P explanation

I/O

Registers

Timers

Counters

Interrupts

Special function Registers

Interfacing LCD (16x2)
a. Display
b. Digital Clock
c. Scrolling Name


Right to left and then left to right

Up to down and then down to up
Example programs to explain: Registers, Timers, Counters, Interrupts,
Special function Registers

Protocols
.
I2C
a.
SPI
b.
UART
c.
USART

Introduction to Arduino IDE

Introduction to Atmel Studio

Introduction to Arduino Uno R3

Explanation of Microcontroller ATMEGA328P

LED Blink with Arduino UNO & AVR controller

PWM Output generation arduino & AVR

Reading Analog Data with Arduino UNO

Interfacing LDR and Program automatic street light

Interfacing Servo Motor

Interfacing Stepper Motor

Interfacing simple DC Motor
Firmware Development – Course Curriculum

CAN Bus implementation

BLDC Motor

Encoder, Decoder
Experience working with (Git, Subversion)
Introduction to AVR Studio
Introduction to firmware development and testing tools

GDB

Valgrind

SCA
PIC Mircrocontrollers

Introduction to PIC18F

Introduction to MPLAB X

Input/Output

Automatic Street Light

Programming with some examples

I2C

UART

SP I
ARM Microprocessor

Introduction to stm32f103c8t6 ARM based microprocessor development
board and ARM Cortex M4 hands-on.

Programming via Arduino IDE

Programming via Keil IDE.

Introduction to ARM Processor Families

LED Blinking

Boot Loading via stlink

Debugging

CAN Bus implementation

Multi-threading(RTOS) hands-on

Protocols
a.
I2C
b.
SPI
Firmware Development – Course Curriculum
c.
UART
d.
USART
IOT

Bluetooth Protocol

Program with HC06(AT Commands)

WiFi Protocol

Program with ESP8266(AT Commands)

Local Area Network using ESP8266

Server Connection

(Host and Client)

Introduction to Zigbee

Programming and control with Zigbee

LoRa Protocol and modules

Introduction to LoRa Module

Communication between two devices using LoRa
Download