Professional Documents
Culture Documents
Chapter 1
Designing Embedded System with 8051
Microcontroller
Factors to be
selecting Contoller
Factors to be considered selecting a Controller
System
Requirement
Memory
Cost Architecture
Choosing
a
Controller
Compatibility Availability
Power
Consumption
Factors to be considered selecting a Controller
System Requirement:
• The selection process starts with a decision of choosing either 4-bit,
8-bit, 16-bit or 32-bit microcontroller required by the application.
• The criteria like speed requirement, data width needs can decide
system requirements.
Memory Architecture:
• Memory requirement involves Program memory (flash, OTP, ROM etc)
and Data memory (on-chip SRAM or external RAM).
• It is best to choose a device which provides sufficient or more
memory space than the expectation of need.
Factors to be considered selecting a Controller
Availability:
• Before trying to implement the system, the availability of the device
should be checked.
• If sufficient quantity is available now and in future so chances of
failure will be less even though there is more time elapsed between
order approval and supply of product.
Power Consumption:
• High power requirements lead to bulky power supply design. It also
demands for cooling fans to deal with power dissipated in the form of
heat. This make the overall system messy and expensive.
• Power consumption of the controller should be minimum. Controller
should support power saving modes to reduce power consumption.
Factors to be considered selecting a Controller
Compatibility:
• The function of the system can be changed or upgraded by changing
software or replacing some ICs. The microcontroller should be
compatible with slight changes incurred.
• Controller should also support third party development tools.
Cost:
• It is the biggest deciding factor while selecting a microcontroller.
• The cost should be within reachable limit of the end user to ensure
successful deployment of the product and gain marginal profit when
product is launched in market
Why 8051?
Why 8051 Microcontroller for Embedded System
Has 32 I/O lines (four 8-bit ports P0, P1, P2, P3)
Internal Program memory (ROM) of 4 KB and data memory (RAM) of 256 bytes. (Expandable up to 64 K bytes
It has 2 power saving modes – Idle mode and Power Down mode
Supports various onboard & external interfaces like I2C, UART, SPI, CAN, USB, and TCP/IP
Available through more than 20 vendors with more than 100 variants of 8051.
Power Saving modes
of 8051
Power Saving Modes of 8051
IDLE Mode 8051 can be put in idle mode by setting bit 0 of PCON register
}
Host & Target platforms
Host Platform vs Target Platform
AD V AN TAG ES AN D D I S AD V AN TAG ES
Advantages of Simulator
2. No Hardware
❑ Simulators are purely software oriented. The IDE simulates the target
CPU.
❑ Since no hardware is required the code can be written and tested even
before the hardware prototype is ready thus saving development time.
Advantages of Simulator
EDLC is essential for understanding the scope and complexity of the work
involved in embedded systems development.
EDLC defines the interaction and activities among various groups of a product
development phase.
Objectives of EDLC
• Initial investment
• Developer recruiting
• Training
• Infrastructure requirement
Risk minimization and defect prevention in product
development
Product Maintenance:
• Product maintenance 'need' deals with providing technical support to the end
user for an existing product in the market
Defines the scope of the concept, performs cost
benefit analysis and feasibility study and prepares
project management and risk management plans.
Product Scope
Planning Activities
• Unit testing
• Integration testing
• System testing
• User acceptance testing
Identifies application environment and creates an overall
architecture for the product.
Design Starts with the Preliminary Design and establishes the top level
architecture for the product.
Once the PDD is accepted by the End User the next task is to
create the ‘Detailed Design’.
• Unit testing
• Integration testing
• System testing
• User acceptance testing
Deployment is the process of launching the first fully
functional model of the product in the market.