Embedded systems refer to devices, instruments or large engineering structures/systems that are built to handle one or a few pre-established tasks. The computer controlling the whole thing is built into or ‘embedded’ within the device. In truth, the line between ‘embedded’ systems and general purpose systems (which may or may not contain an embedded system) is becoming blurred as technology progresses.Characteristics of Embedded Systems

The key characteristic of an embedded system is that it is supposed to handle a few simple tasks, although the steps involved in handling or accomplishing that task may be as complex as any computer program.

User Interfaces

Originally, an embedded system had no user interface – information and programs were already incorporated into the system (e.g., the guidance system for an Intercontinental Ballistic Missile or ICBM) and there was no need for human interaction or intervention except to install the device and test it.


Our expertise covers many microcontroller architectures and their development tools. We focus on time-to-market, quality improvement and embedded networking applications using Controller Area Network (CAN bus), CANopen and Embedded Internetworking.

Product Development

We develop and manage a full range of PC-based tools and embedded software stacks for CAN and CANopen networks. Our software is innovative and affordable, allowing more engineers to develop projects using the CAN bus.

The engineers at INFOWIZ are experienced, knowledgeable, accessible and competent. We provide a wide range of consulting services to fit your needs. Some example technologies we work with are:

8-bit, 16-bit and 32-bit microcontrollers, including 8051, XC16x, ColdFire, ARM and ARM Cortex.
Assembler, C, C++, C# and Python.
A wide range of embedded compilers, such as Keil, GNU and CodeWarrior.
Embedded real-time operating systems, Windows CE, Windows 2000/XP/Vista/7 and Linux.
Embedded TCP/IP stacks.
Controller Area Network (CAN) and higher layer protocols such as CANopen.


ATmega16ARCHITECTUREOVERVIEW In this section,we describe the overall architecture of the Atmel AVR ATmega16. We begin with an introductionto the concept of the reduced instructionset computer (RISC) and brieflydescribe the Atmel Assembly Language Instruction Set. A brief introduction is warranted because we will be programming mainly in C throughout the course of the book. We then provide a detailed description of the ATmega16 hardware architecture. ReducedInstruction SetComputer In our first Morgan & Claypool (M&C) [1] textbook, we described a microcontroller as an entire computer system contained within a single integrated circuit or chip. Microcontroller operation is controlled by a user-written program interacting with the fixed hardware architecture resident within the microcontroller. A specific microcontroller architecture can be categorized as accumulator-based,register-based,stack-based,or a pipeline architecture. The Atmel ATmega16 is a register-based architecture. In this type of architecture, both operands of an operation are stored in registers collocated with the central processing unit (CPU). This means that before an operation is performed, the computer loads all necessary data for the operation to its CPU. The result of the operation is also stored in a register. During program execution,the CPU interactswith the registerset and minimizes slowermemory accesses.Memory accesses are typically handled as background operations.



The PIC microcontroller was developed by General Instruments in 1975. PIC was developed when Microelectronics Division of General Instruments was testing its 16-bit CPU CP1600. Although the CP1600 was a good CPU but it had low I/O performance. The PIC controller was used to offload the I/O the tasks from CPU to improve the overall performance of the system.In 1985, General Instruments converted their Microelectronics Division to Microchip Technology. PIC stands for Peripheral Interface Controller. The General Instruments used the acronyms Programmable Interface Controller and Programmable Intelligent Computer for the initial PICs (PIC1640 and PIC1650).In 1993, Microchip Technology launched the 8-bit PIC16C84 with EEPROM which could be programmed using serial programming method. The improved version of PIC16C84 with flash memory (PIC18F84 and PIC18F84A) hit the market in 1998.


interface GSM Module with PIC18F4550 Microcontroller

The Global System for Mobile (GSM) communication is the Second Generation of mobile technology. Although the world is moving towards Third and Fourth generation but GSM has been the most successful and widespread technology in the communication sector. GSM technology paved a new way for mobile communication.
This project explains the interfacing of a GSM Module with a PIC microcontroller. It also covers a way to dial a particular GSM mobile number as well as




1. Numbering and Coding System.
2. Logic Gates and Integrated circuits.
3. Computer generation.
4. Microcontroller vs Microprocessor.
5. Role of CPU.
6. Microcontroller for Embedded system.
7. History, Domain and Applications.


1. Architecture of 8051.
2. Pin Diagram of 8051
3. Pull Up Registers.
4. Port Description.
5. XTAL Connections.
6. Timers, Interrupts and Serial communication.

C & C++

1. Introduction of C (History, Version and Compiler ).
2. Variable, Keyword, Operators, Expression Data.
3. String, Array, Pointer, Memory allocation and data Structure.


1. Introduction
2. List of Registers of Microcontroller.
3. Assembler and Run.
4. Datatype and purpose of PSW.


1. LED Toggling
2. LCD 16*2
3. Message Display
4. Relay
5. Buzzer
6. DC Motor
7. Keypad
8. Stepper Motor
9. MAX 232


1. Keil
2. Proteus
3. Flash Magic


1. Computer organization, embedded computers
2. CPU organization and memory access
3. the AVR microcontroller unit and tools for the AVR MCU
4. I/O read/write and I/O bit changing instructions
5. Memory allocation and data moving instructions
6. Midterm 1 and binary numbers and other bases
7. Binary arithematic
8. Arithematic instructions
9. Decision making and branching
10. Loop control structure
11. Midterm 2 and formalized control structure translation
12. Compound conditions
13. Overall program organization
14. Stack and subroutines
15. Registers and subroutines: saving/restoring, parameters
16. Introduction to interrupts


1. Introduction to PIC architecture
2 .Comparison of PIC with other CISC & RISC based systems and Microprocessors
3. PIC family Categories and importance (10F/12F/16F/18F)
4. 16f877 / 18f4520 pin details and specifications (with package detail)
5. Instruction set / Bus architecture
6. RAM, FLASH, UART and other peripherals.
7. Interrupts, timer , Counters
8. Introduction to PIC ProBASIC programming KIT