Hallo, ich hab heut ein einfaches GUI geschrieben, um openOCD komfortabler bedienen zu können. Vielleicht hat jemand Lust es auszuprobieren. Es ist, so glaube ich, nur für die AT91SAM7 typen geeignet. Ich hab es mit Qt 4.5.2 geschrieben (meine erste sinnvolle Qt Anwendung :-). Und auf Ubuntu (Linux) kompiliert. Windows-Version hab ich noch keine kompiliert. Die Quellcodes kann auf Anfrage narütlich jeder haben. Ich freue mich über jede Rückmeldung. lg, Karl
Hallo Karl, da ich leider nur Windows auf meinem Notebook habe, kann ich deine Gui nicht ausprobieren. Du hast mit deiner Idee bei mir genau ins Schwarze getroffen! Eine Gui, und sein sie auch nur um die Config-Dateien zu erstellen, ist genau das, was OpenOCD noch braucht. Ich habs es vor fast einem Jahr drangegeben mich mit den Configs abzumühen. Die Doku war um Generationen älter als die aktuelle Version. Für mich ist eine ordentliche Möglichkeit das Prog zu konfigurieren genauso wichtig, wie das Programm selbst. An der Stelle hat der Autor, meiner Meinung nach, zu wenig getan. Ich bin sehr gespannt auf deine Windows-Version!
Servus Bastl, naja, da wirst du aber mit meinem Progrämmchen auch nicht gerade glücklich. Denn openOCD muss dafür schon einwandfrei laufen. Ich weiß, dass das wirklich kein Spaß ist, openOCD + Adapter + Board zum laufen zu bringen. Hier das readme.txt zur ersten "release" ;-)
1 | 2009 07 01 |
2 | Karl Zeilhofer, Austria |
3 | |
4 | |
5 | SAM7 Graphical User Interface V0.1 |
6 | for "openOCD Version 0.1" |
7 | |
8 | Tested with oocd-link USB and |
9 | AT91SAM7A3 |
10 | |
11 | WARNING: |
12 | Use at your own risk. |
13 | All ARM7 commands are hard coded. |
14 | |
15 | |
16 | Start your openOCD as usual. |
17 | Telnetport must be set to 4444. This is the default port used by openOCD. |
18 | |
19 | Start oocd_gui |
20 | |
21 | Click Connect. Now you should see a Message in the bis text field like "Open On-Chip Debugger". |
22 | The GUI trys to connect to "localhost:4444". |
23 | |
24 | You can test the connection to the JTAG device with the Reset button. |
25 | |
26 | If you want to download a SRAM or FLASH image, select an existing file and click Load. |
27 | |
28 | With the input line you can use openOCD as you are used to. |
29 | |
30 | There are several buttons for typical openOCD commands. |
31 | |
32 | Show Memories: |
33 | Lists the first 8 Bytes of each address space |
34 | 0x00000000: memory used by the cpu |
35 | 0x00100000: flash memory |
36 | 0x00200000: sram |
37 | |
38 | Erase Flash is hard coded: |
39 | Address 0x00100000 |
40 | Size: 256 kB |
41 | |
42 | Remap to SRAM: (writing 0x00000001 to 0xFFFFFF00) |
43 | Does the remap command. |
44 | Use the Show Memories Button to check, which memory is mapped to 0x00. |
45 | Once remapped, this can only be undone by a Peripheral Reset. |
46 | |
47 | Peripheral Reset: (writing 0xA5000001 to 0xFFFFFD00) |
48 | Resets the peripherals and remaps the flash again to 0x00. |
49 | |
50 | CPU Reset: (writing 0xA5000001 to 0xFFFFFD00) |
51 | Perhaps needed for debugging |
Screenshot kommt noch.
Hallo nochmal, die Linux-Version wurde nun schon einige male heruntergeladen. Darf ich fragen, ob das Programm überhaupt läuft? Bin mir nicht sicher, ob es ohne Qt Bibliotheken auskommt. Hier gibt es nun die Windows-Version: http://www.cshare.de/file/197d2daad0cbe34536ebc0fe9968fb12/sam7-openocd-gui.rar.html Die enthält auch die benötigten Qt-DLLs. lg, Karl
Wie gesagt, ich würde mich sehr über eine Rückmeldung freuen. Hier hab ich nun mal eine lauffähige Linux-Version zusammengestellt - d.h. mit den Libs. Leider wird das kleine Programm mit den Bibliotheken recht groß... http://www.swoopshare.com/file/239300a4d151155fa2c8029ae6d82f9e/sam7-openocd-gui.tar.bz2.html
Hallo Karl, Deine GUI funktioniert generell bei mir unter Linux 2.6.32 und Qt 4.5.3. Leider ist es aber nicht möglich, über den 'Connect'-Button, eine Verbindung aufzubauen. Ich nehme an, dass Du einen anderen Programmieradapter als den Wiggler verwendest und die Konfiguration einfach nur angepasst werden müsste. Auch die anderen Buttons, ausser den '...'-Buttons zum starten der Dateiauswahl-Dialoge, zeigen logischerweise keine Funktion. Ich habe großes Interesse an Deinem Source-Code, da Du ja schon eine schöne Basis für eine vollwertige OpenOCD-GUI geschaffen hast. Ich würde Dein kleines Tool gerne um diverse Möglichkeiten der Konfiguration erweitern und die Änderungen natürlich auch wieder zurückfliessen lassen. Ist es möglich, dass Du mir die Sourcen zur Verfügung stellst? Viele Grüsse Peter
Hallo Peter, ich freue mich besonders über dein Interesse an dem GUI. Unter http://zeilhofer.wikidot.com/arm7 kannst du die Sourcen (samt Win-Bin) downloaden. Vor dem Connect-Klick musst du openOcd in einem Terminal bereits laufen haben. Denn mein GUI verbindet sich lediglich über eine Telnet-Verbindung auf den openOCD-Server (localhost:4444). Mhh, vielleicht fehlt dir die QtTelnet-Lib. Die heißt bei mir auf Windows QtSolutions_Telnet-2.1.dll http://qt.nokia.com/products/appdev/add-on-products/catalog/4/Utilities/qttelnet Das GUI ist wirklich sehr einfach geschrieben. Aber bei mir hat es im Moment tägliche Verwendung zum Flashen des uC. Welchen uC verwendest du denn? Denn die Befehle sind hard-coded. Wenn es ein ARM7 von Atmel mit 256kB Flash, sollte es vermutlich ohne Probleme laufen. lg, Karl
Hallo Karl, achso das Programm ist ein Telnet-Client. Ich hatte nicht versucht OpenOCD anderweitig zu starten. Wenn ich es im Terminal starte und dann deine GUI öffne, funktioniert sie tadellos. Ich verwende momentan einen At91SAM7s256 - ich habe noch nicht alle Kommandos, die in Deinem Tool "hardcoded" sind überprüft, aber soweit sieht das schon passend aus. Um die GUI aus den aktuellen Sourcen zu übersetzen, musste ich mir noch das QtTelnet-Paket herunterladen und einbauen - ein Installieren einer "QtTelnet-Lib" oder Ähnlichem war nicht nötig, da das Qt-Framework wohl alle Funktionen, aber nicht die nötigen Header bietet...bin mir da selbst nicht so ganz sicher. Naja, auf jeden Fall klappt das Übersetzen jetzt und die GUI funktioniert wunderbar. Ich habe bereits die Möglichkeit eingebaut Hostname und Port anzugeben. Ausserdem habe ich den OpenOCD-Connect-Kram etwas verändert, sodass man auch disconnecten und die Verbindung resetten kann. Ich werde als nächstes mal schauen, wie ich mit Qt das OpenOCD eingebettet bekomme. Gruss Peter
Hallo Peter, Hallo Karl, ich würde mich auch gern an der Entwicklung und dem Test der OpenOCD-GUI beteiligen. Ich arbeite derzeit mit einem ARM 9 der allerdings nicht auf einem Entwicklungsboard untergebracht ist. Wenn Ihr Unterstützung braucht einfach melden. Gruss Rene
Mir ist nun ein scheinbares Folgeprojekt von Sven Sperner untergekommen: https://github.com/sperner/OpenOCD-QtGUI Ist durch die Konfigurierbarkeit der verschiedenen Befehle sicherlich viel besser verwendbar. Anbei die Screenshots.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.