E14 Op Ed: A uC course for Everyone

Have you ever heard Hardware people swearing up and down that a failure cannot be a problem with the board? What about hearing that after listening to the software folk extolling the virtues of their code while explaining how that very same failure cannot be a software issue? Human nature can be a funny thing that affects all of us.
Maybe if more CEs and EEs took a microcontroller course, there would be more understanding and maybe even some humility among engineers…

….How can we prevent this unproductive riff raff? It might help to have anyone involved in electronics (either the hardware or software side) take at least one course in microcontroller design to show the connections (and problems) that occur between hardware and software. Any piece of circuitry will eventually need to be controlled or communicate with software, and software usually involves the real world at some point. The most remarkable A/D circuit is useless if the communication bus that the digital signal must pass over does not have the required bandwidth. Similarly, a beautiful chunk of code written to control an RGB LED matrix won’t work if the hardware isn’t designed to supply the required amount of power. A course that forces the engineer to face problems on both sides can be humbling; for example a hardware engineer might spend hours troubleshooting his or her code only to find that the motor was connected to the wrong power rail…..