Embedded systems

manjunathan1804 4,944 views 77 slides Jan 12, 2015
Slide 1
Slide 1 of 77
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77

About This Presentation

Introduction about Embedded system based on pic 16f877a


Slide Content

EMBEDDED SYSTEMS Prepared by G.Manjunathan ME.,

What is general purpose system? A computer system that can do many functionalities depending on Available hardware Installed programs Examples PCs Laptops Servers

What is an Embedded systems ? An embedded system is a special-purpose computer system designed to perform a dedicated function A combination of hardware and software which together form a component of a larger machine.

Block Diagram of an Embedded System

Essential Components Microprocessor / Microcontroller Sensors Converters (A-D and D-A) Actuators Memory (On-chip and Off chip) Communication path with the interacting environment 5

Important Units Of Microprocessor/Controller CPU: Central Processing Unit I/O: Input /Output Bus: Address bus & Data bus Memory: RAM & ROM Timer Interrupt

CPU General-Purpose Micro-processor RAM ROM I/O Port Timer Serial COM Port Data Bus Address Bus General-Purpose Microprocessor System CPU for Computers No RAM, ROM, I/O on CPU chip itself Example--Intel ’ s x86: 8086,8088,80386,80486, Pentium Many chips on mother board General-purpose Microprocessor

RAM ROM I/O Port Timer Serial COM Port Microcontroller CPU A smaller computer. On-chip RAM, ROM, I/O ports... Example:- Motorola ’ s 6811, Intel ’ s 8051 and PIC 16X A single chip Microcontroller

Microprocessor Vs Microcontroller

Microprocessor CPU is stand-alone, RAM, ROM, I/O, timer are separate designer can decide on the amount of ROM, RAM and I/O ports. expensive general-purpose Ex. 8085,8086 mp, Motorola 6800, Intel ’ s 8086, etc. Microcontroller CPU, RAM, ROM, I/O and timer are all on a single chip fix amount of on-chip ROM, RAM, I/O ports for applications in which cost, power and space are critical single-purpose Ex. 8051, PIC mc, Motorola MC’s, Phillips, etc. Microprocessor v/s Microcontroller

Architecture

CISC Vs RISC CISC hardware complexity is high multi clock complex instructions Small codes sizes Transistors used for storing complex instructions pipelining is not possible due to uneven process time RISC hardware complexity is low Single clock Reduced instructions only Low cycles/sec Spends more transistors on memory registers instructions execute in a uniform amount of time (i.e. one clock), pipelining is possible.2444

Application areas Automotive electronics Aircraft electronics Trains Telecommunication 14

Automobiles

Consumer electronics

Industry Automation

Telecommunication

Medical systems

Embedded Medical Equipment

Application areas 22 Authentication Military applications Medical systems

Application areas Consumer electronics 23 Smart buildings Fabrication equipment

Traffic Light DVD player Digital clock Moving message display

Characteristics of Embedded Systems - Dependability Reliability: R(t) = probability of system working correctly provided that it was working at t=0 Maintainability: M(d) = probability of system working correctly d time units after error occurred. Availability: probability of system working at time t Safety: no harm to be caused Security: confidential and authentic communication

Characteristics of Embedded Systems-Efficiency Energy efficient Code-size efficient (especially for systems on a chip) Run-time efficient Weight efficient Cost efficient Dedicated user interface (no mouse, keyboard and screen).

Characteristics of Embedded Systems Many ES must meet real-time constraints: A real-time system must react to stimuli from the controlled object (or the operator) within the time interval. For real-time systems, right answers arriving too early or too late are wrong. An embedded system can be a Hard real-time system Soft real-time system

Hard real-time system In hard real-time systems the tasks should be run in on time , time is major constraints. The response time requirements of hard real-time systems are in the order of milliseconds or less and can result in a catastrophe if not met. Examples for hard real-time systems is Missile Industrial Automation Automobiles video transmission, each picture frame and audio must be transferred at fixed rate

Soft real-time system The response time requirements of soft real-time systems are higher and not very stringent. The soft real-time systems will slow down their response time if the load is very high Examples are DVD Player Mobile phones digital cameras playing robots

Comparison General Purpose Computing Few applications that are known at design-time. Not programmable by end user. Fixed run-time requirements (additional computing power not useful). Criteria: cost power consumption Broad class of applications. Programmable by end user. Faster is better. Criteria: Cost average speed Embedded Systems

Features of Embedded system Embedded Systems are the modern compacted devices with multifunction capabilities. An embedded system performs pre-defined tasks, unlike a general-purpose personal computer. An embedded system is a programmed hardware device. A programmable hardware chip is the platform and it is programmed with particular applications.  Embedded systems are not always standalone devices. Many embedded systems consist of small, computerized parts within a larger device that serves a more general purpose.

Features of Embedded system The program instructions written for embedded systems are referred to as firmware, The program stored in read-only memory or Flash memory chips. They run with limited computer hardware resources: little memory, small or non-existent keyboard and/or screen.

Embedded System Architecture

development process of BASIC embedded System 1. Requirements (application) 2. Select microcontroller and H/W 3. Design hardware for your application 4. Write software 5.Write your HEX code to microcontroller 6. Test your proto type product 7. You start your product production

Requirements Gather an informal description from the customers known as requirements. After getting enough information to begin designing the system architecture. Consumers of embedded systems are usually not embedded system designers. Example consider for designing washing machine Less power High efficiency

Select microcontroller Select suitable microcontroller for required system design. Select special purpose processors if needed for the system like DSP processor We can classified like 8 bit microcontroller 16 bit microcontroller 32 bit microcontroller

8 bit microcontroller It can perform 8 bit arithmetic and logical operations. Examples 8051 PIC16XX MB90890 Manufactured by Fujitsu . It performs all 16-bit Data operations 16 bit microcontroller

LPC2148 (ARM)Manufactured by Philips. It performs all 32-bit as well as 16-bit operations 32-bit Microcontroller

Select Hardware Select required hardware components for the systems. Examples Transducers Reactors Communication protocols Input and Output interfaces ADCs

Hardware's required for washing machine

Hardware Design Design printed circuit board using some computer aided design tools Two steps are Design schematic Design corresponding layout Examples Orcad Proteous Express PCB

Schematic diagram

Layout format

Software Design

Developments Tools Assembler C compiler Editors RTOS (Real Time Operating System) Flash programmer Simulator

Assembler It is a software that converts assembly language program to Machine language program understandable by microprocessor MOV A,#CR CALL PUTCHAR MOV A,#LF CALL PUTCHAR RET :10002600750B00750C00750D00750E007513FFD26B :1000360083D284D282C287C286C285C281C200C2EE :1000460001C202C203C204C205C206C20775140079 Assembly program Machine Codes

C cross Compiler It is a software that converts High level language program [ written in C ] to Machine language program understandable by microprocessor C program Machine Codes main() { unsigned int d; int_reg(); int_var(); for(d=0; d < 50000 ;d++) { LCD_PORT=0; } init_lcd(); TR0=1; uputs(0,0,15, "Conveyer System "); 0,15," Version 1.0 "); P0=0; P2=0; :10002600750B00750C00750D00750E007513FFD26B :1000360083D284D282C287C286C285C281C200C2EE :1000460001C202C203C204C205C206C20775140079

Editor

What is Real-Time Operating System (RTOS)? real-time operating system (RTOS) is an operating system that guarantees to perform certain operation (task) within a specified time constraint. Software that manages the time of a microprocessor, microcontroller, or a digital signal processor

Basic functions of RTOS Task scheduling Interrupt handling Memory management Task synchronization Avoid priority inversion Time management

Types of RTOS Hard Real-time RTOS This type operating systems used in hard real-time embedded systems Examples are LynxOS OSE QNX RTLinux VxWorks Windows CE

Types of RTOS Soft real-time operating system This type of operating systems used in soft real-time embedded systems Examples are uCOS-II Android embOS Symbian OS

Flash programmer Flash programmer used to transfer the binary image from personal computer to embedded systems. Separate software are used for this purpose Examples are Flash magic Philips flash utility Win pic Tiny bootloader PC Embedded system Programmer RS232

Test prototype product Multi meter Oscilloscope Logic Analyzer Terminal Emulation software Simulators & Emulators

Features of PIC16F887A RISC architecture Only 35 instructions to learn All single-cycle instructions except branches Operating frequency 0-20 MHz Precision internal oscillator Factory calibrated Power supply voltage 5V Consumption: 220uA (4MHz), 11uA (32 KHz) 50nA (stand-by mode) Power-Saving Sleep Mode

Features Continue.. Brown-out Reset (BOR) with software control option 33 input/output pins 8K ROM memory in FLASH technology Chip can be reprogrammed up to 1,00,000 times In-Circuit Serial Programming Option Chip can be programmed even embedded in the target device 256 bytes EEPROM memory Data can be written more than 1,0,00,000 times 368 bytes RAM memory

Features Continue.. A/D converter: 14-channels 10-bit resolution 3 independent timers/counters Watch-dog timer Analogue comparator module with Two analogue comparators Fixed voltage reference (0.6V) Programmable on-chip voltage reference PWM output steering control Enhanced USART module Supports RS-485, RS-232 and LIN2.0 Auto-Baud Detect Master Synchronous Serial Port (MSSP) supports SPI and I2C mode

PIN Diagram

Pin Description The most pins are multi-functional. The fifth pin specifies the following functions RA3 Port A third digital input/output AN3 Third analog input Vref+ Positive voltage reference C1IN+ Comparator C1positive input trick is often used because it makes the microcontroller package more compact without affecting its functionality. These various pin functions cannot be used simultaneously, but can be changed at any point during operation.

Central Processor Unit (CPU) The CPU is manufactured with RISC technology The CPU can recognizes only 35 simple instructions (In order to program some other microcontrollers it is necessary to know more than 200 instructions by heart). The execution time is the same for all instructions except two. The Jump and Branch instructions execution time is 2 instruction cycles.

CPU Continues.. if the microcontroller’s operating speed is 20MHz, execution time of each instruction will be 200nS, i.e. the program will be executed at the speed of 5 million instructions per second! This microcontroller has three types of memory- ROM, RAM and EEPROM. ROM memory is used to permanently save the program being executed. This is why it is often called “program memory”.

ROM Memory The PIC16F887A has 8Kb of ROM (in total of 8192 locations). This ROM is made with FLASH technology Its contents can be changed by providing a special programming voltage (13V). The program is stored to ICs using simple electronic device called the Programmer.

ROM Memory Concept

EEPROM Memory Similar to program memory, the contents of EEPROM is permanently saved, even the power goes off. However, unlike ROM, the contents of the EEPROM can be changed during operation of the microcontroller. That is why this memory (256 locations) is a perfect one for permanently saving results created and used during the operation.

RAM Memory RAM Memory consists of two parts: general-purpose registers special-function registers (SFR). both groups of registers are cleared when power goes off. Their functions do not have many things in common.

General-Purpose Registers General-Purpose registers are used for storing temporary data and results created during operation. It is necessary to specify the address of some general purpose register and assign it a new function.

SFR Registers Special-Function registers are also RAM memory locations. their purpose is predetermined during manufacturing process and cannot be changed. Since their bits are physically connected to particular circuits on the chip. Any change of their contents directly affects the operation of the microcontroller or some of its circuits. For example, by changing the TRISA register, the function of each port A pin can be changed in a way it acts as input or output.

SFR Registers Continues.. high-level programming language can use the list of all registers with their exact addresses, it is enough to specify the register’s name in order to read or change its contents.

RAM Memory Banks The data memory is partitioned into four banks. Prior to accessing some register during program writing (in order to read or change its contents), it is necessary to select the bank which contains that register. Two bits of the STATUS register are used for bank selecting. the most commonly used SFRs have the same address in all banks which enables them to be easily accessed.

STACK A part of the RAM used for the stack consists of eight 13-bit registers. Before the microcontroller starts to execute a subroutine (CALL instruction) or when an interrupt occurs, the address of first next instruction being currently executed is pushed onto the stack, i.e. onto one of its registers. In that way, upon subroutine or interrupt execution, the microcontroller knows from where to continue regular program execution. This address is cleared upon return to the main program because there is no need to save it any longer

Interrupt System

SFR Registers Continues.. The special function registers can be classified into two categories: Core (CPU) registers. control and monitor operation and processes in the central processor. Peripheral SFRs control the operation of peripheral units (serial communication module, A/D converter etc.).

STATUS Register RP1 RP0 Active Bank Bank0 1 Bank1 1 Bank2 1 1 Bank3 IRP - Bit selects register bank. It is used for indirect addressing. 1 - Banks 0 and 1 are active (memory location 00h-FFh) - Banks 2 and 3 are active (memory location 100h-1FFh) RP1,RP0 - Bits select register bank. They are used for direct addressing. IRP - Bit selects register bank. It is used for indirect addressing. 1 - Banks 0 and 1 are active (memory location 00h-FFh) - Banks 2 and 3 are active (memory location 100h-1FFh) RP1,RP0 - Bits select register bank. They are used for direct addressing.

PRACTICAL SESSION Port programming Seven Segment LCD