An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal computer (PC), is designed to be flexible and to meet a wide range of end-user needs.Modern embedded systems are often based on microcontrollers (i.e. CPUs with integrated memory and/or peripheral interfaces) but ordinary microprocessors (using external chips for memory and peripheral interface circuits) are also still common, especially in more complex systems. In either case, the processor(s) used may be types ranging from rather general purpose to very specialised in certain class of computations, or even custom designed for the application at hand. A common standard class of dedicated processors is the digital signal processor (DSP).
Introduction to Embedded Systems.
C/C++ Programming II : Dynamic Memory and File I/O Concepts.
It is a 20 days program and extends up to 2hrs each.
The format is 40% theory, 60% Hands-on.
It is a 5 days program and extends up to 8hrs each.
The format is 40% theory, 60% Hands-on.
Private Classroom arranged on request and minimum attendies for batch is 4.
Basic and Advance C Topic
Part 1 - Variables and Arithmetic Expressions
The for statement
Character Input and Output
Arguments - Call by Value
External Variables and Scope
Part 2 - Types, Operators and Expressions
Data Types and Sizes
Relational and Logical Operators
Increment and Decrement Operators
Assignment Operators and Expressions
Precedence and Order of Evaluation
Part 3 - Control Flow
Statements and Blocks
Loops - While and For
Loops - Do-While
Break and Continue
Goto and labels
Part 4 - Functions and Program Structure
Basics of Functions
Functions Returning Non-integers
The C Preprocessor
Part 5 - Pointers and Arrays
Pointers and Addresses
Pointers and Function Arguments
Pointers and Arrays
Character Pointers and Functions
Pointer Arrays; Pointers to Pointers
Initialization of Pointer Arrays
Pointers vs. Multi-dimensional Arrays
Pointers to Functions
Part 6 - Structures
Basics of Structures
Structures and Functions
Arrays of Structures
Pointers to Structures
Part 7 - Input and Output
Standard Input and Output
Formatted Output - printf
Variable-length Argument Lists
Formatted Input - Scanf
Error Handling - Stderr and Exit
Line Input and Output
Character Class Testing and Conversion
Random Number generation
Part 8 - The UNIX System Interface
Low Level I/O - Read and Write
Open, Creat, Close, Unlink
Random Access - Lseek
Example - An implementation of Fopen and Getc
Example - Listing Directories
Example - A Storage Allocator
Part 9 - Missileneous
Meaning of Identifiers
Objects and Lvalues
Integer and Floating
Pointers and Integers
Pointers to Void
Bitwise AND Operator
Bitwise Exclusive OR Operator
Bitwise Inclusive OR Operator
Logical AND Operator
Logical OR Operator
Storage Class Specifiers
Structure and Union Declarations
Meaning of Declarators
Scope and Linkage
Macro Definition and Expansion
Embedded System Introduction and Basic Concept
Part 10- Embedded C Introduction and Taking programming under Embedded C.
Difference Between C and Embedded C.
Introduction to Important Embedded Peripherals - SRAM, NVRAM, DRAM, EPROM, EEPROM, Flash, FRAM.
Introduction to Embedded C Compiler(gcc, Keil).
Introduction to Assembly Language Programming(x86) based.
Part 11- Embedded Protocols
Serial Peripheral Interface(SPI)
Inter IC Communication(I2C)
Part 12 – Explaning ARM7 Based 32-bit microcontroller(AT91SAM7x256) with keil IDE and workout with Embedded programes.
Understanding ARM Architecture.
Von Neumann vs Harvard architecture
Hand on Experience with the KEIL IDE.
Comparison between 8-bit to 32-Bit Controller.
Understanding the Architecture of 32-bit Controller(AT91SAM7x256).
Port Programming for the AT91SAM7x256. Toggling Port and Toggling LEDs.
Programming the peripheral for controller AT81SAM7x256.
Part 13 – Explaining the study of technical datasheet.
Operating System Concept
Overview of operating systems, functionalities and charateristics of OS.
Hardware concepts related to OS, CPU states, I/O channels, memory hierarchy, microprogramming
The concept of a process, operations on processes, process states, concurrent processes, process control block, process context.
UNIX process control and management, PCB, signals, forks and pipes.
Interrupt processing, operating system organisation, OS kernel FLIH, dispatcher.
Job and processor scheduling, scheduling algorithms, process hierarchies.
Problems of concurrent processes, critical sections, mutual exclusion, synchronisation, deadlock.
Mutual exclusion, process co-operation, producer and consumer processes.
Semaphores: definition, init, wait, signal operations.
Use of semaphores to implement mutex, process synchronisation etc., implementation of semaphores.
Critical regions, Conditional Critical Regions, Monitors, Ada Tasks.
Interprocess Communication (IPC), Message Passing, Direct and Indirect