You are on page 1of 26

CHAPTER 1

SUBJECT=ADVANCED MICROCONTROLLER
DEPARTMENT= MECHATRONICS DEPARTMENT
FACULTY NAME= ALPITA MAKWANA
Opearting system
• An operating system (OS) is the program that, after being
initially loaded into the computer by a boot program,
manages all of the other application programs in a computer.
The application programs make use of the operating system
by making requests for services through a defined application
program interface (API). In addition, users can interact directly
with the operating system through a user interface, such as a
command-line interface (CLI) or a graphical UI (GUI).
 What are the functions of an operating system?
• An operating system provides three essential
capabilities: It offers a UI through a CLI or GUI; it
launches and manages the application execution; and it
identifies and exposes system hardware resources to
those applications -- typically, through a standardized
API.
• UI. Every operating system requires a UI, enabling
users and administrators to interact with the OS in
order to set up, configure and even troubleshoot the
operating system and its underlying hardware.
Types Of Opearting System
• Batch Operating System
• Multi-Programming System
• Multi-Processing System
• Multi-Tasking Operating System
• Time-Sharing Operating System
• Distributed Operating System
• Network Operating System
• Real-Time Operating System
Characteristic of real time OS
• Time Constraints: Time constraints related with real-time systems simply means that time interval
allotted for the response of the ongoing program. This deadline means that the task should be
completed within this time interval. Real-time system is responsible for the completion of all tasks
within their time intervals.
• Correctness: Correctness is one of the prominent part of real-time systems. Real-time systems
produce correct result within the given time interval. If the result is not obtained within the given
time interval then also result is not considered correct. In real-time systems, correctness of result is
to obtain correct result in time constraint.
• Embedded: All the real-time systems are embedded now-a-days. Embedded system means that
combination of hardware and software designed for a specific purpose. Real-time systems collect
the data from the environment and passes to other components of the system for processing.
• Safety: Safety is necessary for any system but real-time systems provide critical safety. Real-time
systems also can perform for a long time without failures. It also recovers very soon when failure
occurs in the system and it does not cause any harm to the data and information.
• Concurrency: Real-time systems are concurrent that means it can respond to a several number of
processes at a time. There are several different tasks going on within the system and it responds
accordingly to every task in short intervals. This makes the real-time systems concurrent systems.
• Distributed: In various real-time systems, all the components of the systems are connected in a
distributed way. The real-time systems are connected in such a way that different components are
at different geographical locations. Thus all the operations of real-time systems are operated in
distributed ways.
Characteristic of real time OS
• Stability: Even when the load is very heavy, real-time systems respond in the time constraint i.e.
real-time systems does not delay the result of tasks even when there are several task going on a
same time. This brings the stability in real-time systems.
• Fault tolerance: Real-time systems must be designed to tolerate and recover from faults or errors.
The system should be able to detect errors and recover from them without affecting the system’s
performance or output.
• Real-time communication: Real-time systems often require real-time communication between
different components or devices. The system must ensure that communication is reliable, fast, and
secure.
• Resource management: Real-time systems must manage their resources efficiently, including
processing power, memory, and input/output devices. The system must ensure that resources are
used optimally to meet the time constraints and produce correct results.
• Scalability: Real-time systems must be scalable, which means that the system must be able to
handle varying workloads and increase or decrease its resources as needed.
• Security: Real-time systems may handle sensitive data or operate in critical environments, which
makes security a crucial aspect. The system must ensure that data is protected and access is
restricted to authorized users only.
Types of mobile OS
• 1. Android OS: The Android operating system is the most popular operating
system today. It is a mobile OS based on the Linux Kernel and open-source
software. The android operating system was developed by Google. The first
Android device was launched in 2008.
• 2. Bada (Samsung Electronics): Bada is a Samsung mobile operating system that
was launched in 2010. The Samsung wave was the first mobile to use the bada
operating system. The bada operating system offers many mobile features, such as
3-D graphics, application installation, and multipoint-touch.
• 3. BlackBerry OS: The BlackBerry operating system is a mobile operating system
developed by Research In Motion (RIM). This operating system was designed
specifically for BlackBerry handheld devices. This operating system is beneficial for
the corporate users because it provides synchronization with Microsoft Exchange,
Novell GroupWise email, Lotus Domino, and other business software when used
with the BlackBerry Enterprise Server.
• 4. iPhone OS / iOS: The iOS was developed by the Apple inc for the use on its
device. The iOS operating system is the most popular operating system today. It is
a very secure operating system. The iOS operating system is not available for any
other mobiles.
Types of mobile OS
• 5. Symbian OS: Symbian operating system is a mobile operating system
that provides a high-level of integration with communication. The Symbian
operating system is based on the java language. It combines middleware
of wireless communications and personal information management (PIM)
functionality. The Symbian operating system was developed by Symbian
Ltd in 1998 for the use of mobile phones. Nokia was the first company to
release Symbian OS on its mobile phone at that time.
• 6. Windows Mobile OS: The window mobile OS is a mobile operating
system that was developed by Microsoft. It was designed for the pocket
PCs and smart mobiles.
• 7. Harmony OS: The harmony operating system is the latest mobile
operating system that was developed by Huawei for the use of its devices.
It is designed primarily for IoT devices.
• 8. Palm OS: The palm operating system is a mobile operating system that
was developed by Palm Ltd for use on personal digital assistants (PADs). It
was introduced in 1996. Palm OS is also known as the Garnet OS.
• 9. WebOS (Palm/HP): The WebOS is a mobile operating system that was
developed by Palm. It based on the Linux Kernel. The HP uses this
operating system in its mobile and touchpads.
Embedded characteristic
• 1. Specificity
• Embedded systems can either be domain-specific or task-specific.
• An embedded system is designated to perform the dedicated task only, it cannot be made to perform several automated
functions from different inputs.
• Let me give you a basic example, you can only wash clothes in a washing machine, it cannot cook food so this is a task-
specific embedded system.
• Meanwhile, domain-specific embedded systems fall under certain domains or categories such as a mobile embedded system
is a domain-specific embedded system.
• 2. Strict Design Parameters
• The design metrics are pre-defined for every system but they are configurable to a great extent, or we can say there is room
for additions and extensions in systems other than embedded systems.
• But there is very little room for extensions and additions in an embedded because we have to fix everything on a single chip,
that can perform its designated function independently, as we have already discussed the components of an embedded
system you can understand this very well by now!
• 3. Efficiency
• An embedded system must be efficient enough to react and respond to the real-time environment.
• In certain real-time embedded systems, a system has to react according to the real-time situation and adjust accordingly
such as the air conditioner works on the same principle.
• The cruise control of a car also works in a real-time response manner by reacting to the real-time situation hence managing
the speed and brakes.
• 5. Exclusive Memory
• Embedded systems don't have a secondary memory, their memory is present in embedded software in the form of ROM.
• Embedded systems can't have their memories extended or configured, have you thought why? Let me tell you because they
are not general-purpose computers we use normally! They are dedicated systems for special tasks!
• 6. Multi-Rate Operational System
• Some of the large-scale embedded systems are multi-rate operational systems i.e a large number of embedded systems are
performing their dedicated functions independently to run a system.
• All the multi-rate operational, embedded systems are well articulated to work synchronously with each other.
• A car is such an example, many embedded systems work independently to keep a car on road.
Embedded characteristic
• 7. Compact Design
• An embedded system is designed to compact and lightweight as everything is to be placed on a single chip
to perform a task including the microcontroller, timer, I/O parts, and the embedded software as well.
• 8. Minimal Power Dissipation
• Embedded systems are designed in such a way to dissipate power at its minimal.
• The goal is to conserve power and prevent overheating of the system by adding in heat sinks and cooling
fans, and sometimes a larger battery is used to run the system.
• 9. Sophisticated Functionality
• Embedded systems are highly advanced and developed these days, which are not aware of the
sophisticated functionalities of mobile phones and tablets.
• They are designed to perfection keeping in view the needs and demands of the consumer market!
• Every other person wants to own an Apple iPhone, isn't it? Just because of their sophisticated
functionality!
• 10. Minimal User Interface
• Have a brief look at your air conditioner, your oven, or your washing machine, you might have noticed one
thing in common, a minimal user interface.
• Embedded systems are designed with minimal user interface because users have almost nothing to do by
themselves, you only have to provide the input or we can say instructions, the system is already fully
automated to perform the designated task accordingly!
• 11. Safety Factor
• A safety analysis is always necessarily carried out for the embedded systems to ensure the safety of the
operator and the environment in case of any material damage or hazardous emissions from the system.
• 12. Cost-Effective
• An embedded system is designed in such a way to make it cost-effective, overall the circuit is small since
everything is present on a single chip.
• A compact design and designated functionality make an embedded system less costly and high speed.
Microcontrollers Types According to
Instruction Set
• CISC: CISC is a Complex Instruction Set Computer.
It allows the programmer to use one instruction
in place of many simpler instructions.
• RISC: The RISC stands for Reduced Instruction set
Computer, this type of instruction sets reduces
the design of microprocessor for industry
standards. It allows each instruction to operate
on any register or use any addressing mode and
simultaneous access of program and data.
Based on architecture
• Harvard Memory Architecture Microcontroller:
The point when a microcontroller unit has a
dissimilar memory address space for the program
and data memory, the microcontroller has
Harvard memory architecture in the processor.
• Princeton Memory Architecture Microcontroller:
The point when a microcontroller has a common
memory address for the program memory and
data memory, the microcontroller has Princeton
memory architecture in the processor.
Harvard /von-neumann arch
• AVR Microcontrollers

• AVR stands for Advanced Virtual RISC.AVR


microcontroller is developed by Alf-Egil Bogen
and Vegard Wollan from Atmel Corporation. The
AVR microcontrollers are modified Harvard RISC
architecture with separate memories for data and
program and the speed of AVR is high when
compared to 8051 and PIC. The AVR stands
for Alf-Egil Bogen and Vegard Wollan’s RISC
processor.
Features of AVR Microcontroller
• 16KB of In-System Programmable Flash
• 512B of In-System Programmable EEPROM
• 16-bit Timer with extra features
• Multiple internal oscillators
• Internal, self-programmable instruction flash memory up to 256K
• In-system programmable using ISP, JTAG or high voltage methods
• Optional boot code section with independent lock bits for
protection
• Synchronous/asynchronous serial peripherals (UART/USART)
• Serial peripheral interface bus (SPI)
• Universal serial interface (USI) for two/three-wire synchronous data
transfer
• Watchdog timer (WDT)
• Multiple power-saving sleep modes
• 10-bit A/D Converters, with a multiplex of up to 16 channels
• CAN and USB controller support
• Low-voltage devices operating down to 1.8v
Applications of AVR Microcontroller
• There are many applications of AVR
microcontrollers; they are used in home
automation, touch screen, automobiles,
medical devices, and defense.
PIC microcontroller
• PIC is a peripheral interface controller, developed by
the general instrument’s microelectronics, in the year
1993.
• PIC microcontroller is the smallest microcontroller in
the world and are programmed to execute large
number of operations. These were initially designed to
support PDP (programmed data processor) computers,
for controlling the peripheral devices. It is based
on RISC architecture.
• PIC microcontrollers hold the ability of faster execution
of programs than microcontrollers.
PIC features
• RISC architecture
• Watchdog Timer with separate RC oscillator
• Wide operating Voltage range; 2.0V to 5.5V
• 10-bit ADC
• Master Synchronous Serial Port supports SPI™ and I2C™ master and slave mode
• EUSART module including LIN bus support
• Four Timer modules
• Up to 5 PWM outputs
• Up to 2 Capture / Compare
PIC application
• PIC can be used to design Data Acquisition
System
• Digital clock can be implemented using PIC
• Frequency counter is another application
• PIC can be used as Timers, counters
• We can design a calculator using PIC
ARM Controller
• The ARM stands for Advanced RISC Machine and basically it is
available as a 32-bit RISC microcontroller. It was first introduced by
the Acron Computer’s Organization in 1987.
• There are different types of MCU manufacturers that create this
board are ST Microelectronics and Motorola.
• This module has different categories such as ARMv1, ARMv2, and
each module provides its own features.
• As it used RISC or a reduced instruction set which helps to reduce
the physical dimension of the integrated circuit so it uses a small
number of transistors for its creation.
• As this model exists in small size so different devices such as mobile
phones, tablets, and other handheld devices comprise of this board.
• With the combination of an ARM with random access memory and
read-only memory, we get different types of controllers such as
LPC2148.
ARM features
• High performance
• low power consumption
• Simple addressing modes
• Small instruction set
• Single cycle execution
• ADC,DAC
• Timers, counter
ARM Application
• This board is used in different types of
techniques used in space and aerospace.
• Different types of medical devices such as MRI
machines, computed tomography scanners,
and ultrasound machines.
• It is used in different types of accelerators,
nuclear reactors, and X-ray machines.
AVR TYPES
• TinyAVR
Less memory, small size and suitable only for simpler
applications.
• MegaAVR
These are the most popular ones, they have good
amount of memory (upto 256 KB), higher number of
inbuilt peripherals and is suitable for moderate to
complex applications.
• XmegaAVR
It is mostly used commercially for complex
applications, which require large program memory and
high speed
ARCHITECTURE
Architecture Theory
• Data BUS 8 bit : Its an 8-bit parallel data lines by which the data travels inside the MCU
(NOTE: this is the reason why AVR is an 8-bit MCU).
ALU: Arithmetic Logic Unit, the core/heart of the entire system where typically all commands
get executed.
Data SRAM: The SRAM (Static Random Access Memory) of the AVR microcontroller is just like
computer RAM. While the registers are used to execute calculations, the SRAM is used to
supply data through the runtime. This volatile memory is prearranged in 8-bit registers.
EEPROM: The term EEPROM stands for Electronically Erasable Read-Only Memory is like a
nonvolatile memory, but you can’t run a program from it, but it is used as long time storage.
The EEPROM doesn’t get removed when the IC loses power. It’s a great place for storing data
like device parameters and configuration of the system at runtime so that it can continue
between resets of the application processor. One significant fact to note is that the EEPROM
memory of the AVR has a limited lifetime of 100,000 writes / EEPROM page – reads are
limitless. Keep this in mind in your application and try to keep writing to a minimum, so that
you only write the small amount of info required for your application every time you update
the EEPROM.
• I/O lines: These are the bunch of registers which is used as a switches or controls for
different features of AVR.
• 32X8 GPR (General Purpose Registers): This are 32 registers each having 8-bit which is a
general storage space for data. But, remember, SRAM is also a temporary storage but these
registers have some specialty among all.
• Status & Control : A couple of registers which are very special to the MCU & to us also.
Architecture Theory
• Program Counter: This is a register which has a responsibility to track the position of the program that is
currently executing.
• Flash Memory: It is also a permanent storage but its only for storing the program we write to it. The
program of the AVR microcontroller is stored in non-volatile programmable Flash program memory which
is just similar to the flash storage in your SD Card or Mp3 Player. The Flash program memory is separated
into two units. The first unit is the Application Flash section. It is where the program of the AVR is stored.
The second section is named as the Boot Flash section and can be fixed to perform directly when the
device is powered up. One significant fact to note is that the microcontrollers Flash program memory has a
resolution of at least 10,000 writes/erase cycles.
• Interrupt Unit
• Interrupts have enabled the microcontroller to monitor particular events in the background while
performing and application program & respond to the occurrence if required pausing the unique program.
This is all synchronized by the interrupt Unit.
• Timer
• Most AVR microcontrollers have at least one Timer or Counter module which is used to achieve timing or
counting operations in the microcontroller. These comprise time stamping, counting events, measuring
intervals, etc.
• Watchdog
• All AVR microcontrollers have an internal Watchdog Timer. It has very limited useful features comprising:
distinct 128kHz CLK source, skill to reset the microcontroller and produce an interrupt.
• USART / SPI / I2C
• The units like USART or SPI or I2C are used for serial communication with the exterior world. An instance is
the USART peripheral which uses the RS232 standard.

You might also like