Embedded vs.
PC Application
Programming
Overview
The
software design cycle
Designing differences
Code differences
Test differences
In general...
They
are the same
All programs have:
Inputs
Processing/Decisions
Outputs
Always
use the Software Design Cycle
Software Design Cycle
Specification
Design
Code
Test
http://rabatech.com
Specification
Understand
The same words mean different things to
different people
As a group, what does the following mean:
The program must respond quickly to input.
Write
the Requirements
down the Requirements
Once you know what you plan to do (with
numbers) write it down!
Design
Decide
the ‘best approach’ to meet your
requirements
Hardware
Programming Language
Customer Education(Change the
Requirements)
Coding
Embedded
Closer to the Hardware
Use native data types
Fewer System
Resources
No Operating System
More efficient
algorithms
Higher frequency =
higher power
PC Application
Abstracted
Hardware
Plenty
of Resources
Has an Operating
System
Testing
Embedded
Testing must be
planned in
Usually
a simple
interface
Often involves
extra hardware
PC Application
Usually
simple to
get a basic debug
output
Can be very
sophisticated
testing
Other big differences
Take
a few minutes and talk in small
groups. I’ll be asking one group to give
some of the ideas they came up with.
Code Size Example
Using
the example code on the web
explore the Wunderboard lights and code
size based on variable types.
Things to Remember
There
are parallels between embedded
and PC programming
When coding embedded, it is better to
use native data types