Table of Contents:-
Concept of Embedded Systems
Characteristics of Microcontroller
Advantages and Disadvantages of Microcontroller
Concept of Embedded Systems
An embedded system is a system that has software embedded into hardware, which makes a system dedicated for an application (s) or specific part of an application or product or part of a larger system.Where it is present today in your life-
a) Embedded systems are application specific & single functioned; application is known apriori, the programs are executed repeatedly.
b) Efficiency is of paramount importance for embedded systems. They are optimized for energy, code size, execution time, weight & dimensions, and cost.
c) Embedded systems are typically designed to meet real time constraints; a real time system reacts to stimuli from the controlled object/ operator within the time interval dictated by the environment. For real time systems, right answers arriving too late (or even too early) are wrong.
e) They generally have minimal or no user interface.
Microcontrollers/ Embedded Processors
- A microcontroller is a functional computer system-on-a-chip.
- It contains an integrated processor, memory (a small amount of RAM, program memory, or both), several peripheral devices, such as timers, analog to digital converters, and serial communication devices all on one chip resulting in compact and low-power implementations.
- It is not expandable as it has no external bus interface.
- Examples are Intel’s 8051, PIC’s DSPIC33 / PIC24, Motorola’s 6811
Characteristics of a microcontroller:
Low cost, Low speed, Low Power, small architecture, Small memory size, Onboard Flash, Limited I/O.Microcontrollers provide pin access which allows programs to easily monitor sensors, set actuators, and transfer data with other devices.
Providing specialized instructions improves performance for embedded systems applications; thus, microcontrollers can be considered ASIPs to some degree.
Special microcontrollers are often called embedded processors. The difference between a microcontroller and an embedded processor is not clear, but processors with large architectures with fast processing, fast context-switching & atomic ALU operations are marketed by many vendors as embedded processors. Examples of embedded processors are ARM 7, INTEL i960, AMD 29050
Merits of Embedded Systems
- Reliability – it can never crash- Safety – Involves things that move and can harm/kill a person
- Power Consumption – may run on limited power supply. Want slowest possible clock, least amount of memory.
- Cost – Engineering Cost, Mfg Cost, Schedule tradeoffs
- Product life cycle issues: maintainability, upgradeability, serviceability
- Performance
What are the advantages/disadvantages of embedded C and Assembly? Which should be prefer over which one?
Answer - Assembly language is a symbolic representation of a processor's native code. Using machine code allows the programmer to control precisely what the processor does. It offers a great deal of power to use all of the features of the processor. The resulting program is normally very fast and very compact. In small programs it is also very predictable. Timings, for example, can be calculated very precisely and program flow is easily controlled. It is often used for small, real time applications.
Whereas, Embedded C language is a high level language and user does not need to learn so many instruction sets as described in Assembly language. The software is used to write code in C language and consists of its own compiler which first converts the program into hexadecimal codes and then, into machine level language.
Advantages:
1. I can tell that C syntax is a lot easier to learn than Assembler syntax.2. C is easier to use for making more complex programs.
3. Learning C is somehow more productive than learning assembler cause there is more developing stuff around C than Assembler.
Disadvantages:
1. Assembler is a lower level programming language than C,so this makes it a good for programming directly to hardware.2. Is a lot more flexible alluding you to work with memory,interrupts,micro-registers,etc.
Embedded C language is preferred by many industries working in the fields of embedded system due to easy learning and can be used to in high level applications which saves time and money of the industry. Most of the industries of this field prefer embedded C over Assembly language in Embedded.
Comments
Post a Comment