Page 225 - Mechatronics with Experiments
P. 225

MICROCONTROLLERS  211

                                    Development host with IDE               Test and measurement tools
                                                                      Digital storage oscilloscope
                                   IDE software for
                                   embedded target
                                                                                      DMM & toolbox
                                                    CD





                                       PC
                                                                     Logic analyzer





                                                            Bread board
                                                                                    Electromechanical
                                                                                    system

                                                          Electronic components supply kit
                                  Development board
                                  (EVM) with microcontroller/DSP chip






                             FIGURE 4.2: The components of a development setup for a microcontroller-based control
                             system: PC as host development environment including the development software tools for the
                             microcontroller, communication cable, microcontroller board, breadboard, test and
                             measurement tools, and electronic components supply kit.


                                  The compiler includes a start-up code for the embedded system to boot-up the system
                             on RESET, check resource integrity, and load the application program from a known location
                             and start its execution. The assembly code can be mixed with the C-code. However, we will
                             not discuss the assembly code here.
                                  Furthermore, the compiler generates relocatable code, which is then used by the
                             “linker” to specifically locate it in the physical memory based on the selections made in
                             the application file for the linker. This file is prepared by the developer to properly use
                             the target system memory resources. The linker decides where in the memory to place the
                             program code and the data.
                                  In particular, the debugging tools deserve special attention. The debugging require-
                             ments for embedded applications are significantly more stringent that those of desktop
                             applications. The reason is that the consequences of a failure are a lot more serious in real-
                             time systems. The simplest form of debugging tool includes a debug kernel on the target
                             system which communicates with a more comprehensive debugging software on the host
                             computer. More recent embedded controllers include on-chip debugging circuitry which
                             improves the debugging capability. A ROM emulator allows us to use RAM in place of
                             ROM during the development phase so that the host can change the target code and write
                             to the target hardware quickly.
   220   221   222   223   224   225   226   227   228   229   230