Professional Electrical Engineer

David B. Bergfeld received his B.S.E.E degree and M.S.E.E Research degree from St. Louis University, St. Louis, Missouri. He is registered as a Professional Engineer in the State of Missouri. He was awarded a federal traineeship for the summer of 1963, a partial scholarship in 1965, and a full federal traineeship for his M.S.E.E. in 1966. He was president of the Engineers Club at St. Louis University 1965-1966. He was employed by Emerson Electric and ESCO Technologies (a spin-off of Emerson) in St. louis, Missouri. He is co-author of ‘Special Purpose Automatic Test Set Development Techniques,” IEE Symposium, 1968, and author of “Integrated Display for Functional Emulation During Test,” IEEE Systems Readiness Technology Conference, 1997 (AUTOTESTCON ’97). He was the lead for the HELITOW Missile Thermal Tracker, Control Panel and Missile Interface. He designed micro-controller hardware and software for the first TWACS Remote Transponder Unit, and the Outbound Modulation Unit. He designed micro-controller hardware and software for tanker truck loading and dispensing computers, industrial and consumer appliances, motor controls, flow meter signal conditioners, and portable automatic test equipment for the Cheyenne helicopter armament.


's contributions
    • Software for state machines faces difficulties in covering all of the conditionals associated with these structures. This article applies long-established principles, adds some original details, and allows developers to routinely design their own state machines in software with no missed conditionals.

    • FreeTheMallocs!, thank you for your comment. Please note that the first example is also written in C. You may have higher level tools at your disposal, and a lot of extra memory to play with. However, please make the effort to take the bulk of the article seriously. In particular the identification of unused states. You can translate you conclusions into code anyway you want, but you will end up with good reliable code. I wish you well, and thanks for your comment.

    • Bwalker970, thanks for your comment. I'm glad that you have some extra tools. However, from your comment it appears that FX2 does not take into account unused states. (Please correct me, if I am wrong.) This means that your machines can lock up after a voltage surge or the like. (This does not have to happen very often for customers to look askance at your equipment.) I would like for you to go through an abbreviated code assignment step by fashioning your state diagram on a blank State Assignment Diagram. This will identify your unused states. Then address the unused states and use the resulting diagram as the input to FX2. This will address all of the remaining untreated conditionals. (I'll bet that the FX2 reps. didn't tell you about unused states, did they.) On the side, the first example is illustrated in C, which can be ported. The article covers the basics, whether the higher level tools are available or not. It's a good idea for everyone to know the basics. Thanks again for your excellent, well thought out comment. Dave