Toolbox für Programmierer

OP #337943
Lesenswert?

Hi

Ich möchte hier mal ein Programm vorstellen, das eine ganze Reihe von
Berechnungen und Tools zusammenfasst, die für AVR-Programmierer
interessant sein könnten.
Nur einige Beispiele:
  -Berechnungen für Timer,UART,PWM,ADC,SPI,TWI,RC-Oszillator...
  -Umwandlung von Bitmaps in Assemblercode
  -Codegenerierung für Interrupts und IO-Initialisierung
  -Generierung von Zeichentabellen für 7/14/16 Segm Ledanzeigen,LCD
   und
  -Punktmatrix Anzeigen
  -AVR spezifischer Rechner
  -Generierung von Wertetabellen mathematischer Funktionen
  -Tool zum einfachen debuggen über UART

Im Anhang befindet sich eine zip-Datei mit einer Kurzbeschreibung,
einige Screenshots und eine ASM-Datei die mit dem Programm erzeugt
wurde.
Falls Interesse besteht würde ich das Programm in den nächsten Tagen
hier zugänglich machen.

MfG HG
Angehängte Dateien:
Gast #337951
Lesenswert?

Hi,

planst du das Teil als freie Software zu veröffentlichen? Ich hätte
interesse dran das auch unter Linux zu nutzen (bzw. zu portieren) -
wäre nett wenn dafür die Quellen verfügbar wären

Gruß Andreas
OP #337957
Lesenswert?

Hi

Erst mal vielen Dank für das Interesse.

Vielleicht erst mal einige Bemerkungen. Angefangen het das ganze 1998.
Damals brauchte ich ein Tool um Bitmaps auf ein Grafikdisplay zu
bekommen. Dann kamen noch andere Programme dazu, bis ich mich
entschlossen habe alles zusammenzufassen.Sukzessive mit dem
Herauskommen neuer AVRs hat sich dann alles weiterentwickelt.

Das Programm ist in Delphi geschrieben und umfasst laut Compiler
mittlerweise mehr als 12000 Programmzeilen.

Zum gegenwärtigen Zeitpunkt bin ich erstmal bereit das Teil hier jedem
Interessenten zur Verfügung zu stellen. Falls es schlagende Argumente
für die Weitergabe des Quellcodes gibt, werde ich noch mal darüber
nachdenken.

Zum Schluss noch der Grund,weshalb es noch ein paar Tage dauern wird:
Ursprünglich habe ich die Informationen für die Codeerzeugung aus dem
Datenblatt heraus kopiert (Interrupttabelle). Dann musst ich vor
einiger feststellen,daß einige neuere Datenblätter kopiergeschützt
sind. Deshalb habe ich den Programmteil in den letzten 2 Wochen auf die
XML-Files umgestellt (allerdings mit wesentlich mehr Möglichkeiten). Die
Files sind allerdings teilweise etwas schlampig erstellt undich bin im
Moment noch dabei zu testen ob ich alle Fallen
erwischt habe.

MfG HG
Gast #337958
Lesenswert?

Hi!
Darf man auch meckern?  <in Deckung gehe>
<ldi r16,$00
<sts OCR2A,r16
<ldi r16,$00                   ;
<sts OCR2B,r16
<ldi r16,$00                   ;EXCLK,AS2
<sts ASSR,r16

Sind Zeiger völlig unbekannt?
Muss R16 städig auf 0 gestzt werden obwohl es schon 0 ist?
Für mich die blanken Flashkiller.

MFG Uwe, <und wech isser>
#337959
Lesenswert?

Diese Redundanzen sind mir auch aufgefallen, ich denke, das geht aufs
Konto der automatischen Dateierstellung. Auf der anderen Seite, wenn
man da die einzelnen Ports unterschiedlich einstellen will, hat man die
entsprechenden 'ldi r16,$00'-Platzhalter schon drin, spart wiederum
Tipparbeit. Persönlich kommt mir das entgegen und wenn das dann läuft,
kann man die überflüssigen 'ldi r16,$00'-Statements immer noch
rauskürzen.

@Uwe: Wieso Flashkiller? Register sind SRAM, da gibt es keinen
Verschleiß, die kann man beliebig oft neu beschreiben.

Gruss
Jadeclaw.
Gast #337961
Lesenswert?

nun wartet doch mal ab bis die Software kommt. Es werden sich bestimmt
noch einige verbesserungswürdige Punkte finden lassen und auch Andere
die erstmal diskutiert werden müssen (wie z.B. die Sache mit dem
Platzhalter).

Sinnvolle Gründe für die Freigabe der Sourcen? Klar, willst du alle
zukünftigen Änderungen ganz allein machen? Wozu, wenn es auch Leute
gäbe die dabei gern helfen würden? Als Urheber der Software bleibst du
ja trotzdem der Mastermind. Also, wenn du keine Pläne hegst dafür mal
irgendwann Kohle zu verlangen, was spricht dann gegen ein Open Source
Projekt?

bye

Frank
OP #337962
Lesenswert?

Hi

@Uwe und danach

Die Sequenz:
  ldi r16,$00
  out(sts) register,r16

ist gewissermaßen ein Platzhalter.
Die Angaben im Kommentar sind die relevanten Bits.
Bits die die Eigenschaft 'nur Lesen' haben, werden ausgeblendet.
Ebenso die Bits die einen kompletten Wert (Byte) darstellen.

Im Editorfenster kann mit der rechten Maustaste ein PulldownMenü
geöffnet werden mit dem das Bit in dem sich der Cursor befindet in
'1<<Bit' umgewandelt wird und anstelle von '$00' gesetzt wird.
Beim Anklicken weiterer Bits wird '|1<<Bit' erzeugt und an 'ldi
r16,... angehängt.

MfG HG
#337971
Lesenswert?

Joa, leider nur für die Megas.
Aber die kleinen sind in ihrem Funktionsumfang ja recht überschaubar.
Das sollte sich auch von Hand schaffen lassen.
Aber wie gesagt, das Programm generiert C-Code. Und wenn ich es recht
mitbekommen habe, generiert das Tool von Hartmut Assembler-Code.
Also 2 unterschiedliche Welten... (mehr oder weniger) :-)
Gast #337976
Lesenswert?

> Falls es schlagende Argumente für die Weitergabe des Quellcodes
> gibt, werde ich noch mal darüber nachdenken.

Anderer Sichtwinkel:

  Welche schlagende Argumente gibt es, den Quellcode
  nicht weiter zu geben?

Du willst das Tool ja so oder so "verschenken" bzw. der Allgemeinheit
zur Verfügung stellen.

Falls Du planst, Dein Tool zu vermarkten, ohne Quellcode, so wie
herkömmliche Software vermarktet wird:

 - Wer würde Deine Software zu welchem Preis kaufen?
 - Wieviele Lizenzen müsstest Du verkaufen, um nach Abzug
   aller Steuern Deine reingesteckte Arbeit halbwegs 'bezahlt'
   zu haben?
 - Was würde Vertrieb und Marketing kosten?
 - Was würde Produkt-Support kosten?

Naja, auf was ich hinaus will: Für die meisten dieser netten und
ausgefeilten Progrämmchen existiert kein nennenswerter Massen-Markt.
Die Vorstellung dass man ein Tool schreibt und dass man davon dann
tausende Lizenzen verkaufen kann, ist illusorisch.

Die Anzahl der Marktteilnehmer die mit Lizenzen für den Massen-Markt
Geld verdienen, ist erstaunlich klein. Die ganzen kleinen
Softwarehäuser verdienen ihr Geld fast alle mit Spezial-Software die
bei nur sehr wenigen Kunden läuft.

Besser ist für solche Tools also folgendes "Geschäftsmodel":

 - Als Open-Source veröffentlichen.
 - Die Resonanz (meistens sehr dünn bei Spezial-Software)
   aus der Veröffentlichung in das Projekt einfließen lassen.
 - Professionellen Support und kundenspezifische Anpassungen
   gegen Geld anbieten.

Vom letzten Punkt nicht zu viel erwarten. Du brauchst schon einige
tausend Installationen Deiner Software, bis mal jemand kommt der
dringend eine Änderung benötigt und Dich dafür bezahlt.
#337977
Lesenswert?

@Unbekannter:
Man könnte es auch so sehen:
Wir alle sind Hartmut dankbar, wenn er uns seine App gratis zur
Verfügung stellt.
Die Freigabe der Sources, könnte für einige Wenige, die sich damit
aktiv auseinandersetzen wollen, ein Sahnehäubchen sein ;-)
Erfahrungsgemäß wird die Masse eher neue Features erbetteln als selbst
Hand anzulegen... In dem Moment der Freigabe verliert er letztlich die
Kontrolle über die Nutzung seiner Arbeit - deshalb sollte man hier
Niemanden unter Druck setzen oder belabern!

Grüße, Hendrik
#337979
Lesenswert?

Es soll Spinner geben, die das Copyright des Urhebers löschen, den
eigenen Namen dafür einsetzen, evtl. noch etwas Adware oder werbung
einbauen, das ganze versuchen dann an Unwissende zu verkaufen oder auch
nur um sich mit fremden Lorbeeren (?) zu schmücken. Die meisten haben
genug Anstand, nicht auf derartige Ideen zu kommen - die wenigen
verbleibenden Parasiten reichen aber aus, einen an dem Aufwand zweifeln
zu lassen.
GPL sollte zwar schützen - aber wer möchte sich schon mit RA
herumärgern...

Ich halte das für OT - aber da ich um eine Präzisierung gebeten
wurde... und bevor das noch weiter ausartet: ich denke, auch Du,
Unbekannter, wirst schon deratiges erlebt haben und kannst (wenigstens
ansatzweise) nachvollziehen, was ich meine.

Grüße, Hendrik
Gast #337986
Lesenswert?

> Erfahrungsgemäß wird die Masse eher neue Features erbetteln als selbst
Hand anzulegen...

Und ? Ohne Quellcode bleibt auch denen, die neue Features selber
hinzufügen würden nichst anderes übrig als darum zu betteln.

Und wenn die Binaries so oder so gratis sein sollen, gibt es absolut
keinen Grund, den Quellcode nicht zu veröffentlichen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren