Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
22 views27 pages

Chap 3

Embedded systems

Uploaded by

Lelisa AH
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views27 pages

Chap 3

Embedded systems

Uploaded by

Lelisa AH
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Embedded Systems

Lecture 3
Embedded Systems Development Life Cycles and Tools

3/31/2023 1
Outline of the Lecture

Introduction

Embedded Systems Development Life


Cycles

Embedded Systems Development Tools

3/31/2023 2
Introduction

❑Unlike the design of a software application on a standard


platform, the design of an embedded system implies that
both software and hardware are being designed in
parallel.
❑Although this isn't always the case, it is a reality for many
designs today.
❑The profound implications of this simultaneous design
process heavily influence how systems are designed.

3/31/2023 3
Embedded systems development life cycle

❑Embedded systems design life cycle follows the


following seven phases in general:
Product specification
Partitioning of the design into its software and hardware
components
Iteration and refinement of the partitioning
Independent hardware and software design tasks
Integration of the hardware and software components
Product testing and release
On-going maintenance and upgrading

3/31/2023 4
Embedded systems development life cycles

3/31/2023 5
Embedded systems development life cycles

❑Product specification:
For many R&D engineers, designing the right product means
cramming everything possible into the product to make sure
they don't miss anything. Obviously, this wastes time and
resources.
Which is why marketing and sales departments lead (or
completely execute) the product-specification process for most
companies.
Although some methods of customer research, such as
questionnaires and focus groups, clearly belong in the realm of
marketing specialists, most projects benefit from including
engineers in some market-research activities.

3/31/2023 6
Embedded systems development life cycles

❑Product specification:
A common factor for the successful products is that the design
team share a common vision of the product they are designing.
When asked about the product, everyone involved - senior
management, marketing, sales, quality assurance, and
engineering - would provide the same general description.

3/31/2023 7
Embedded systems development life cycles

❑Hardware/Software Partitioning:
 Since an embedded design will involve both hardware and software
components, someone must decide which portion of the problem will
be solved in hardware and which in software.
 This choice is called the “partitioning decision.”
 The partitioning decision is a complex optimization problem. Many
embedded system designs are required to be
• Price sensitive
• Leading-edge performers
• Market competitive
• Proprietary
 These conflicting requirements make it difficult to create an optimal
design for the embedded product.
 Given this n-space of possible choices, the designer or design team
must rely on experience to arrive at an optimal design.

3/31/2023 8
Embedded systems development life cycles

❑Iteration and Implementation (Before Hardware and


Software Teams Stop Communicating):
This represents a somewhat blurred area between
implementation and hardware/software partitioning in which
the hardware and software paths diverge.
This phase represents the early design work before the
hardware and software teams build "the wall" between them.
Even though major blocks might be partitioned between the
hardware components and the software components, plenty of
time remains to move these boundaries as more of the design
constraints are understood and modeled.

3/31/2023 9
Embedded systems development life cycles

❑Detailed Hardware and Software Design:

3/31/2023 10
Embedded systems development life cycles

❑Hardware/Software Integration:
The process of integrating embedded software and hardware is
an exercise in debugging and discovery.
Discovery is especially appropriate term because the software
team now finds out whether it really understood the hardware
specification document provided by the hardware team.
The difficult thing in embedded system design is to combine the
first hardware prototype, the application software, the driver
code, and the operating system software together with a pinch of
optimism and to have the design work perfectly.
this scenario is so unlikely for one thing, the real-time nature of
embedded systems leads to highly complex, nondeterministic
behavior that can only be analyzed as it occurs.

3/31/2023 11
Embedded systems development life cycles

❑Product Testing and Release:


Because embedded systems usually have extremely tight design
margins to meet cost goals, testing must determine whether the
system is performing close to its optimal capabilities.
This is especially true if the design team consists of many
developers.
The job of testing the embedded product goes to a separate
team of engineers and technicians because asking a designer to
test his own code or product usually results in erratic test
results.

3/31/2023 12
Embedded systems development life cycles

❑Maintaining and Upgrading Existing Products:


The majority of embedded system designers (around 60
percent) maintain and upgrade existing products, rather than
design new products.
Most of these engineers were not members of the original
design team for a particular product, so they must rely on only
their experience, their skills, the existing documentation, and
the old product to understand the original design well enough
to maintain and improve it.

3/31/2023 13
Embedded systems development tools

❑The development of a microcontroller-based embedded system


is a complex process.
❑Development tools are hardware and software tools designed
to help programmers develop and test systems in a relatively
short time.
❑The tools for developing software and hardware for
microcontroller-based embedded systems include
 editors,
 assemblers,
 compilers,
 debuggers,
 simulators,
 emulators, and
 device programmers.

3/31/2023 14
Embedded systems development tools

❑ A typical development cycle starts with writing the application program


using a text editor. The program is then translated into an executable
code with the help of an assembler or compiler.
❑ If the program has several modules, a linker is used to combine them
into a single application. Any syntax errors are detected by the assembler
or compiler and must be corrected before the executable code can be
generated.
❑ Next, a simulator is used to test the application program without the
target hardware. Simulators are helpful in checking the correctness of an
algorithm or a program with limited or no input-outputs, and most errors
can be removed during simulation.
❑ Once the program seems to be working and the programmer is happy with
it, the executable code is loaded to the target microcontroller chip using a
device programmer, and the system logic is tested.

3/31/2023 15
Embedded systems development tools

❑Software development tools:


Software development tools are computer programs, usually
run on personal computers, that allow the programmer (or
system developer) to create, modify, and test applications
programs.
Some common software development tools are:
• Text editors
• Assemblers/compilers
• Simulators
• High-level language simulators
• Integrated development environments (IDEs)

3/31/2023 16
Embedded systems development tools
❑Software development tools:
Many different C language compilers are available for
developing PIC18 microcontroller-based programs.
Some of the popular ones are:
• CCS C (http://www.ccsinfo.com)
• Hi-Tech C (http://htsoft.com)
• C18 C (http://www.microchip.com)
• mikroC C (http://www.mikroe.com)
• Wiz-C C (http://www.fored.co.uk)
Although most C compilers are essentially the same, each one
has its own additions or modifications to the standard
language.

3/31/2023 17
Embedded systems development tools

❑Software development tools:


Integrated development environments (IDEs) are powerful
PC-based programs which include everything to edit,
assemble, compile, link, simulate, and source-level debug a
program, and then download the generated executable code to
the physical microcontroller chip using a programmer device.
These programs are in graphical user interface (GUI), where
the user can select various options from the program without
having to exit it.
IDEs can be extremely useful when developing
microcontroller-based systems.
Most PIC18 high-level language compilers are IDEs, thus
enabling the programmer to do most tasks within a single
software development tool.

3/31/2023 18
Embedded systems development tools
❑Hardware development tools:
Numerous hardware development tools are available for the
PIC microcontrollers.
Some of these products are manufactured by Microchip Inc.,
and some by third-party companies. The most ones are:
• Development boards
• Device programmers
• In-circuit debuggers
• In-circuit emulators
• Breadboards

3/31/2023 19
Embedded systems development tools
❑Hardware development tools:
Development boards
40-pin ZIF socket for PIC
microcontroller Socket for DAC(device not
5-volt regulator included)
20MHz oscillator Socket for I2C serial EEPROM
Reset button (device not included)
Socket for Dallas DS1307
16-switch keypad
real-time clock (device not
Two potentiometers included)
Four LEDs Pads for Dallas DS18S20
2-line by 20-character LCD- temperature sensors (device
module not included)
Speaker In-circuit programming
RC servo connector connector
RS232 interface Prototyping area for additional
circuits
USB connector

3/31/2023 20
Embedded systems development tools
❑Hardware development tools:
Development boards
2 x16 LCD display
Piezo sounder driven by PWM signal
Active RS 232 port
On-board temperature sensor
Four LEDs
Two push-button switches and master reset
Sample PIC18F4520 and PIC16F877A flash
microcontrollers
MPLAB REAL ICE/MPLAB ICD 2 connector
Source code for all programs
Demonstration program displaying a real-time clock
and ambient temperature
Generous prototyping area
Works off of a 9V battery or DC power pack

3/31/2023 21
Embedded systems development tools
❑Hardware development tools:
Development boards
• The BIGPIC4 is a sophisticated development
kit that supports the latest 80-pin PIC18
microcontrollers.
• It includes an on-board USB port, an
on-board programmer, and an in-circuit
debugger. Two serial RS232
Forty-six buttons ports
Forty-six LEDs In-circuit debugger
USB connector Programmer
External or USB power PS2 connector
supply Digital thermometer
Two potentiometers chip (DS1820)
Graphics LCD Analog inputs
2 16 text LCD Reset button
MMC/SD memory card slot
3/31/2023 22
Embedded systems development tools
❑Hardware development tools:
Device programmers
Mach X Programmer
• The Mach X programmer,
manufactured by Custom Computer
Services Inc., can program
microcontrollers of the PIC12, PIC14,
PIC16, and PIC18 series ranging from
8 to 40 pins.
• It can also read the program inside a
microcontroller and then generate a
HEX file.
• In-circuit debugging is also supported
by this programmer.

3/31/2023 23
Embedded systems development tools
❑Hardware development tools:
Device programmers
EasyProg PIC Programmer
• The EasyProg PIC is a
low-cost programmer
used with
microcontrollers of the
PIC16 and PIC18 series
having up to 40 pins.
• It connects to a PC via a
9-pin serial cable.

3/31/2023 24
Embedded systems development tools
❑Hardware development tools:
In-Circuit Debuggers

• The ICD2, a low-cost in-circuit debugger


manufactured by Microchip Inc., can
debug most PIC microcontroller-based
systems.
• With the ICD2, programs are downloaded
to the target microcontroller chip and
executed in real time.
• This debugger supports both assembly
language and C language programs.

3/31/2023 25
Embedded systems development tools
❑Hardware development tools:
In-Circuit Debuggers

• The PICFlash 2 in-circuit debugger


is manufactured by
mikroElektronika and can be used
to debug programs developed in
mikroBasic, mikroC, or
mikroPascal languages.
• The device is connected to a PC
through its USB interface.
• Power is drawn from the USB port
so the debugger requires no
external power supply.

3/31/2023 26
Embedded systems development tools
❑Hardware development tools:
BreadBoards

3/31/2023 27

You might also like