Intro to Embedded System Flashcards
What is an Embedded System?
It is usually a Microcontroller with some software and an I/O interface, it is embedded as it is a component with a clear-cut functionality within a larger system.
What is Software Engineering?
A systematic, disciplined approach to developing software aimed at making all stakeholders happy.
What are some key characteristics of Embedded Systems?
- It runs continuously and doesn’t terminate
- Interacts with hardware
- Must respond in real-time to external events
- They are constrained by size, weight and/or power.
What are some key characteristics of Software Engineering
- Theories, methods and tools for professional software development
- An engineering discipline which covers every aspect of software production.
- Specification, development, validation and evolution.
What are the levels of Abstraction that Embedded Software Engineering Cover?
Application Software - Programs
OS - Device Drivers
Architecture - Instructions Register
Micro-Architecture - Datapaths Controller
What is Application Software?
- Record Sensor data or control a mechanical device.
- Uses services from the OS.
Aspects of software engineering process?
- Requirements analysis
- Software Design
- Implementation
- Verification
- Maintenance
Why Raspberry Pi?
Due to Ubiquitous ARM Processors, Raspbian OS has become more popular.
The Raspberry Pi provides a cheap (approx. $60) and
portable platform to learn both software engineering
fundamentals, but also become familiar with new software and hardware.