System Integration and Debug

After the hardware personal computer (PC) board or a handwired prototype is built and the software compiles with no errors, it is time to plug in everything and watch the system come to life. Ideally, the software is not tried until the hardware is completely checked out. A decision must be made as to how the hardware will be tested and how far the testing will go before software is installed. In a real system in which the software controls real hardware, the hardware cannot be checked without some software to exercise it. The hardware checkout list for the pool timer comprises: test processor and EPROM, test switches, and test display. The process used to debug the software comprises several steps, which are (1) connecting the serial side to a PC, (2) adding a code that handles serial input/output (I/O), (3) adding a special code that echoes serial input to output, (4) adding proprietary processing code, (4) loading special code to send a test string to an output device using the final output driver, and (5) integrating the setup code, serial I/O code, processing code, and output code. Verification of each code is also necessary.