Advanced C
Introduction
- What is a program?, What is a programming language?, Evolution of C language, Features of C, Structure of a C program, Compilation and execution?
- Keywords in C, constants, variables, data types, Comments in C, Format strings, escape sequences, Basic I/O instructions.
Operators:
Classification of operators
- Arithmetic operators
- Relational operators
- Logical operators
- Assignment operators
- Increment/Decrement operators
- Bitwise operators
- Conditional operator
- Other operators
Flow Control Instructions:
Decision Control Instructions
- If, if-else, if-else-if, nested if-else Loop control instructions
- For loop, while loop, do while, use of break and continue Selection instructions
- Switch
Functions
- Arrays
- Pointers
- Strings
- Structures and Unions
- Storage classes and scoping
- Files
- Other Features
- Preprocessor
OBJECT ORIENTED PROGRAMMING C++
Introduction to C++
- Introduction to Object Oriented Programming
- Procedure Oriented Vs Object Oriented
- Difference between C and C++
- C++ Output/ Input
- Keywords in C++
- New Style of header files Specification
- Comments in C++
- Variables in C++
Classes and Object
- a. Structures in C
- b. Structure in C++
- c. Access Specifier
- d. Classes
- e. Objects in C++
More on Classes and Objects
- Dynamic Memory Management
- Constructor and Destructor
- Inheritance
- Virtual Functions and Inheritance
- Operator Overloading
- Constructor- Destructor Invocation
- Templates
- Exception Handing
- Working with input and output and files
- Basic understanding of standard template library
- the string of C++
- Miscellaneous concept of C++
8051 MICRO CONTROLLER
Introduction to Embedded systems
- What is Embedded System?
- Types of Embedded System
- Classifications of Embedded Systems
- Characteristics of an Embedded System
- Applications of embedded system
8051 (8-bit) microcontroller Architecture & Programming
- Block diagram and Pin description
- Ports
- Timers
- Serial communication
- Interrupts
Lab Sessions:
- Session 1: Software Introduction (Keil Micro vision), Projection Creation
- Session 2: Port programming
- Session 3: Timer programming
- Session 4: Serial Communication
- Session 5: Interrupts
- Session 6: Practice
89S52 Interfacing with
- Session 1: PCB Express Tool
- Session 2: Seven segment display
- Session 3: LED's
- Session 4: LCD (16*2)
- Session 5: Keypad (4*4)
- Session 6: LCD & Keypad
- Session 7: Keypad & Serial
- Session 8: ADC (0809)
- Session 9: DC Motor
- Session 10: Stepper Motor
- Session 11: Relay
89S52 Interfacing with Modules
Different Types of Modules, Features of Different Modules, and Uses of Different modules interface
- Session 1.RFID
- Session 2.GSM
- Session 3.GPS
- Session 4: Zigbee Session
- 5: Finger print
- Session 6: Voice Module
Practical Projects
- RFID and Keypad based ATM security.
- GSM based electrical Device Control.
- GPS Data Logger
- Zigbee based wireless data communication system.
- GSM & GPS based Vehicle Tracking
- RFID based time and Attendance
ARM7 MICRO CONTROLLER
ARM (32-bit) Processor Architecture & Programming
Introduction to ARM7
- Introduction to ARM family
- LPC2148 features
- Block diagram and pin description
- Register set
- Ports
- Timers
- Serial communication
- Interrupts
Lab Sessions
- Session 1: Software Introduction (Keil Micro vision)
- Session 2: Port programming
- Session 3: Timer programming
- Session 4: Serial Communication
- Session 5: Interrupts
- Session 6: Practice
LPC2148 interfacing with Modules
- Session 1: Seven segment display
- Session 2: LED's
- Session 3: LCD (16*2)
- Session 4: Keypad (4*4)
- Session 5: LCD & Keypad
- Session 6: Keypad& Serial
- Session 7: ADC (0809)
- Session 8: DC Motor
- Session 9: Stepper Motor
- Session 10: Relay
LPC2148: Interfacing with Modules
Different Types of Modules, Features of Different Modules, and Uses of Different Modules interface
- Session 1.RFID
- Session 2.GSM
- Session 3.GPS
- Session 4: ZIGBEE
- Session 5: Finger print Session
- 6: Voice Module
LINUX OPERATING SYSTEM
Operating Systems
Learning of operating system concepts will help you in understanding Desktop, Embedded & Real-time Operating Systems easily in less time.
- Introduction
- Processes
- Threads
- CPU Scheduling
- Process Synchronization
- Deadlocks
- Memory management
- Virtual Memory
- File management & Disk management
Linux Basic Commands Linux System programming
- Program, Process, Process IDs,
- Processes Priorities, Process States, CPU Scheduling
- Process Management API ? fork, vfork, exec, wait and exit.
- Zombie and Orphan Process
- Pthread Programming and Thread Attributes
- Process Synchronization Techniques
- Semaphores, Mutex, Spinlock, Memory Barriers
- Inter Process Communication Techniques
- Pipe, FIFO, Signals, Shared Memory
- Timer API ? Jiffies, kernel Timers, wait queues, sleeps
- Interrupt and Exception API ? Task lets, Work queues
- Kernel Debugging ? kgdb, printk, jprobs, kprobs
Linux Device Drivers Programming
- Introduction to Device Drivers
- Device Number, Major and Minor Numbers
- Inbuilt and Modular Drivers
- User Space and Kernel Space Communication.
- dev directory and device files
- Character, Block and Network Driver.
- Advanced Driver API ? fcntl,ioctl
- Unified Device Model (udev)
- Proc File System, sys file system.
- usbfs file system.
- Character Device Driver Programming
- Block Device Driver Programming
- Serial Port Driver Programming
- Parallel Port Driver Programming
- USB Device Driver Programming
- Network (Ethernet) Driver Programming
- Flash Drive Driver Programming
Linux Network Programming
- Networking Architecture in Linux.
- TCP/IP defector model and layer in kernel.
- Client ? Server Programming API.
- TCP, UDP, RAW, UNIX, FTP, TFTP
- VOIP Protocol Programming.
- Arithmetic Server, Concurrent Server.
- Broadcast Server Programming
- Wireless Architecture and Programming
Real -Time Operating System (RTLinux) Programming
- Real Time Concept, RTLinux Installation.
- Scheduling and Preemption Programming.
- GPOS and RTOS API Programming.
- FIFO and Round Robin Scheduling Programming
- Task Management, synchronization, Intertask Communication
- Timers, Interrupt API in RTOs.
- Signals, Events handling API in RTOs.
- Priority Inversion/Inheritance.
ARM 9/ARM11? Linux Programming
- ARM Architecture and ARM Processor family.
- ARM Microcontroller ICs in Market.
- ARM Development Boards and features.
- Friendly ARM Development Boards.
- Mini2440, Mini6410, Mini210 Development Boards.
- Raspberry Pi Development Board.
- Beagle Bone Development Board.
- Boot loader Configuration and Compilation for ARM
- Kernel Configuration and Compilation for ARM.
- File System Configuration and Compilation for ARM.
- Porting Linux / Android OS on Development Boards.
- DNW Tools, USB Push, Hyper Terminal Tool.
QT CREATOR-OPENCV-ARM9/ARM11/ARM CORTEX A7
- Installing QT Framework.
- Installing Opencv and Pocket Sphinx.
- Application Development Using QT Creator.
- Sensors and modules Programming in QT Creator.
- Wireless Protocol Programming in QT Creator.
- Image and Video Processing Programming in Opencv.
- Audio Processing Programming in Pocket Sphinx.
- Interfacing Opencv with QT Creator.
- Interfacing Pocket Sphinx with QT Creator.
- Creating HTML and HTTP pages for ARM Board.