|
||||||||||||||||||||||||||||||||||||
|
For a complete C/C++ development system we need the following components:
This tutorial here will cover how to expand YAGARTO by Eclipse, It is required that you already have installed the GNU ARM toolchain from part 2.
It looks that this version has some problems to show the register view. If you need this feature, please use Eclipse 3.5.1, CDT 6.0.1 and the Zylin CDT Plugin. I will restore the tutorial for the old version in the next days. Please be patient... To use Eclipse as an Integrated Development Environment for your toolchain you need:
Only download, and do not install these files yet, I assumed you will download the files in your temp directory (c:\temp). We will install these files later.
First we will check if the JRE is already installed on your PC. Therefore open a command prompt and type:
C:\>java -version The result should look like: java version "1.6.0_18" If the Java Runtime Environment (JRE) is not installed on your PC, you can download the JRE from the following Sun website: Java SE Downloads (about 16 MB) Here you will find the "Java Runtime Environment (JRE) 6 Update 18" (that was the current version when I created this tutorial). Download the JRE and save it in the temp directory. (Note: The Zylin plugin does not work with java 1.4.2)
Here we want to download the Eclipse IDE for C/C++ Developers which can be found at the Eclipse page itself, for the tutorial here I have used Galileo 3.5.1. Download the "Eclipse IDE for C/C++ Developers" package and save it in the temp directory. At this point the following files should be downloaded in your temp directory:
Let's start with the JRE (1). If the JRE was not installed on your PC, start the installer and follow the instructions. After the JRE installation you must unzip the Eclipse file (2). Assumed you had unzipped it on drive C:\, you will see a folder named C:\eclipse. In that folder you will find the eclipse application itself, please create a shortcut on your desktop now. You can use this shortcut later to start the eclispe application. The next section is a pretty large one. Go ahead and take a quick break. Visite the facilities or brew a fresh pot of tea. When you get back, we will start with Eclipse. Click on the shortcut which you have created in the step before:
After the start of Eclipse you should see the following splash screen:
If not, you have a problem with the Java Runtime Environment. After a while Eclipse want to know where to store your projects:
Now you must install the Zylin Embedded CDT plugin. Zylin made some modifications in Eclipse CDT for Windows and created a plugin to improve the support for GDB embedded debugging in CDT. Therefore use "Help->Install New Software...":
The next window will be show up:
Press the "Add..." button and fill in the Repository information. Use zylincdt for the "Name" and for the "Location" use http://opensource.zylin.com/zylincdt .
Press "OK" and you must now select the feature you want to install. Select "Zylin Embedded CDT". The window should look like:
Press "Next" and "Next" again. Now you must accept the license agreements. Therefore select this options, and press "Finish". Now it can takes some time while the new software will be installed:
You must accept the Security Warning too:
After the software update you must restart Eclipse now:
Press the "Restart Now" button and wait while Eclipse will be restarted. After the restart you will see the start screen again:
Now click at the "Workbench" icon at the right edge of the window, and the next window will look like: What's next? Now let's start with a small example. Therefore I have created these examples for it. Download the example you need and expand the zip file in your temp directory. Note: The examples are updated because the GDB-6.8 and higher need the following option: set mem inaccessible-by-default off I will show you the next steps with the SAM7X256Test example. For this purpose, I expanded it in the following directory: C:\temp\SAM7X256Test To create an Eclipse project use: "File / New / C Project" The next window will be show up:
Here you will see that the "Location" is your workspace directory you created some steps above. Type in the "Project name" (I will use SAM7X256Test) and Select "Makefile project" and "-- Other Toolchain --", after this press the "Finish" button. Now the Eclipse window should look like: You just created your first Eclipse project. You now need to configure it. Use the "Projet" menu and remove the checkmark at "Build Automatically":
Use the "Project" menu again and select "Properties":
A new window will be opened: Use now the "Settings" under "C/C++ Build" page and select the "GNU Elf Parser": Press the "OK" button to finish this dialog. Your project is empty and you must import the project files to Eclipse.
Press the "Next" button to open the "Import" dialog:
But what files? You downloaded one of the examples above and expanded the zip file into a temp directory (I used C:\temp\SAM7X256Test). Select this directory for "From directory" and select all files with the checkmark. Press "Finish" to close the dialog. Your project should now look like: Now let's "clean" the project. For this purpose use " Project / Clean...". Set the options according to the next window:
Remove the checkmark at "Start a build immediately", and press "OK". The "Console" will show the result of the "Clean" command: By the way, you can open any source file by simply double clicking on it. The editor will open up: But do not change the file. Now let's build the project using "Project / Build Project":
The project will be build, and the window look like: At the same time you will see the result of the build process inside the "Console" window. After a successful build process, an elf file was created:
Now it is time for a break again. When you get back, we will start to install and configure the debugger. Configure the debuggerFor the debug process we need to open the "Debug Perspective". For this purpose use "Window / Open Perspective / Debug":
The new perspective will be opened. It looks like: Now we need to configure the debugger. You can reach the configuration by clicking on the down arrow at the "insect" button. That brings up the pull-down menu:
And select "Debug Configuration...":
The next window will look like: (Oops, I hope my keyboard is teaproof, and I will be able to finish the tutorial) Now you must decide what kind of GDB you have:
We use the YAGARTO toolchain, where GDB is based on Windows. Select "Native" and press the "New" button to create a configuration of selected type. The "New" button look like:
The configuration window will be changed and look like Click at the "Search Project..." button and select the test_ram.elf file:
Press "OK" and change the project name from "SAM7X256Test Default" to "SAM7X256Test-RAM". This will help you later to identify your project if you want to debug in RAM or Flash. Your configuration window should now look like:
Note: This view is only the right part of the configuration window. Select the "Debugger" tab and use arm-none-eabi-gdb for the "GDB debugger":
Now change to the "Commands" tab and insert the debugger commands:
A file called xxxxxx_ram.gdb is part of the example Now you are done with the configuration and you may close the dialog with the "Close" button. Press "YES" to save the changes:
For debuging with Eclipse we will use the GDB, therefore we need a GDB Server which you have installed from part 1. Connect the J-Link EDU to the PC and to the target (do not forget to power the target) and start the J-Link GDB Server. Now we can start the debug session. Eclipse should look like: The debugger will be started the first time using the configuration menu:
Here you will find your new configuration "SAM7X256Test-RAM": Press the "Debug" button to start the debugger. Eclipse should look like: The debugger is running, congratulation. The window at the bottom is the "GDB Debugger" command window. The upper left window is the "Debug" window. Here you will find some icons for stepping through the code (some more info later). The highlighted line in the source window (main.c) is the actual line which will be executed in the next step. The upper right window shows the "Variables". You can change the view to "Breakpoints", "Register" and "Modules". Don't worry about the strange values for a, b and c. That is OK at this time, because these variables are not yet initialized. You can step through the code with the following button (in the Debug window):
Take a look at the "Variables" window. After three steps the windows should look like:
And the source window:
With the three steps from above, a = 1, b = 2 and c = 0 was executed. And the next line will be a = a + d. Note: The line which is highlighted is not yet executed This will be done with the next step. How to set a breakpoint? Setting a breakpoint is very easy. Double click in the left gray area of the soucre window. I mean the area where the blue arrow is:
If you double click in line of c = a + b, a breakpoint will be set:
The blue checkmark with the blue dot is the new breakpoint. You can remove the breakpoint by double clicking on it again. Now we want to use the "Resume" button:
The program will be executed and it will stop at the breakpoint.
The value of the variables was changed to a = 2 and b = 3. You can "Terminate and Remove" your debug task with a right click on You can start the debugger again by the "insect", but at this time you will find an entry for SAM7X256Test-RAMt:
The story is over, many thanks to: JRE, Eclipse and Zylin :o) Trouble shootingIn case you have problem to stop / launch the debug process, close Eclipse the GDB Server and execute an RESET on the target. After this you can start Eclipse and the GDB Server again. SupportIf you need support, take a look here: If you have some problems with Eclipse, take a look at the Eclipse Community.By the way, I am looking for a good book too, any hints are appreciated. License information All of the software like the Eclipse Platform Runtime Binary, Eclipse CDT and the GDB embedded plugin falls unter the Eclipse Public License - v 1.0
|
|||||||||||||||||||||||||||||||||||