Unit 1 INTRODUCTION TO MICROCONTROLLERS, Electrical Engg 5th Semester Notes

1. INTRODUCTION TO MICROCONTROLLERS

A microcontroller is a compact integrated circuit designed to govern specific tasks in embedded systems. Unlike microprocessors, which are typically used for general-purpose computing, microcontrollers are designed to control and monitor systems with specific, often repetitive functions.

1.1. Evolution of Microcontrollers

The evolution of microcontrollers can be understood in several stages:

  1. 1970s - Early Microcontrollers: The first microcontrollers were built with minimal resources and were primarily 4-bit or 8-bit. They were introduced by companies like Intel and Texas Instruments.

    • Example: Intel 4004 (1971) and 8008 (1972).
  2. 1980s - 16-bit Microcontrollers: As technology progressed, microcontrollers became more sophisticated, moving from 8-bit to 16-bit processing. This allowed for more complex tasks.

    • Example: Intel 8051 (1980), which became widely used in embedded systems.
  3. 1990s - 32-bit Microcontrollers: The transition to 32-bit microcontrollers marked a significant increase in processing power, allowing for better performance and more memory.

    • Example: ARM microcontrollers, with more advanced architectures.
  4. 2000s and beyond - Advanced Microcontrollers: Modern microcontrollers are often based on 32-bit or even 64-bit processors with built-in peripherals like Wi-Fi, Bluetooth, and powerful ADCs (Analog-to-Digital Converters).

    • Example: ARM Cortex-M series, PIC32, and AVR32.

1.2. Block Diagram of Microcomputer

A microcomputer system typically includes several key components:

  • CPU (Central Processing Unit): The brain of the system that performs computations and controls the system.
  • Memory:
    • RAM (Random Access Memory): Temporary memory used for executing programs.
    • ROM (Read-Only Memory): Permanent memory for storing firmware and system software.
    • Cache: A high-speed memory used to store frequently accessed data.
  • Input/Output Ports: Used to interact with external devices (sensors, actuators, etc.).
  • Bus System: A system of pathways used to transfer data between the components.

Block Diagram:

Block Diagram of Microcomputer

1.3. Elements of a Microcomputer

A microcomputer typically consists of the following key elements:

  • Central Processing Unit (CPU): The core of the system that executes instructions.
  • Memory: Used for storing programs and data.
    • RAM is used for short-term data storage (volatile).
    • ROM is for storing permanent instructions (non-volatile).
  • Input/Output Interfaces: Components like keyboards, sensors, or communication modules.
  • Bus System: A collection of communication paths for data transfer.
  • Clock: A time-keeping element that synchronizes the entire system.

1.4. Types of Buses

Buses are pathways through which data is transferred between different components of a system. The types of buses include:

  • Data Bus: Carries data between the CPU, memory, and peripherals.
  • Address Bus: Carries addresses from the CPU to memory or I/O devices to specify where data should be read from or written to.
  • Control Bus: Transmits control signals to manage the operation of the computer system (e.g., read/write signals).

Diagram:

Types of Buses









1.5. Von Neumann and Harvard Architecture

There are two main types of computer architectures:

Von Neumann Architecture:

  • Single memory space is used for both data and instructions.
  • CPU fetches instructions and data from the same memory.
  • Simpler and cost-effective but slower due to shared memory for code and data.
  • Drawback: Performance is limited due to the "von Neumann bottleneck."

Diagram:

Von Neumann and Harvard Architecture


Harvard Architecture:

  • Separate memory spaces for data and instructions.
  • Faster as the CPU can fetch instructions and data simultaneously.
  • Often used in embedded systems due to speed and efficiency.

Diagram:

Harvard Architecture


1.6. Compare Microprocessor and Microcontroller

Compare Microprocessor and Microcontroller

1.7. Need of Microcontroller

Microcontrollers are needed in various applications for:

  • Cost Efficiency: Their integrated design makes them cheaper than using a full computer system.
  • Energy Efficiency: Microcontrollers are typically low power and ideal for battery-operated systems.
  • Size & Integration: Compact and can be integrated with other hardware, making them suitable for small devices.
  • Real-time Processing: Microcontrollers excel in real-time, time-critical applications like automotive, robotics, and IoT.

1.8. Family of Microcontrollers and Their Specifications

There are several popular families of microcontrollers, each catering to different applications:

1.8.1. 8051 Family (Intel 8051)

  • Architecture: 8-bit.
  • Memory: Typically 4KB ROM, 128B RAM.
  • Special Features: On-chip timers, UART, interrupt system, and parallel I/O.

1.8.2. PIC Family (Microchip)

  • Architecture: 8-bit, 16-bit, 32-bit.
  • Special Features: High flexibility, low power, wide range of peripheral modules (PWM, ADC, I2C, SPI).
  • Popular Models: PIC16, PIC18, PIC32.

1.8.3. AVR Family (Atmel, now Microchip)

  • Architecture: 8-bit.
  • Memory: Typically 32KB Flash, 2KB SRAM.
  • Special Features: High-speed execution, easy to program, available in different packages.
  • Popular Models: ATmega328, ATtiny series.

1.8.4. ARM Cortex-M Family

  • Architecture: 32-bit (ARMv7-M and ARMv8-M).
  • Special Features: Low power, excellent performance for real-time applications, vast ecosystem, and support for numerous peripherals.
  • Popular Models: STM32 series, NXP Kinetis, Atmel SAM.


Post a Comment

0 Comments