Content Sheet1

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Sheet1

C Programming for Embedded Systems – 40 hours


Lectures Outline
Introduction to C programming
Code building process
Standard I/O library
Using printf function
Hello world program
Basic Data types in C
Variables in C
Using scanf function
Lecture 1 C operators:
Arithmetic operators
Assignment ( = , *= , += , -= , /= )
Relational ( > , < , >= , <= , == , != )
Logical ( && , || , ! )
Bit wise ( & , | , ^ , << , >> , ~ )
Ternary ( ?:)
Operator "sizeof"
Operator precedence

Conditional Statements
If statement
Lecture 2
Switch statement
which is better?

Loops
"while" Loop
"for" Loop
Lecture 3
"do..while" Loop
"break" and "continue"
goto and break

Page 1
Sheet1

Functions
Defining and calling functions
Function prototypes
Lecture 4 Function parameters and return
Global VS local Scope
Special types of functions
Recursion

Arrays
Arrays in C
Multi-dimensional Array
Lecture 5
String : Array of char
Sorting Algorithms
Searching Algorithms

Pointers
Introduction to Basic Pointers
Pointer Syntax
Pass by value VS pass by reference
Lecture 6
Pointer arithmetic
Wild pointer and Dangling pointer
Pointers Vs Arrays
Pointer to String

Data Modifiers
Sign modifier
Size modifier
Lecture 7 Storage modifier
Constant modifier
Typedef and size problem
Volatility modifier

Page 2
Sheet1

User defined data types


Structures
Bit filed
Lecture 8
padding
Unions
Enum

C Preprocessor
#include directive
Lecture 9 Macros in C
Conditional directives
#error and #warning

Memory Allocation
Dynamic Memory Allocation
Lecture 10 Linked List

Embedded Systems Concepts – 8 hours


Embedded Systems definition
Embedded Systems design challenges
Inside the processor
o Control Unit
o Arithmetic Logic Unit
Lecture 1 o Register File
o Processor Buses
Instruction Set Architecture
o RISC Processor
o CISC Processor
Processor Cycle Example

Page 3
Sheet1

Volatile Memory Types


o Static RAM
o Dynamic
Non Volatile Memory Types
o Masked ROM
o OTP ROM
o EPROM
o EEPROM
lecture 2 o FLASH ROM
o NVRAM
Input Output peripherals
System Architecture
o Von Neumann Architecture
o Harvard Architecture
Pipeline processing
Microcontroller main suppliers
Reading the datasheet and specifications
Embedded Systems Interfacing – 56 hours
Digital Input Output Part 1
o Interfacing LEDs
lecture 1
o Interfacing 7-Segments
o Mechanical Switches
Introduction to layered architecture
lecture 2 Defining Microcontroller Registers
Developing DIO Driver
lecture 3 LCD Interfacing and driver
LCD custom char and Arabic char
lecture 4
Keypad Interfacing and driver
Electrical Switches
o Transistors
o Relays
o DC Motor
lecture 5
o H-bridge
o Opto-couplers
o Darlington Pair
Stepper Motor

Page 4
Sheet1

Introduction to Interrupts
Interrupt Handling Techniques
lecture 6 Digital External Interrupt
External Interrupt Driver
Analog to digital converter driver
Analog sensor
lecture 7 o Temperature sensor
o Light sensor
Interval timers driver
lecture 8 Timer in counter mode
Pulse Width Modulation
lecture 9 o Servo Motor Interfacing
o Controlling Light Intensity
Input Capture Unit
lecture 10 Ultrasonic Sensor
Watchdog timer
UART Serial Communication
lecture 11 o USB To serial
SPI Serial Communication
lecture 12 o SPI Sensor
lecture 13 I2C Serial Communication – Part 1
I2C Serial Communication – Part 2
EEPROM
lecture 14 o Internal EEPROM
o External EEPROM Interfacing
Real Time Operating Systems – 12 Hours
Real time operating systems concepts
o Basic definitions
o Scheduling Techniques
o Dynamic Design Concepts
lecture 1 o Shared Resources Analysis
o Mutual exclusion Techniques
o Inter task communications
Building Real time Scheduler
lecture 2 Porting Free RTOS on AVR – Part 1
lecture 3 Porting Free RTOS on AVR – Part 2

Embedded Systems Testing – 8 Hours

Page 5
Sheet1

Embedded Systems Development Cycle


Basic Development Patterns
Basic Testing Princeples
lecture 1 Unit Testing
Module Testing
Integration Testing
Validation Testing
White Box Testing
o Statement Coverage
o Decision Coverage
Black Box Testing
lecture 2 o Equivalence Portioning
o Boundary Values Analysis
o State Transition
o Decision Table
Exercise

Embedded Systems Tooling – 4 Hours


lecture 1 Memory Sections Linker Script Startup Code Boot loaders Make files Batch script

Automotive Bus Technology – 4 Hours


CAN Protocol Specifications
lecture 1 LIN Protocol Specifications

Page 6

You might also like