I have started learning embedded and its main language (C and C ++). But I am starting to realize that despite the need to learn simple, embedded is all over the world and has its own. And when you deal with real projects, you start to realize that the equipment you are working on will have to learn more "stuff" for the hardware used. This is an issue that rarely came with software projects that I currently work in.
Is it possible to split this field into sub-fields? I am thinking that people with experience in the field can see that certain types of projects are different from other types, which they probably have to come up with their own categories. For example, when you run into a project, you can think of yourself as "it's out of your area"? Will it be with you? And if so, what do you call your sub-region or how do you cope with other sub-areas?
Here are some sub-characteristics that I can think of:
Assembly language expert
- Yes you need to know C and C ++ but some people are experts in the assembly too. These are experts who are called up to an RTOS port in a new chip, or are asked to squeeze every drop of performance from a highly blocked embedded system (usually to save $ $ per unit).
This person probably does not need much time these days ... but .. still still important from time to time. Device Driver Expert- A piece of real OS or RTOS and hardware This person is usually a lab equipment such as o-scope or logic analyzer, "hex" It is easy to understand, and understand the important nature of time with HW. This person reads the device data sheet for fun at night, and is excited about creating the right porting driver for some new devices.
DSP expert
- Digital Signal Processing has its own embedded feature, though perhaps a software engineer does not know the exact algorithm details, and this is only a Can apply the requirement of the system or electrical engineer. However, some basic elements of sampling rate theory, FFT, and "DSP" are easy to understand and perhaps it is needed
Control Theory Expert
- Perhaps the same issue with DSP: A system or electrical engineer can provide wide spectacles but, then, different motors, sensors and Managed by a microcontroller familiar with other controllers, would be great. Throw in a bow plot, some leapless or two and some high math skills ... which can not hurt too much!
Networking Expert
- Basically the PC world is "networking" similar to many embedded devices these days are adding networking connectivity features to TCP / IP sockets , HTTP is good for understanding and understanding how to use in a resource constraint device. Throw in USB and Bluetooth for good measure. UI Expert
- Most embedded devices include 2D graphics, and now it includes 3G graphics effects of iPhones etc. Although they are still "fat" systems by "embedded device standards", they are still limited. Just read a bit in the Android Development Guide, and you will realize that you still have to consider accountability, performance, etc. in high-end cell phones.
And then, of course, every industry has an expertise in itself, including consumer electronics, military, aviation, robotics, industrial machines, medical equipment, etc ...
Have fun and good luck!
Comments
Post a Comment