report

55
CHAPTER-1 INTRODUCTION NeST Software (Network Systems & Technologies (P) Ltd) is a technology company which offers customized software and hardware development services for engineering applications and product development services for customers worldwide. NeST Software, is the Software division of SFO Technologies and part of the NeST Group of companies. The NeST software Division is certified at ISO 9001 and ISO 27001.NeST is one of the pioneers in the Software Industry to be assessed at CMMI V1.1 (IPPD/SE/SW/SS) Maturity level 5 in early 2003 . With some of the world’s leading corporations as customers, NeST has business operations in the United States, Canada, India, Japan, Europe, UK, UAE, Qatar & Australia. In addition to NeST group strengths in hardware manufacturing, electronics R&D & fiber Optics, NeST specialize in offering customized services and solutions in Embedded System Development including hardware design, product development, and System & Application software for embedded devices. System software and applications Industrial and Process Automation Consumer Electronics & Multimedia solutions Medical Instrumentation 1

Upload: nishiya-vijayan

Post on 28-Oct-2014

37 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: report

CHAPTER-1

INTRODUCTION

NeST Software (Network Systems & Technologies (P) Ltd) is a technology company

which offers customized software and hardware development services for engineering

applications and product development services for customers worldwide. NeST Software, is the

Software division of SFO Technologies and part of the NeST Group of companies.

The NeST software Division is certified at ISO 9001 and ISO 27001.NeST is one of the

pioneers in the Software Industry to be assessed at CMMI V1.1 (IPPD/SE/SW/SS) Maturity

level 5 in early 2003 . With some of the world’s leading corporations as customers, NeST has

business operations in the United States, Canada, India, Japan, Europe, UK, UAE, Qatar &

Australia.

In addition to NeST group strengths in hardware manufacturing, electronics R&D & fiber

Optics, NeST specialize in offering customized services and solutions in

Embedded System Development including hardware design, product development, and

System & Application software for embedded devices.

System software and applications

Industrial and Process Automation

Consumer Electronics & Multimedia solutions

Medical Instrumentation

Broadband Network Management Solutions

Security Solutions

Client-server and Groupware applications

Global Award from GEHC- Competitiveness/Globalization in 2004

VISION

"To be a leader in technology led software and product engineering services for global

customers"

1

Page 2: report

CHAPTER-2

ORGANIZATION STUDY

2.1 INDUSTRY FOCUS

2.1.1 HEALTHCARE

NeST is a technology partner to leading medical players for well over a decade and has

been developing critical systems for their various solutions. Meeting stringent processes and

R&D innovations is the key to success with most of the clientele. NeST also partner in

developing customized solutions, thereby taking less time-to-market.

Medical Domain Standards

DICOM

IHE

HL 7

HIPAA

Image Processing

Medical image processing capability includes multi-modality image registration, image

re-construction (MPR, OSEM, FBP) for nuclear medicine, noise reduction, brain volume

calculationand statistical analysisof medical images, model search using AFDM.

Performance Tuning

NeST has undertaken performance optimization challenges for different customers. NeST

engineers are experienced in identifying and fixing “hot spots” in applications and libraries using

different tools (Intel VTune, Rational   Purifyplus and Microsoft code profiler). NeST also offer

code optimization as a service across all verticals.  NeST has extensive experience in medical

domain provides value in terms of efficiency of optimizations carried out. The trend in the

industry to enable the applications for using multi-core architecture has led to the development of

expertise in parallel programming using GPU and Muti-core for performance optimizations &

improvement.

2

Page 3: report

Algorithms

NeST work closely with R&D divisions of major equipment manufacturers, to conduct

feasibility and prototyping of new image analyzing algorithms. NeST support algorithm

development, in collaboration with universities and academic institutes. One sought after

services by medical imaging solution providers is “Algorithm Development (from idea to

algorithm design and implementation)”.

Consultancy Services

NeST offers Consultancy services for application porting to Windows Vista and .NET

platform. NeST provides guidance and support for porting healthcare applications to new

windows platform. NeST also offers   comprehensive design and implementation support for

DICOM gateways and for 64 bit porting.

Skill set of Healthcare Business Unit

Tools: Clearcase, Crystal reports,  CVS,DVT , Eclipse , Erwin , Qt, MESA , Rational Pure

overage , Rational Purify  ,Rational Rose ,Share Point,  Team Foundation Server , VC 6.0, 

Visio  Visual test ,VS 2005 , VS 2008  ,VSS  ,VTune,  Websphere.

Technologies : .NET 2.0 ,.NET 3.0,  .NET 3.5,  ADO.NET , AJAX  ,ASP.NET , COM\DCOM ,

DirectX,  EJB , Install Shield ,Intel Threading Blocks,  J2EE , LINQ , Managed DirectX , MFC  ,

ODBC  Open GL,  Open MP  Servlet , CUDA, RAPIDMIND, Silverlight , SSE,SSE2  ,WCF ,

Webservice  ,Win32 ,Windows Forms,  WP,F  WWF,  XML,  XSLT,  X-Windows .

Languages: Assembly, C, C#, C++ , HTML,IDL , Java,  JScript,  JSP,  ATLAB , Perl,  PL-SQL,

VB.NET,  VBScript .

Database:  MS SQL, MySQL, Orcale, Pointbase .

2.1.2 AUTOMATION

NeST has developed Automation solutions which is easy to integrate and with adherence

to global Automation standards for leading players of Power Generation, Transmission &

Distribution , Semiconductor Manufacturing, Enterprise Wide monitoring solutions,Agro

3

Page 4: report

Processing and Pharma Industries from US, Europe and Japan. The intelligence built in the

solutions NeST provide for manufacturing industries reduces the time to market, and increases

throughput. NeST solutions are highly user-friendly, flexible, scalable and built on latest

hardware and software platforms & technologies for seamless integration. Combining the

domain expertise and the engineering skills, NeST aimed to be a true value partner for the full

spectrum of Automation , ranging from plant floor to the interface to enterprise business systems.

Semiconductor Automation

NeST solutions help us in automating, testing, and integrating your equipment with

connectivity to semiconductor wafer fabs and MES. NeST products, frameworks and expertise in

semiconductor domain provide end-to-end solutions in the shortest time possible..

Photovoltaic

Leveraging 13 years of product development and fab-deployment experience, NeST is

now offering solutions and services to Photo-Voltaic industry.

Power Industry

With extensive experience and knowledge in Power Industry, NeST has the entire

spectrum of capabilities to provide services to control and monitor all the elements involved -

right from power generation to final distribution at the consumer end.

Enterprise "Wide Monitoring Systems"

NeST, with its extensive experience and knowledge in the Automation domain,puts into

use its entire spectrum of capabilities to provide integrated enterprise-wide solutions and services

for enhanced data acquisition, visualization, validation, presentation and distribution.

2.1.3 AUTOMOTIVE

NeST has been working with various OEMs and Tier-1 suppliers of the Automotive

Industry for more than a decade. With its extensive experience in automotive industry, NeST

helps its customers to provide a wide range of cost effective solutions and services. The

4

Page 5: report

NeSTAutomotive group comprises a dedicated team of engineers who are proficient in

automotive protocols and various automotive technologies.

Technology Spectrum

Automotive Standards

MISRA

MISRA C

OSEK/VDX

Tools

CANoe, CANalyzer, pCAN, MOST Optolyzer, CATC Bluetooth Analyzer

DOORS

QAC

Reference Designs

TI Davinci - Stop Signal detection

Blackfin - for Infotainment

Renesas SH7770 - for Telematics

5

Page 6: report

2.1.4 COMMUNICATIONS

Broadband and Networking

NeST offers a range of services in Broadband and Networking with a suite of software and

hardware solutions. NeST leverages its domain expertise and partners technology leaders in

offering a range of expertise aimed at helping customers in new-product development, product

enhancement and maintaining their products to compete successfully in a progressive

marketplace.For years NeST has been offering its customers these services, reducing product

development cycle times resulting in faster time to market. NeST specialize in providing

integrated solutions to customers.

Element Management Value added Applications

Protocols

Operation Support Systems

Technology expertise

Embedded systems

Data communications and networking

Wireless LAN

2.1.5 COMMUNICATIONS & CE

NeST helps its customers shrink the development cycle time and the cost of developing

Consumer Electronics Products by providing:

End to end solutions on the latest technologies

Re-usable components

Salient features of our development service offerings:

Familiarity with industry standards- both existing and emerging

Fast prototyping for technology validation

Technical consultancy

Entire spectrum of product development support from concept to implementation and

maintenance

6

Page 7: report

The strong competencies and skill-sets of NeST in Embedded Systems, Multimedia and  A/V

Streaming, Wireless Applications complement and support competencies in the Consumer

Electronics domain.

Hybrid Set Top Box Solutions

NeST Software is providing complete turnkey solutions in the development of Hybrid Set

Top Boxes. By leveraging its technology partners in the electronics domain, NeST is able to

offer

A Single window of contact

Quick turnaround time - shortest timeframe

Hardware Reference Design and Customization

Middleware Porting and Integration

Value Added Services - Sports, Education, Health & Lifestyle, YouTube etc

Video IP Cores

NeST has developed its own portfolio of IP cores by leveraging its vast experience in

embedded - FPGA domain. NeST IP repository includes Video Scaler, Video Sharpness

Enhancer, Gamma Correction, Brightness Enhancer, Color Enhancer and Contrast Enhancement

IP cores.

Digital Home Services

NeST is offering focused services to manufacturers and solution providers operating in the

Digital Home market. NeST offerings in the Digital Home market specifically tailored to meet

the requirements of

Chip/Silicon Manufacturers

Device Manufacturers

Middleware and software Solution Providers

2.1.6 AEROSPACE

NeST provides a wide range of services to the aerospace industry to develop both ground-

based and airborne systems. NeST capabilities include development of software and hardware,

7

Page 8: report

verification and validation, simulation, continuous engineering, and reengineering. NeST’s

knowledge and experience in hardware engineering, software engineering, DSP and military

standards enables to offer a lower total cost of ownership over the complete product development

lifecycle, thus delivering higher value to the NeST clients. The NeST Avionics Team includes

experienced aeronautical engineers and software specialists with many man-years of experience

in the field of Black Box Decoding and Analysis. NeST is the market leader when it comes to

developing and customizing solutions for avionics domain. Some of the major software products

NeST provide are

FliSAFE - A FOQA tool that increases the effectiveness of any flight safety monitoring

program.

PMT - Performance Monitoring Tool (PMT) effectively monitors aircraft performance

and fuel consumption to enable airlines to control their cost thus providing an added edge

in a fiercely competitive market.

FlightViz - A state-of-the-art Aircraft and Simulator data visualization tool developed by

SimAuthor. We are authorized dealers for FlightViz.

2.2 SERVICES

NeST provide reliable quality services to our customers in Healthcare, Automation,

Automotive, Consumer Electronics and Aerospace in accomplishing their business goals in a

cost-effective manner.

2.2.1 PRODUCT ENGINEERING SERVICES

NeST is an Original Design & Manufacture service provider specializing in the design,

development and prototyping of high-technology engineering products. NeST is uniquely placed

in being able to cater to both software and hardware product development requirements of our

customers, making us an ideal partner for companies looking at an accelerated time-to-market for

their products. NesT has the ability and expertise to work along the entire spectrum of product

development, right from conceptualization to design to implementation, roll-out and support.

8

Page 9: report

Safety Critical Systems Development

NeST has capability in developing Safety Critical Systems and has executed

projects/products for various sectors including Power, Consumer and Defence. These products

have passed conformance to IEC 61508 SIL3 and automotive standard ISO /DIS 26262. The

skills include arriving at a Product specification, Hardware and Software development in

conformance with safety critical standards, FMEA, Testing and Mechanical enclosures

complying with the safety needs.

Services to Device Manufacturers

Total Concept to Product Development

Product Re-engineering and customizations

Product integration and testing

Development of specific hardware/ software

Support to end customers

Services to Silicon Manufacturers

VLSI design and Testing services

Reference designs/ prototypes

Porting stacks/applications to the platform

Test systems

Support for end customers for building products around your systems

Middleware Software Solution providers

Licensing of IP

Developing stacks/codecs for specific DSPs/Processors

Platform specific porting and Optimization

Frameworks for automated Nest Quality Centre

Integration of middleware with end customer products

Hardware Design & Development

Schematics

High-speed digital design

9

Page 10: report

Low signal analog design

Component selection

BOM optimization

Gerber release

Board assembly

Board bring-up and testing

Test fixture design

Re-engineering

Reverse engineering

Software Design & Development

BSP customization

Device driver development & porting

Middleware and protocol stack porting & integration

Applications development & porting

Re-engineering

Reverse engineering

QA & Testing

Functional testing

Usability/ UI testing

Performance testing

Compliance testing

2.2.2 VLSI DESIGN SERVICES

NeST testifies Quality & Reliability by assuring us with first-time-right VLSI products.

Reduced time-to-market without driving up the cost factor is yet another reason for being a

priority option to the customers. NeST’s design professionals with experience of scores of silicon

proven tape-outs can help us to achieve this.

10

Page 11: report

Value to Customer

One stop solution for product design and reengineering with support for hardware &

software development and manufacturing.

Works as an extended design center for customers

Skilled talent pool with hands on experience in various development and testing tools

Ability to ramp up engineering resources as per client needs

Service Offerings

New product design & development or reengineering existing product

Proof-of-concept / demonstration system for emerging technologies and standards

Analog, Digital & Hybrid ASIC/ SoC Design, Verification and Testing

FPGA prototyping of ASIC designs

Retargeting Services: FPGA-to-FPGA, ASIC-to-FPGA

2.2.3 ALGORITHM R&D SERVICES

NeST provides complete services - concept development, analysis, algorithm design,

mathematical modeling, performance evaluation and prototyping - for a wide range of problems

in scientific computing, computer vision, image processing and signal processing. Concrete

problems in real life situations often cannot be solved with standard algorithms in their pure

form. This is because the standard algorithms do not take into account the custom factors

associated with a particular application. To create a solution that meets the customer needs, the

existing algorithms should be adopted or even new algorithm should be developed. One also

needs to analyze all the premises on which an algorithm is based before using it in a context.

NeST provides high quality services in these domains at very affordable rates.

11

Page 12: report

Services offered

Mathematical modeling and algorithm design

Survey and analysis of the art techniques and algorithms

Critical evolution of available algorithms and solution suggestions

Development of new algorithm tuned to specific customer needs

Adaptation and customization of existing algorithms

Environment modeling, statistical performance modeling and testing

Model-based design

Algorithm design and modeling using MATLAB/Simulink

Translation of MATLAB/Fortran/Cinto Simulink models

Creating generic custom tool boxes

Integrating of legacy C-Code into Simulink blocks

Automatic code generation using RTW/RTW Embedded coder

Verification and Validation

Implementations

Proof of concepts and Demo implementations

Algorithm prototyping for Real Time Embedded Platforms

Selection and optimization of algorithms for FPGA and GPU

Integrated development in MATLAB, Simulink and C/C++

NeST Value proposition

NeST has vast expertise in industrial and healthcare domains. Available expertise ranges

over the whole spectrum of product development cycle. The algorithm R&D team has access to

the large pool of expertise especially in Embedded Design, Analog and Digital Hardware Design

and GPU Computing. The synergy between the R&D team and the other design groups has

helped in bringing out highly realistic and innovative solutions.

12

Page 13: report

2.2.4 ENGINEERING APPLICATIONS

Engineering Application Software, unlike their business application counter parts, are

characterized by high degree of hardware integration, performance and efficiency considerations

and domain knowledge in the respective engineering discipline. Engineering Applications

Software Services provided by NeST help Engineering Companies to address the growing

demand of Application Software in their product portfolio. NeST has been a leading provider of

Engineering Applications solutions since its inception. We have proven domain knowledge and

development expertise in diverse verticals and horizontals.

Horizontals

User Experience (UX)

Windows-7-Software-Services

Middleware

Multicore & HPC

Image Processing

Graphics

Information Security

Verticals

Point Of Service (POS) Terminals

Plant Automation Systems

Analytical Instruments

Automated Test and Measurement Systems

Life Science and Scientific Research

Security & Surveillance Systems

2.2.5 MULTICORE SOFTWARE SERVICES

A multi-core era has dawn on the mainstream microprocessor hardware industry. As the

number of cores increases exponentially, there is a motivation to integrate data parallel (SIMD:

Single Instruction Multiple Data) computational units onto a single die, resulting in

13

Page 14: report

heterogeneous processor architectures. These trends in the underlying processor hardware have

profound implications in product design, as well as in mainstream software development.

As a product company, NeST wants to focus more on the features that would delight its

customers, than on the petty details of implementation. This is why NeST offers Multicore

Software Services, first in the industry to do so. The strong skills of NeST teams in Image

Processing, Computer Graphics and Media Processing ensures successful implementation of

compute intensive problems in these fields on modern hardware platforms reporting significant

speedups.

NeST’s skill sets include:

GPGPU (General Purpose GPU)

CUDA(NVIDIA GPU), DirectX HLSL, OpenGL GLSL (NVIDIA, ATI GPUs),

RapidMind (GPU, Cell BE), IBM Cell SDK (GPU, Cell BE)

Streaming Extensions

Intel SSE, SSE3, SSE4 (x86), PowerPC Altivec (POWER)

Parallel Environments

OpenMP, Intel Threading Building Blocks (TBB), MPI, POSIX pthreads, Win32 threads,

Microsoft ParallelFX (.NET), Stream Programming

Domain Skills

Image Processing, 3D Graphics, HD Video Processing, Medical Imaging

NeST Multicore services include:

Computer Vision and Visualization

Interactive 3D Graphics realized in desktops through commodity graphics cards

for Gaming industry is now finding applications in more serious fields such as medical

diagnosis. As an early adopter of GPGPU, NeST is perfectly placed to cater to our

application development needs in 2D and 3D Graphics. Computer Vision is another area

that can benefit from GPGPU. Whether it is industrial inspection, medical imaging, video

surveillance or consumer electronics, NeST is a ideal partner in implementing image

processing algorithms.

14

Page 15: report

HPC Applications Development

High Performance Computing (HPC) is now getting more pervasive, rather than

being confined to pure scientific pursuits. Applications range from simulations that

replace physical testing to modeling of complex phenomena, in verticals such as life

sciences, manufacturing, energy, intelligence, defense, and earth sciences. NeST can

work with us in creating suitable models and then implement it in the chosen data parallel

hardware.

PerformanceOptimization

The advent of multi-core has signaled a return of performance and efficiency as

key considerations in software design. Condensing years of experience into a scientific

approach towards optimization, NeST has a track record in finding parallelization

opportunities that may not be obvious in the first place. Depending on the code snippet

being optimized and the target platform, we can expect speedups from anything between

2x to 200x, compared to original serial implementations.

R & D Consultancy

NeST invests in research and development in-house to constantly acquire new

software skills demanded by emerging hardware platforms. As a valued customer, we

benefit by getting recommendations on technology choices - be it the hardware platform

for our next product, the libraries to use for software development, or the parallelization

potential of our application.

2.3 NEST QUALITY CENTRE

A decade & more of untiring effort has transformed NeST Quality Center (NQC), the

V&V Service Group at NeST, to a formidable Testing Service Provider catering to various

Fortune 500 companies. NQC has the ability and expertise to perform Quality Control along the

entire spectrum of product development. NeST provide reliable quality services to its customers

enabling them to achieve their business goals in a cost-effective manner.

15

Page 16: report

NeST expertise in validating products from multiple Engineering verticals has earned

long term customers across many domains.

2.3.1 QUALITY CONSULTANCY

NeST is committed to excellence in quality deliverance and NeST’s Quality and

Information Security certifications bear testimony to this fact. NeST have been certified for the

ISO 27001:2005 Information Security Management System, ISO 9001:2008 standards by Bureau

Veritas, Automotive SPICE under the PATHFINDER certification scheme, NeST becomes the

4th company in the world to be ASPICE -L5 assessed for evaluating the quality and process

competences as well as the organizational maturity of software service providers for automotive

manufacturers and also have been assessed successfully for SEI CMMIv1.1 Level 5 (SE-SW-

IPPD-SS). The certifications, along with NeST’s corporate work culture that is aligned closely

with them, have helped it carve a niche area of excellence in the software industry.

While the ISO 27001 certification endorses NeST's commitment to managing client

information at the highest levels of security, the CMMI v1.1 Level 5 assessment reflects its focus

on building organizational process maturity to enable the delivery of best-in-class solutions to

clients. The ISO 9001, CMMI level5 , ISO 27001 and ASPICE-L5 certifications imply that

NeST follows clear procedures and practices that blend well with the customer's specific

requirements. With over a decade of hands-on experience in implementing globally acclaimed

quality systems, NeST offers consultancy services to help clients enhance process improvement

through the implementation of effective Quality and Information Security Management Systems.

Sony (Japan), NeST Group of Companies (US, Dubai and India), M/s Dimensions,

Technopark, India and M/s Gemini Software, Technopark, India, are among several global

companies that have availed NeST's consultancy services for CMM and ISO certification.

NeST offer consultancy services in three modes:

Onsite : Executed on customer's premises

Onsite-Offshore: Executed both on NeST's offshore premises and the customer's

premises - brings significant cost benefits to the customer.

Offshore : Executed on NeST's offshore premises

16

Page 17: report

2.3.2 TESTING SERVICES

NeST has an established Testing Services Business unit, focusing on Independent

Verification and Validation of products. The Independent Testing Team of NeST works closely

with the customer and ensures that the systems achieve the quality levels demanded by the

customers. The team associates from the initial stages of development to define a customized

workflow that facilitate a critical and objective evaluation of the product.

Testing consultants at NeST has extensive experience in testing methodologies, full lifecycle

testing and test automation which helps the team to deliver quality software, with less risk, at

lower costs. As a specialist provider of testing services, Independent Testing Team at NeST

continually strives to innovate, improve and expand the services to our clients. The team

challenges the assumptions, risks, and uncertainty inherent in the development of the work

product and addresses these concerns during the evaluation of the product. The team certifies the

product after successful completion of testing, based on the acceptance criteria set by the

customer.

Domains & Technologies

Specialized Testing

Test Automation

Multilevel Testing

Product Certifications

Execution Model

2.3.3 TRAINING

Trainings are given to professionals and students on various Quality related topics.

Trainings include Model Based trainings, specialized trainings, In-house Certification Programs

and Finishing courses.

17

Page 18: report

ISTQB accreditation

NeST has state-of-the-art facilities to provide training to professionals and students on

various Quality-related topics. NeST’s Training bouquet includes Model-based and specialized

training, In-house Certification Programs, and Finishing courses. NeST has International

Software Testing Qualifications Board (ISTQB) accreditation and is an authorized trainer for

ISTQB certification.

ISTQB is based in Belgium and is the world's only non-profit organization dedicated

solely to providing practical, globally-accepted software testing certification.

Model Based trainings include

ISO 9001 Model

ISO 27001 Model

CMMI - An Introduction

Specialized trainings include

Internal Auditing

Risk Management

Configuration Management

Metrics

Statistical Process Control

In-house certification programs related to Quality and Testing

NeST Certified Quality Analyst

NeST Certified Testing Professional

NeST Certified Internal Auditor

Finishing courses include

Introduction to Software Engineering

Fundamentals of Software Development Life Cycles

18

Page 19: report

CHAPTER-3

EMBEDDED TRAINING

Trainings are given to professionals and students on various Quality related topics.

Trainings include Model Based trainings, specialized trainings, In-house Certification Programs

and Finishing courses.

3.1 INTRODUCTION

An embedded system is a special purpose computer designed to perform one or a few

dedicated functions, sometimes with real-time computing constrains. An embedded system is a

special purpose computer system which resides inside the device or equipment it manages or

controls. An embedded system has certain predefined tasks and specific constrains thus differing

from the general purpose PC computer. Embedded systems are found in a variety of common

electronic devices, such as: (a) consumer electronics -- cell phones, pagers, digital cameras,

camcorders, videocassette recorders, portable video games, calculators, and personal digital

assistants; (b) home appliances -- microwave ovens, answering machines, thermostat, home

security, washing machines, and lighting systems; (c) office automation -- fax machines, copiers,

printers, and scanners; (d) business equipment -- cash registers, curbside check-in, alarm

systems, card readers, product scanners, and automated teller machines; (e) automobiles --

transmission control, cruise control, fuel injection, anti-lock brakes, and active suspension.

REAL TIME EMBEDDED SYSTEMS

The embedded devices should interact with the environment as effectively as possible. A

real-time operating system (RTOS) is an operating system (OS) intended to serve real-time

application requests.

Two categories

Hard real-time system

Soft real-time system

A Hard Real Time System is one in which the response time is critical and which can be

considered to have failed if response is delayed beyond the specified time.

19

Page 20: report

Examples are automotive and aerospace applications, industrial control applications etc .

A soft real time system is one that can tolerate some delays especially in peak load conditions

and still produce a useful output.

A typical example is an online reservation system

3.1.1 THE EMBEDDED SYSTEM DEVELOPMENT PROCESS

The embedded system development process covers both the design of the hardware as

well as the software. Embedded building blocks

Hardware

Microprocessors/ Microcontrollers

Memory

Logic circuits

Analog and mixed signal circuits

Power supply circuits

Software

Real Time Operating Systems (RTOS)

Application Software

3.2 ARM

ARM is a reduced instruction set computer (RISC) instruction set architecture (ISA)

developed by ARM Holdings. It was named the Advanced RISC Machine and, before that, the

Acorn RISC Machine. The ARM architecture is the most widely used 32-bit instruction set

architecture in numbers produced. ARM offers several microprocessor core designs, including

the ARM7, ARM9, ARM11, Cortex-A8, Cortex-A9, and Cortex-A15. Companies often license

these designs from ARM to manufacture and integrate into their own system on a chip (SoC)

with other components like RAM, GPUs, or radio basebands (for mobile phones).

The ARM9TDMI is a member of the ARM family of general-purpose microprocessors.

The ARM9TDMI is targeted at embedded control applications where high performance, low die

size and low power are all important. This 32 bit microprocessor, offers high performance and

very low power consumption. The ARM architecture is based on Reduced Instruction Set

20

Page 21: report

Computer (RISC) principles, and the instruction set and relateddecode mechanism are much

simpler than those of microprogrammed Complex Instruction Set Computers. This simplicity

results in a high instruction throughput and impressive real-time interrupt response from a small

and cost-effective processor core.

The ARM9TDMI supports both the 32-bit ARM and 16-bit Thumb instruction sets,

allowing the user to trade-off between high performance and high code density. The

ARM9TDMI supports both bidirectional and unidirectional connection to external memory

systems.The device has Harvard architecture, and the simple bus interface eases connection to

either a cached or SRAM-based memory system.

Pipeline techniques are employed so that all parts of the processing and memory systems

can operate continuously. While one instruction is being executed, its successor is being

decoded, and a third instruction is being fetched from memory. The ARM7TDMI-S processor

also employs a unique architectural strategy known as THUMB, which makes it ideally suited to

high-volume applications with memoryrestrictions, or applications where code density is an

issue.The key idea behind THUMB is that of a super-reduced instruction set. ARM processor

consists of two types of instruction sets

The 32-bit ARM Instruction Set.

The 16-bit Thumb Instruction Set.

Two execution states to select which instruction set to execute

THUMB code is able to provide up to 65% of the code size of ARM Instruction Set.

Some Microcontrollers used for the development are

8051

PIC

LPC 2129 (ARM 7TDMI)(256KB Flash)

LPC 2368 (ARM 7TDMI)(512KB Flash)

STR912FW44 (ARM 966E-S)

RCM3700 (Rabbit 3000)

21

Page 22: report

3.2.1 IDE (INTEGRATED DEVELOPMENT ENVIRONMENT)

An integrated development environment (IDE) is a software application that provides

comprehensive facilities to computer programmers for software development. An IDE normally

consists of:

a source code editor

build automation tools

a debugger

IDE’s typically present a single program in which all development is done. This program

typically provides many features for authoring, modifying, compiling, deploying and debugging

software. The aim is to abstract the configuration necessary to piece together command line

utilities in a cohesive unit, which theoretically reduces the time to learn a language, and increases

developer productivity. It is also thought that the tight integration of development tasks can

further increase productivity. Some of the IDE’s are

Swift X

Code Warrior Development Studio

MULTI

Visual Lynux

KEIL

KEIL

The Keil™ products from ARM include C/C++ compilers, debuggers, integrated

environments, RTOS, simulation models, and evaluation boards for ARM®, Cortex™-M, Cortex-

R, 8051, C166, and 251 processor families.

Features

Complete support for Cortex-M, Cortex-R4, ARM7, and ARM9 devices

Industry-leading ARM C/C++ Compilation Toolchain

µVision4 IDE, debugger, and simulation environment

KeilRTX deterministic, small footprint real-time operating system (with source code)

TCP/IP Networking Suite offers multiple protocols and various applications

USB Device and USB Host stacks are provided with standard driver classes

Complete GUI Library for embedded systems with graphical user interfaces

22

Page 23: report

ULINKpro enables on-the-fly analysis of running applications and records every

executed Cortex-M instruction

Complete Code Coverage information about your program's execution

Execution Profiler and Performance Analyzer enable program optimization

Numerous example projects help you quickly become familiar with MDK-ARM's

powerful, built-in features

CMSIS Cortex Microcontoller Software Interface Standard compliant

3.2.2 MCB2300 EVALUATION BOARD

The Keil MCB2300 Evaluation Board introduces us to the NXP (founded by Philips)

LPC2300 ARM family and allows us to create and test working programs for this advanced

architecture.Two serial interfaces, a speaker, analog input (via potentiometer), two CAN

interfaces, LCD, USB, Ethernet, and eight LEDs make this board a great starting point for your

next ARM project.

The MCB2300 Evaluation Board is available in two different configurations:

The MCB2370 Evaluation Board is based on the NXP LPC2370 family and comes

populated with an LPC2378.

The MCB2388 Evaluation Board is based on the NXP LPC2380 family and comes

populated with an LPC2388.

3.3 NXP (founded by Philips) LPC2368

The NXP (founded by Philips) LPC2368 is an ARM7TDMI-S based high-performance

32-bit RISC Microcontroller with Thumb extensions, 512KB on-chip Flash ROM with In-

System Programming (ISP) and In-Application Programming (IAP), 58KB RAM, CPU clock up

to 72 MHz, On-chip crystal oscillator, On-chip 4MHz RC oscillator, On-chip PLL Enhanced

Vectored Interrupt Controller, Ethernet 10/100 MAC with DMA, USB 2.0 Full Speed Device

Controller, CAN 2.0B with two channels, General purpose DMA controller, Four UARTs, one

with full modem interface, Three I2C serial interfaces, Three SPI/SSP serial interfaces, I2S

interface, SD/MMC memory-card interface, 10-bit ADC with 6 channels, 10-bit DAC, Four 32-

bit timers with capture/compare, Watchdog Timer, PWM unit for three-phase motor control,

23

Page 24: report

Real Time Clock with optional battery backup, Brown-out detect circuit, General purpose I/O

pins.

Features

ARM7TDMI-S processor, running at up to 72 MHz.

Up to 512 KB on-chip Flash Program Memory with In-System Programming (ISP) and

In-Application Programming (IAP) capabilities.

16 KB Static RAM for Ethernet interface.

8 KB Static RAM for USB interface.

External memory controller that supports static devices such as Flash and SRAM.

Four UARTs with fractional baud rate generation.

Two CAN channels on the APB bus.

Three I2C Interfaces reside on the APB bus.

Four general purpose Timers.

Real Time Clock with separate power pin, clock source can be the RTC oscillator.

On-chip Power On Reset.

3.3.1 ARCHITECTURAL OVERVIEW

LPC2364/6/8/78 is an ARM-based microcontroller for applications requiring serial

communications for a variety of purposes. These microcontrollers incorporate a 10/100Ethernet

MAC, USB 2.0 Full Speed interface, four UARTs, two CAN channels, an SPI interface, two

Synchronous Serial Ports (SSP), three I2C interfaces, an I2S interface, anda MiniBus (LPC2378

only: 8-bit data/16-bit address parallel bus). ARM processors have a single 4 GB address space.

In LPC23xx the debugging is supported via the JTAG interface.

The LPC2300 consists of an ARM7TDMI-S CPU with emulation support, the ARM7

LocalBus for closely coupled, high speed access to the majority of on-chip memory, the AMBA

Advanced High-performance Bus (AHB) interfacing to high speed on-chip peripherals

andexternal memory, and the AMBA Advanced Peripheral Bus (APB) for connection to otheron-

chip peripheral functions.

The microcontroller implements two AHB buses in order to allow the Ethernet block

tooperate without interference caused by other system activity. The primary AHB, referredto as

AHB1, includes the Vectored Interrupt Controller, General Purpose DMA Controller,External

24

Page 25: report

Memory Controller, USB interface, and a 8 KB SRAM primarily intended for useby the

USB.The second AHB, referred to as AHB2, includes only the Ethernet block and anassociated

16 kB SRAM. In addition, a bus bridge is provided that allows the secondaryAHB to be a bus

master on AHB1, allowing expansion of Ethernet buffer space intooff-chip memory or unused

space in memory residing on AHB1.

3.3.2 BLOCK DIAGRAM

Fig : Block diagram of LPC 23xx

25

Page 26: report

ON-CHIP FLASH MEMORY SYSTEM

The LPC2300 includes a Flash memory system with up to 512 kB. This memory may be

used for both code and data storage. Programming of the Flash memory may beaccomplished in

several ways. It may be programmed In System via the serial port. Theapplication program may

also erase and/or program the Flash while the application is running, allowing a great degree of

flexibility for data storage field firmware upgrades, etc.The Flash is 128 bits wide and includes

pre-fetching and buffering techniques to allow it tooperate at SRAM speeds.

ON-CHIP STATIC RAM

The LPC2300 includes a static RAM memory up to 32 kB in size, that may be used

forcode and/or data storage.The SRAM controller incorporates a write-back buffer in order to

prevent CPU stallsduring back-to-back writes. The write-back buffer always holds the last data

sent bysoftware to the SRAM. The data is only written to the SRAM when software does

anotherwrite. After a "warm" chip reset, the SRAM does not reflect the last write operation.

Twoidentical writes to a location guarantee that the data will be present after a

Reset.Alternatively, a dummy write operation before entering idle or power-down mode

willsimilarly guarantee that the last data written will be present after a subsequent Reset.

EXTERNAL MEMORY CONTROLLER (EMC)

The LPC23xx External Memory Controller (EMC) is an ARM Prime Cell Multiport

Memory Controller peripheral offering support for asynchronous static memory devices such as

RAM, ROM ,and Flash. The EMC is an Advanced Microcontroller Bus Architecture (AMBA)

compliant peripheral.

Features

• Asynchronous static memory device support including RAM, ROM and Flash with or

without asynchronous page mode.

• Low transaction latency.

• Read/Write buffers to reduce latency and to improve performance.

• 8-bit bit wide static memory support

• CAN can be used as an interface to some external I/O devices.

• Two chip selects for chip selects for static memory devices.

26

Page 27: report

VECTORED INTERRUPT CONTROLLER (VIC)

The LPC23xx has two interrupt inputs called Interrupt request(IRQ) and Fast Interrupt

Request(FIQ). The VIC takes 32 interrupt request inputs and assigns them as FIQ or Vectored

IRQ types. FIQ requests the highest priority. If more than one request is assigned to FIQ, the

VIC ORs the requests to produce the FIQ signal to the processor.

Vector IRQ's with include all interrupt requests that are not classified as FIQs, have a

programmable interrupt priority. When more than one interrupt is assigned same priority and

occurs simultaneously, the one connected to the lowest numbered VIC channel will be serviced

first.

GENERAL PURPOSE INPUT/OUTPUT (GPIO)

LPC 23xx has upto five general purpose IO ports which each contain 32 IO lines giving a

maximum of 160 pins. PORT0 and PORT1 have a set of control registers on the APB bus. The

LPC23xx family has another set of GPIO control registers located on the local bus called the Fast

GPIO control registers. PORT0 and PORT2 can generate an interrupt when there is a rising or

falling edge on an individual pin.

Fast IO Registers

It is a set of fast GPIO registers located on the ARM 7 local bus. These registers allow a

port pin to be toggled in just two cycles or at a rate of 30MHz. Also, Fast GPIO registers

introduce a mask register that improves the bit manipulation of each port. Here, the GPIO pins

are controlled by four registers.

Important GPIO functions are:

GPIO registers are relocated to the ARM local bus so that the fastest possible I/O

timing can be achieved.

Mask registers allow treating sets of port bits as a group, leaving other bits

unchanged.

All GPIO registers are byte and half-word addressable.

Entire port value can be written in one instruction.

Bit-level set and clear registers allow a single instruction set or clear of any number of

bits in one port.

27

Page 28: report

ETHERNET MAC

The LPC23xx includes three complex communication peripherals: an Ethernet MAC,

universal serial bus controller and a controller area network interphase. The Ethernet

MAC(media access controller) is used along with an external PHY chip(physical layer) to

provide a nod capable of sending and receiving data over an Ethernet network. The most

common application for such and is to communicate with other computers using the TCP/IP

communications protocol. The TCP/IP protocol is designed to support local and wide area

networking. The most dominant network protocol used for local area networks is Ethernet or

Ethernet II.

The LPC23xx includes an Ethernet mac sub-layer. The Ethernet mac is designed to

interphase to an external Ethernet physical layer (PHY) to make a complete Ethernet controller

which is similar to the IEEE 802.3 standards and supports 10-100 mbps full-duplex

communication. The Ethernet mac is located on its own AHB bus along with 16k of SRAM and

its own dedicated BMA unit. The Ethernet mac has independent transmit and receive paths.

CAN CONTROLLER

The LPC23xx is available with two independent can controllers on-chip. The CAN

controllers are one of the most complicated peripherals on LPC23xx system. The can protocols

can be used as a general purpose embedded networking protocol and is used for distributed

control system. The CAN network is a high performance communication protocol for serial data

communication. Microcontrollers with on-chip can controllers are used to build powerful local

networks by distributed real-time control with a high level of security.

The applications are automotive industrial environments and high speed networks as well

as low cost multiplex wiring. It reduces wiring harness and enhanced diagnostic and supervisory

capabilities. The can module consists of two elements; the controller and the Acceptance Filter.

All registers and the RAM are accessed as 32 bit words.

Features

• Multimaster architecture with non-destructive bit wise arbitration

• Programmable transfer rates up to one M bits per second.

• Powerful error handling capabilities.

• NRZ coding/decoding with bit stuffing.

28

Page 29: report

UNIVERSAL SERIAL BUS

The Universal Serial Bus (USB) is a four-wire bus that supports communication between

a host and one or more (up to 127) peripherals. The host controller allocates the USB band width

to attach devices to a token based protocol. the best supports hot plugging and dynamic

configuration of the devices. All transactions are initiated by the host controller.

The LPC23xx consist of a USB peripheral located on the VLSI peripheral bus. The USB

peripheral incorporates the physical layer interphase so that it can be connected directly to the

USB network.

The USB controller requires an accurate 48 MHz clock and this cannot be derived from

the CPU clock or the peripheral clock as this would limit the maximum speed of the LPC23xx to

48MHz instead the USB controller clock is derived directly from output of the PLL, which is

divided down by a dedicated USB prescaler register.

The USB peripheral has two operating modes; Slave mode and DMA mode. In slave mode every

USB transaction will generate an interrupt. In the DMA mode, the DMA descriptors may be

located anywhere in the USB RAM. The parameters stored in the DMA descriptors include the

start address of the end point DMA buffer in the USB AM, the size of the buffer, the start

address of the next DMA buffer and control information for the DMA peripheral. In this mode

several discrete buffer are concatenated together and transferred over a USB pipe and

automatically reconstructed with in the USB RAM.

UNIVERSAL AYNCHRONOUS RECEIVER TRANSMITTER (UART)

Serial transmission can be classified into two types- Synchronous and Asynchronous. In

synchronous transmission, the sender and receiver share a common clock with one another or the

sender provide a strobe or other timing signal so that the receiver knows when to read the next

bit of data.

In asynchronous transmission, no clock signal is needed. Instead, the sender and receiver

must agree on timing parameters in advance and special bits are added to each word which are

used to synchronize the sending and receiving units.

The LPC 23xx has four on-chip UARTs. They are all identicalto use except UART1 has

additional modem support and UART3 has IrDA support. All UARTs have a built-in Baud rate

29

Page 30: report

generator with auto baud capability and 16 byte transmit and receive FIFOs. These are suitable

for RS232 wired communication. UART3 can be configured to work with the IrDA standard for

infra-red communication.

The baud rate generator is a 16 bit prescalar which divides down the Pclkto generate the

UART clock which must run at 16 times the baud rate.

Divisor = Pclk/16 *baud.

The divisor value is stored in two registers. Divisor latch MSB(DLM) and divisor latch

LSB(DLL). The first eight bits of both register holds each half of the divisor. Finally, the DLAB

bit in the LCR register ustbe set to zero to protect the contents of the DLL register.

SPI INTERFACE

This is a simple peripheral engine which can read and write data to the SPI bus. The SPI

peripherals has four external pins – Serial clock pin, Slave select pin and two data pins. The SPI

bus is purely a serial data connection for high-speed data transfer and it does not have any

addressing scheme built into the serial transfer. The SPI clock and data lines can be configured to

operate in different configurations.

I2C INTERFACE

LPC23xx is equipped with a fully featured I2C interface. There are three fully

independent I2C interfaces. Each I2C interface can operate in master or slave mode upto 400K

bits per second and in master mode, it will automatically arbitrate in a multi-master system. The

Serial Clock (SCL) and Data (SDA) lines must be converted from GPIO pins to I 2C pins via the

pin connect block.

The I2C peripheral interface is composed of seven registers. The control registers has two

separate registers to set and clear bits in the control register. The bit rate is also determined by

two registers. The bit rate is obtained by the equation

Bit Rate = Pclk / (I2SCLH + I2CSLL)

The commonly used bit rate is 937500.

TIMERS

30

Page 31: report

The LPC23xx has four general purpose timers. All of the general purpose timers are

identical in structure and use. The timers are based around a 32-bit timer-counter with a 32-bit

prescaler. The default clock source for all of the timers is the APB peripheral clock Pclk. The

tick rate of timer is controlled by the value stored in the prescaler register. The prescaler register

will increment on each tick of Pclk until it reaches the value stored in prescaler register. When it

reaches the prescale value, the timer-counter is incremented by one and the prescale counter

resets to zero, and starts counting again.

Capture Mode : Each timer has upto four capture channels. The capture channels allows to

capture the value of the timer-counter when an input signal makes a transition.

Counter Mode : The count control register allows to select between each timer as a counter

or a pure timer.

Match Mode : Each timer has upto four match channels. Each match channel has a match

register which stores a 32-bit number. The current value of timer-counter is compared against the

match register. When the values match, an event is triggered.

WATCHDOG TIMER

The LPC23xx family has a watchdog system to provide a method of recovering control of

a program that has crashed. The watchdog may be clocked from either the internal RC oscillator,

the RTC oscillator or Pclk.

The watchdog has four registers namely, Mode, Timer constant, Feed, Current value. The

watchdog timeout period is set by a value programmed into the Watchdog Constant

Register(WDTCR). The timeout period is determined by

Wdperiod = Twdck *WDTC * 4

The minimum value for WDTC is 256 and the maximum value is 2^32.

PWM MODULATOR

The PWM modu;ator is an extra general purpose timer with some additional hardware. It

is capeable of producing six channels of single edge controlled PWM or three channels of dual

edge controlled PWM. The PWM modulator has an additional shadow latch mechanism which

31

Page 32: report

allows the PWM values to be updated on the fly but, the new values will only take effect

simultaneusly at the beginning of a new cycle.

The second hardware addition to the PWM modulator over the basic timers is in the

output to the device pins. In place of match channels, there are a set of SR flip flops. This

arrangement allows the PWM modulator to produce either single edge or dual edge controlled

PWM channels.

ANALOG TO DIGITAL CONVERTER

The A / D converter in LPC23xx is a 10-bit successive approximation converter with a

conversion time of 2.44µs. The A/D converter has either 6 or 8 multiplexed inputs. The A/D

clock is derived from the Pclk. The Pclk must be divided down to 4.5MHz.

CLKDIV = (Pclk / Adclk) – 1

The A/D has the ability to fully power down. This reduces the overall power

consumption and the on-chip noise created by the A/D. The A/D has the resolution of 10 bits.

The A/D has two conversion modes; hardware and software.

At the end of each conversion, the result is available in the A/D global data register

ADDR0-ADDR7. At the end of a conversion the Done bit is set and an interrupt may also be

generated if the global enable and channel interrupt enable bits are set in the A/D interrupt enable

register.

DIGITAL TO ANALOG CONVERTER

The LPC23xx has a ten bit D/A converter. It has only a single register. The DAC is

enabled by writing two bits 20 and 21 of PINSEL 1 and converting pin 0.26 from GPIO to the A

OUT function.

Once enabled, a conversion can be started by writing to the VALUE bits in the controlled

register. The conversion time is depended on the value of the BIAS bits.

REAL TIME CLOCK

The LPC23xx Real Time Clock (RTC) is a clock calendar accurate upto year 2099. The

RTC has the option to run from an external 32KHz watch crystal or from the internal Pclk. The

32

Page 33: report

RTC also has an associated 2K of low power SRAM called the battery RAM. The RTC and

battery SRAM have a separate power domain so by supplying 3.3V to the Vbat pin, the RTC can

be kept running and the contents of the battery ram may be preserved when the LPC23xx is

powered down. Both the RTC and the battery ram are designed to consume minimum power and

can be run from a battery. Therefore, the RTC may be used to provide a perpetual clock calendar

or it can be used to provide a time reference and periodic interrupts without the need for an

additional external oscillator.

Two time references are available for the RTC, either the external 32KHz oscillator or

the internal Pclk. The RTC clock runs on a standard 32.7KHz clock crystal frequency. Inorder to

derive the 32.76KHz frequency, the Pclk is connected to the reference clock divider. The output

of this divider is then passed to the RTC. ie, this is a prescalar which can accurately divide any

Pclk frequency to produce the required 32KHz frequency.

To ensure that the RTC clock can be accurately derived from any Pclk, the prescalar is

programmed by two registers called PREINT and PREFRAC. These registers hold integer and

fractional divisor values.

PREINT=(int) (pclk / 32768) – 1

PREFRAC= pclk – ( (PREINT + 1) * 32768)

By giving values to Pclk, different RTC values can be obtained.

RTC can also generate alarm events as interrupts. There are two interrupt mechanisms.

The RTC can be programmed to generate an interrupt when any time-count register is

incremented. The second method for generating an RTC interrupt is with the alarm registers.

Each time-counter register has a matching alarm register. If that register is unmasked, it is

compared to the time-counter register. If a match occurs between the time-counter register and

the alarm register, an interrupt is generated.

Applications

Industrial control

Medical systems

33

Page 34: report

CHAPTER-4

PROGRAMS

4.1GPIO PROGRAM TO BLINK LED

#include<lpc23xx.h>

void main()

{

int i,j=1,k;

IODIR1=0X0000ffFF;

IOCLR1=0X000000ff;

while(1)

{

for(i=0;i<16;i++)

{

IOSET1= j<<i;

for(k=1;k<=0xffff;k++);

IOCLR1=0X0000ffFF;

}}}

4.2 UART PROGRAM TO TRANSMIT CHARACTERS

#include<lpc23xx.h>

inti,n;

main()

{

char c[] = "ciby";

PINSEL0=0X00000010;

34

Page 35: report

U0LCR=0X83;

U0DLL=78;

U0LCR=0X03;

n=strlen(c);

for(i=0;i<n;i++)

{

while(!(U0LSR&0x20));

U0THR=c[i];

}}

4.3 ADC PROGRAM

#include<lpc23xx.h>

void main()

{

PINSEL1=0X00004000;

PCONP =0x1000;

AD0CR=0X01200201;

while(1);

}

4.4 RTC PROGRAM

#include<lpc21xx.h>

void main()

{

PREINT=0x0010;

PREFRAC=0x015;

SEC=4;

35

Page 36: report

MIN=0;

HOUR=0;

CCR=0x01;

}

4.5 TIMER PROGRAM

#include <LPC23xx.H>

void T0_MAT(void)__irq

{

T0EMR|=0x82; //set EMC1,CHANEL1

T0IR=2;

VICVectAddr=0X0000;

}

int main()

{

PINSEL3=0X0B000000; //TIMER0 CHANNEL1

T0PR=0X0;

T0TCR=0X02;//RESET TIMER1

T0MCR=0X18; //INTERRUPT ON MR1,RESET ON MR1

T0MR1=11;

T0TCR=1;//START TIMERO

VICVectPriority4=0;//TIMER 0 PRIORITY 4

VICVectAddr4=(unsigned)T0_MAT;

VICIntEnable=0X00000010;

while(1);

}

36

Page 37: report

4.6 INTERRUPT REQUEST PROGRAM

#include<lpc23xx.h>

void vectored_irq_1(void)__irq;

void vectored_irq_2(void)__irq;

void main()

{

PINSEL4=0X00500000;

IODIR0=0XFFFFFFF;

VICVectPriority14=0x0;

VICVectAddr14=(unsigned)vectored_irq_1;

VICIntEnable=0X00004000;

VICVectPriority15=0x000;

VICVectAddr15=(unsigned)vectored_irq_2;

VICIntEnable=0X00008000;

while(1);

}

void vectored_irq_1(void)__irq

{

IOSET0=0XFF;

IOCLR0=0XF;

EXTINT=0X01;

VICVectAddr=0X00000000;

}

void vectored_irq_2(void)__irq

{

IOSET0=0XFF00;

IOCLR0=0XF00;

37

Page 38: report

EXTINT=0X02;

VICVectAddr=0X00000000;

}

4.7 LCD PROGRAM

#include<lpc23xx.h>

#include"lcd.h"

void main()

{

lcd_init();

lcd_clear();

set_cursor(4,1);

lcd_print("how");

while(1);

}

38

Page 39: report

39