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