PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : BitSet Eclipse Plugin



Surveyor
10.11.2006, 14:56
Hi,

Das BitSet Eclipse Plugin erweitert die IDE um einen Dialog, in dem Register Definitionen nach Architektur in einer Baumansicht abgelegt sind. Man kann dann z.b. Atmel/AVR und ein Register auwählen und bekommt eine Übersicht über die Einzelnen Optionen.

Zur Zeit bin ich da noch in der Entwicklung. Wenn es fertig ist, wird man, je nach Bitbreite der Optionen, über Checkboxen, Dropdownboxen usw. die Einstellungen machen können und bekommt einen Endwert für das Register, den man in den Quellcode übernehmen kann.

Umgekehrt wirds auch auch funktionieren. Schaut man nach einiger Zeit mal wieder in einen Quellcode und möchte wissen welche Einstellungen man gemacht hat, kann man den Wert in ein Eingabefeld kopieren und sieht dann die Einstellungen.

Wer schon mal gucken möchte: http://www.sourceforge.net/projects/bitset

Ergänzungen und weitere Ideen sind erwünscht :).

Surveyor
21.11.2006, 22:02
Ich hab die aktuelle Version mal als Plugin exportiert, für den Fall das jemand sich das ganze angucken möchte, ohne erst lange compilieren zu müssen.

Surveyor
11.12.2006, 18:49
Die erste funktionsfähige Version ist da =).

Surveyor
05.03.2007, 20:40
So ich hab die erste 1.0 beta fertig. Zur Zeit schreib ich an einem Editor, mit dem man relativ einfach neue CPU Definionen schreiben kann ohne sich mit XML beschäftigen zu müssen. Download unter der oben genannten Adresse.

Surveyor
13.04.2007, 11:39
Ich hab jetzt auch endlich eine erste Version des BitSet-Editors fertig, mit dem man relativ einfach die XML Struktur für das Plugin erzeugen kann.

Superhirn
13.04.2007, 22:16
hallo.

werde deinen monolog kurz unterbrechen ;)
anscauen konnte ich es nicht da grade sf down ist:
We're Sorry.
The SourceForge.net Website is currently down for maintenance.
We will be back shortly

auch egal. kannst du auch kurz eine mini einführung schreiben für eclypse und avr. denn ich hab sowas noch nie gesehen. nur kdevelop und avr. aber Kontrollerlab ist für mich derzeit mein favorit.

ist dein programmchen so änlich wie im avrstudio die register Links auf der seite?

lg
Thomas

Surveyor
14.04.2007, 10:38
hallo.


auch egal. kannst du auch kurz eine mini einführung schreiben für eclypse und avr. denn ich hab sowas noch nie gesehen. nur kdevelop und avr. aber Kontrollerlab ist für mich derzeit mein favorit.

ist dein programmchen so änlich wie im avrstudio die register Links auf der seite?



Bei Eclipse handelt es sich ursprünglich um eine IDE für Java. Durch die Erweiterung "CDT" kann man damit aber auch C(++) Projekte erstellen und compilieren. Um jetzt speziell für Atmel-uC Programme zu erstellen gibts noch ein AVR-Plugin (hab ich auf www.mikrocontroller.net gefunden). Wenn man diese Componenten zusammen hat braucht man noch ein Programmier Tool, unter Linux nutze ich da "uisp". Eclipse bietet eine Möglichkeit externe Tools einzubinden, d.h. man kann dann einfach das Programm über einen Button aufrufen und der Programmcode wird an den uC übertragen.

Soweit so gut, was mir fehlte war die Möglichkeit die Einstellungen für die Register (AD-Wandler, UART usw.) machen zu können, dazu habe ich das BitSet-Plugin geschrieben. Der Dialog dazu wird über ein Pulldown-Menu oder Speedbutton aufgerufen. Im weiteren wählt man die Optionen die man braucht und sieht dann den Wert des Registers. Später soll man das noch direkt in den Quelltext übernehmen können.

Mit dem BitSetEditor kann man nun neue CPUs hinzufügen, da die Daten vorher dem BitSet-Plugin in einer XML-Struktur hingefügt werden müssen.

KDevelop hab ich auch mal ausprobiert, allerdings hat mich gestört, das die IDE Einstellungen (Anordnungen von Fenstern usw.) bei mir nicht richtig gespeichert wurden. Außerdem ist Eclipse Platformenunabhängig einzusetzbar.

Kontrollerlab sieht ganz interessant aus. Dafür muss ich mir mal einen ebuild für Gentoo-Linux schreiben.

Avr-Studio kenn ich nicht, somit kann ich das nicht vergleich.

Ein Screenshot von meinem Programm: http://sourceforge.net/dbimage.php?id=109063

Surveyor
14.04.2007, 10:42
Noch mal zum Screenshot:

Links sieht man zunächst die zur Verfügung stehenden CPUs nach Architektur sortiert. Darunter eine Tabelle aller Register, in die man z.B. einen Wert eintragen kann. Auf der rechten Seite würde man dann sehen welche Einstellungen gemacht wurden. Umgekehrt ist es auch möglich einzelne Optionen zu wählen und dann den Registerwert abzulesen. Auf der rechten Seite werden je nachdem wieviel Bits eine Option benötigt CheckBoxen oder ComboBoxen angezeigt. dazu ist es auch noch möglich den Wert direkt als Zahl einzugeben. Ich stelle gerade fest, das das noch ein alter Screenshot ist, denn ganz rechts in der Spalte würden normalerweise die Wertebereiche angezeigt, z.B. für "GIE" "0..1".

Surveyor
24.07.2007, 17:06
Da dieses Projekt bisher nicht soviel Intresse geweckt hat, interessiert mich mal ob man das ganze noch Verbessern kann oder ob ihr überhaupt Eclise zum Entwickeln von Programmen für Atmel Mikrocontroller einsetzt?

Gock
28.09.2007, 12:53
Hi!
Falls Du diesen Thread noch verfolgst...
Ich habe gerade versucht, Eclipse mit integriertem C/C++ Unterstützung (gibt es mittlerweile als einzelenen Download auf der Eclipse homepage) und AVR PlugIN unter Windows zu nutzen. Ohne Erfolg. Leider habe ich kein passendes Tutorial gefunden, wie ich da was wo einstellen muss. Die, die ich gefunden habe, die galten offenbar nicht für meine aktuelle Version.
Ich würde das gerne benutzen, weil die Darstellung von Funktionen usw. besser ist als AVR Studio oder WinAVR. Außerdem gibt es da wohl Funktionen zum automatischen Einfügen von Begriffen usw.
Aber ich bekomm' es zur Zeit nicht hin und kann es mir nicht leisten, dafür weitere Stunden zu benötigen.
Daher kann ich auch Dein Tool leider nicht nutzen.
Kannst und willst Du mir dabei helfen? Ich denke, wenn man es den anderen schmackhaft macht, wären die auch interessiert. Aber zur Zeit weiß keiner, was das ist und das erklärt das geringe Interesse an diesem Thread...
Gruß

Surveyor
28.09.2007, 13:30
Hi!
Falls Du diesen Thread noch verfolgst...
Ich habe gerade versucht, Eclipse mit integriertem C/C++ Unterstützung (gibt es mittlerweile als einzelenen Download auf der Eclipse homepage) und AVR PlugIN unter Windows zu nutzen. Ohne Erfolg. Leider habe ich kein passendes Tutorial gefunden, wie ich da was wo einstellen muss. Die, die ich gefunden habe, die galten offenbar nicht für meine aktuelle Version.
Ich würde das gerne benutzen, weil die Darstellung von Funktionen usw. besser ist als AVR Studio oder WinAVR. Außerdem gibt es da wohl Funktionen zum automatischen Einfügen von Begriffen usw.
Aber ich bekomm' es zur Zeit nicht hin und kann es mir nicht leisten, dafür weitere Stunden zu benötigen.
Daher kann ich auch Dein Tool leider nicht nutzen.
Kannst und willst Du mir dabei helfen? Ich denke, wenn man es den anderen schmackhaft macht, wären die auch interessiert. Aber zur Zeit weiß keiner, was das ist und das erklärt das geringe Interesse an diesem Thread...
Gruß

Ja ich verfolg das hier noch =).

Läuft denn Eclipse mit CDT (C++ Support)?

Welche Eclipse Version?
Welche CDT Version?
Welche Windows Version?
Welches AVR Plugin verwendest Du?

Gock
28.09.2007, 14:07
Holla!
Ich habe diese Datei runtergeladen: eclipse-cpp-europa-win32.zip
Unter "Help --> About Eclipse steht:
Eclipse Platform
Version: 3.3.0
Build id: I20070621-1340

Unter Help --> About --> Plattformfeatures steht:
Eclipse C/C++ Development Tools
Version: 4.0.0.200706261300
Build id: 200706261300

und dieses AVR-Plugin: 20070813-avr-eclipse.zip
Da steh in der Readme: 20070813 (1772958)

Auf der Homepage gibt es wie gesagt ein Eclipse mit bereits integriertem C/C++ Support, die habe ich runtergeladen.
Ich habe WinXP, mit wahrscheinlich allen Updates (weiß man ja nie so genau...)

Es funktioniert auch teilweise. Aber:
Im Sourcefenster werden keine C typischen Formatierungen angezeigt, auch nicht, wenn ich sie unter Window --> Show View einstelle.
Außerdem kommen bei Druck auf entsprechende Köpfe Fehlermeldungen.
Zb.: "Launch failed, no binaries"
"Those operation is currently not availible"
Tja, habe ich wohl irgendwas noch nicht eingestellt...
Aber was und wo???
Habe dieses Tut verucht, war aber anders als bei mir:
http://tinkerlog.com/2007/06/03/programming-avr-with-eclipse-and-winavr/
Danke schon mal,
Gruß

EDIT:
Aha! Ich bin etwas weiter gekommen. Ich habe es geschaft, ein C-File zu kompilieren. Allerdings bekomme ich bei Druck auf Debug oder run eine andere Fehlermeldung:
Exec Error: launching failed

Surveyor
28.09.2007, 19:32
Das AVR-Plugin kenn ich nicht...

Ich benutze dieses hier... http://www.mikrocontroller.net/topic/31008

Gock
29.09.2007, 20:24
Schade.
Davon habe ich auch schon gehört. Bin mir nicht ganz sicher, aber ich glaube das ist eine ältere Version, die nicht so komfortabel ist, wie die von mir genannte. Verschiedene Einstellungen müssen da noch von Hand und per "Tippen" bei jedem neuen Projekt gemacht werden. Bei der anderen Version kann man auswählen.
Gruß

Surveyor
29.09.2007, 22:22
Schade.
Davon habe ich auch schon gehört. Bin mir nicht ganz sicher, aber ich glaube das ist eine ältere Version, die nicht so komfortabel ist, wie die von mir genannte. Verschiedene Einstellungen müssen da noch von Hand und per "Tippen" bei jedem neuen Projekt gemacht werden. Bei der anderen Version kann man auswählen.
Gruß

Die Einstellungen kann man da genauso wie bei einem normalen C(++) Projekt machen. Ich weiß jetzt nicht was Du mit "tippen" meinst... Wenn ich in den nächsten Tagen mal Zeit hab schau ich mir das Plugin von der Sourceforge Seite mal an und vergleiche mal.

Gock
30.09.2007, 13:14
Das wäre cool, ich habe es nämlich immernoch nicht zum Laufen gebracht, wegen besagter Fehler.
Mit Tippen meine ich zb "-mcu=atmega16" usw. Dropdownmenüs können da schon helfen...

Surveyor
30.09.2007, 13:15
Das wäre cool, ich habe es nämlich immernoch nicht zum Laufen gebracht, wegen besagter Fehler.
Mit Tippen meine ich zb "-mcu=atmega16" usw. Dropdownmenüs können da schon helfen...

Die gibts da. Du kannst es aber wenn Du willst auch von Hand ändern.

Gock
08.10.2007, 14:30
Tatsache, habe nun "Deinen" Link genutzt und gesehen, dass es sehr ähnlich ist, wie das, was ich schon kannte. Aber so langsam vergeht mir leider die Lust, denn auf Anhieb wurde das nichts und da ich selten mehr als 20 Minuten für sowas Zeit habe, wird das einfach nix...
Im letzten Fall hatte ich ähnliche Fehler wie bei meiner Version.
Ich muss mir das mal in Ruhe ansehen, aber erstmal sehe ich mir Dein Plugin an...
Danke schonmal.

Surveyor
08.10.2007, 17:44
Tatsache, habe nun "Deinen" Link genutzt und gesehen, dass es sehr ähnlich ist, wie das, was ich schon kannte. Aber so langsam vergeht mir leider die Lust, denn auf Anhieb wurde das nichts und da ich selten mehr als 20 Minuten für sowas Zeit habe, wird das einfach nix...
Im letzten Fall hatte ich ähnliche Fehler wie bei meiner Version.
Ich muss mir das mal in Ruhe ansehen, aber erstmal sehe ich mir Dein Plugin an...
Danke schonmal.

Ich hatte leider noch keine Zeit mich weiter drum zu kümmern.

Ich hab den Eindruck du versuchst das AVR binary auf dem PC auszuführen.

Wenn Du erfolgreich compilieren kannst, brauchst Du ein Script (wie bei Deinem Tutorial) was das Binary auf den AVR runter lädt.

Mit "launch" und "debug" kann man bei einem C-Projet für den PC das Programm starten und debuggen, für einen Atmel uC sind da imho noch ein paar Tools notwendig. Debugging hab ich aber auch noch nich gemacht.

Mit welchem Programm lädst Du bishe die Daten auf den uC?

Gock
08.10.2007, 18:11
Achso ist das...
In Eclipse schaffe ich es mit Deinem Plugin nicht, allses so einzustellen, dass überhaupt ein Syntax highlighting funktioniert, mit meinem Plugin habe ich wie gesagt schon compiliert, aber nicht debuggt. Ich dachte gutgläubig, das geht dann so auf Knopfdruck. Aber so langsam verlier ich ehrlich gesagt die Lust. So groß ist mein Code auch wieder nicht, sodass sich der AUfwand nicht lohnt.
Zur Zeit mache ich alles mit AVR Studio und einem AVRISP MKII. Das ist ja auch nicht schlecht. Das einzige, was mit nicht gefällt, ist das schlechte Syntaxhighlighting bzw das fehlende Autovervollständigen oder wie sich sowas nennt. Ersteres kann sogar das ProgrammersNotepad von WinAvr besser, aber nur das Highlighten. Die beiden arbeiten aber nicht wirklich gut zusammen, weil debuggen muss ich es eh' im Studio. Aber um bei Beginn eines neuen Progs das grobe erstmal runter zuschreiben wären besagte features schon nicht schlecht.
Heute hab ich voller Freude im AVRStudio eine Funktion gefunden, sich Visualisierungen runterzuladen. Dummerweise bricht er das mit einer Fehlermeldung ab.
Eine selbst konfiguirerbare Syntaxhighl. würde mir schon ausreichen, zb dass Funktionen Fett erscheinen usw.
Gruß

Surveyor
08.10.2007, 18:23
Ok, wo Du das mit dem Syntax Highlighting sagst, ich hab bisher nur in Assembler programmiert und da gibts keins. Ich weiß jetzt nicht wie das bei C Code ist.

Gock
08.10.2007, 21:21
Ich habe auch die ganze Zeit nur in Assembler programmiert, aber das macht mittlerweile keinen Spass mehr, weil Dinge komplizierter werden, ich aber keine Zeit für sowas habe. Die Unterstützung eines professionellen Entwicklungstools ist gigantisch! Das habe ich am Beispiel Java gelernt. Es spart soviel Zeit, weil man die Fehler schon beim Eintippten sieht. Außerdem hat man keinen Lerneffekt, wenn man 2 Stunden braucht, um ein "p" von einem "P" zu unterscheiden oder ein "s" von einem "S"!
Desdeweeche würde ich das gerne benutzen.
Gruß

Surveyor
23.10.2007, 22:41
Ich habe auch die ganze Zeit nur in Assembler programmiert, aber das macht mittlerweile keinen Spass mehr, weil Dinge komplizierter werden, ich aber keine Zeit für sowas habe. Die Unterstützung eines professionellen Entwicklungstools ist gigantisch! Das habe ich am Beispiel Java gelernt. Es spart soviel Zeit, weil man die Fehler schon beim Eintippten sieht. Außerdem hat man keinen Lerneffekt, wenn man 2 Stunden braucht, um ein "p" von einem "P" zu unterscheiden oder ein "s" von einem "S"!
Desdeweeche würde ich das gerne benutzen.
Gruß

Klar, ich programmier auch nur in Assembler wenn es sein muss, ansonsten kenn ich auch C(++) und Java sowie Python ;).

Hier ist noch ein Tuturial zu AVR mit Eclipse: http://www.mikrocontroller.net/articles/AVR_Eclipse