Breakpoints may not serve the purpose fully, it may be easier to use Testpoints and incremental coding.
When we build Electronic Circuits with many Interacting Blocks or Modules, We put a small 5mm Tall Copper Pin in the PCB or a PAD without masking. This is a Test or Troubleshooting Point. This is where you can probe with a scope, dmm or logic analyzer.
In embedded program development, i tried a similar way, a Testpoint in software, but only that the card would light a led in a certain pattern or send a “all ok” and progress status to the serial port connected to PC.
In Script programming we can use a GUI element, just a Textbox as a Scope monitoring the Testpoint. When the program goes beyond the Testpoint, The GUI Text window will hold the Status. Just like you move the probes of the same DMM, you can keep shifting the Testpoints or Multiplex the same Scope, as the program becomes bigger.
So, before you build the Next big Program, Build the Test Equipment and the First Testpoint. The first few lines of code is written around the First Test point. Like it is done in PCBs, incremental Building-Testing.
Lastly Break Big Jobs to Small Pieces. Like the Plugin Modules in a Oscilloscope, The Components or Modules should be built and tested independently and then Combined to Form one Big System. Then they can be maintained and reused easily.
Dec-07 from 2003 delabs notes
A Pascal powered Integrated Development Environment for 8051 Microcontrollers. It has a Project manager for Assembler and Pascal projects. MC-51 is an IDE for the 8051/80C31 and others. This is from the Institute of Experimental and Applied Physics – Microcontroller course pages.
Integrated Development Environment for 8051 Microcontrollers
To communicate with a microcontroller experimentation board via the serial interface, MC-51 provides a terminal mode. The required parameters for the connection can be adjusted using the main menu. The microcontroller needs to be programmed with an appropriate monitor program (e.g. PAULMON)..
The simulator lets you test small programs without any external hardware. It contains all common debugging features (Run, Stop, Single step, Step over subroutine, Run to selected line). You can execute the program step-by-step or set breakpoints anywhere in the program.
The simulator displays the source code with program labels as well as the compiled hex code and the program addresses. All registers and memory locations can be inspected and changed if desired. Numbers may be displayed as hex, decimal or binary values.
- Text editor with syntax highlighting to create Assembler and Pascal sources
- Interface to the Pascal compiler Turbo51 by Igor Funa
- Interface to the assembler ASEMW by W.W. Heinz
- Integrated simulator and debugger for all basic 8051 functions including timer and serial interface
- Terminal window to communicate with a monitor program inside the microcontroller and to download programs into the memory of the microcontroller using the Hex Intel format
- Module for flash programming Atmel AT89S8252/53 microcontrollers using the serial interface
- Check program for Atmel microcontrollers with ISP