Forum: Compiler & IDEs Unöffentliche Hilfe bei meinem Programm


von Tobias T. (tobytetzi)


Lesenswert?

Hallo,

ich habe ein Programm in WinAVR für einen ATmega8 geschrieben.
Es läuft so weit ganz gut.
Nun habe ich noch ein paar Änderungen vorgenommen,
bekomme aber Timingprobleme.

Da es sich um ein Projekt handelt, welches mir kein Japaner oder Chinese 
einfach so nachbauen soll,
möchte ich das gesammte Programm ungern veröffentlichen.

Ich suche nun Hilfe, von jemanden, der sich das Programm mal ansieht,
um mir bei gewissen Problemen zu helfen.

Grundsätzlich handelt es sich um ein Rotor Display für einen 
Modellhubschrauber.

Evtl. lasse ich mich auf eine Entlohung ein, obwohl ich bis lang noch 
nicht wirklich große Verkäufe des Systems verzeichnen kann.

Ich hoffe hiermit, jemanden zu finden, der mich ein wenig unterstützt.

Liebe Grüße Toby

von Javier (Gast)


Lesenswert?

... Japaner oder Chinese ...

¡Buenos días!

Ningún problema. Es un forum español.

Adiós

Javier

von Tobias T. (tobytetzi)


Lesenswert?

Hallo,

denkst Du, das es hier keine "Neugierigen" Produktpiraten gibt?

Außerdem ist es nicht spanisch, ondern deutsch, oder? ;-)

Gruß Toby

von yalu (Gast)


Lesenswert?

Ketzerische Frage: Wenn du so genial bist, dass dein Rotordisplay alle
bereits im Internet mit Source-Code veröffentlichten in den Schatten
stellt, warum bist du dann nicht in der Lage, die Probleme selbst zu
lösen?

'tschuldigung, kam mir nur gerade so in den Sinn, soll andere nicht
davon abhalten, dich zu unterstützen.

von X. Y. (jtr)


Lesenswert?

D.h. du erwartest Hilfe bei einem kommerziellen Projekt unter NDA ohne 
Bezahlung. Ob sich da jemand findet?

von Tobias T. (tobytetzi)


Lesenswert?

Hallo,

nein, meine "Propeller" Clock stellt nicht andere in den Schatten.
Nur gibt es derzeit keine vergleichbaren Rotorblätter.
Ich möchte halt nicht, das jemand, ohne viel dafür zu tun,
meine Idee und Entwicklung einfach so nachbaut.

Ich sagte ja, das ich bereit bin, auch dafür zu bezahlen.
Nur wollte ich anmerken, das es noch nicht der "Verkausschlager" ist.
Das ich also nicht so viel investieren kann.
Kommt halt auf die Summe an.

Gruß Toby

von Hannes J. (Firma: _⌨_) (pnuebergang)


Lesenswert?

Dann bleibt dir noch, jemanden einen Anteil am Verkauf als Gegenleistung 
für seine Arbeit anzubieten. Vielleicht findet sich ein Glücksritter, so 
wie damals in der New-Economy. Die meisten sind weiser geworden und 
arbeiten lieber für Geld als für gute Worte und Versprechungen.

von Gast (Gast)


Lesenswert?

Was für ein kindischer Humbug. Stimmts: Deine nächste Frage wäre, wie Du 
ein Patent anmelden kannst. Ein weltweites natürlich.

von I_ H. (i_h)


Lesenswert?

Japaner und Chinesen in einen Topf zu werfen ist schlimmer als Deutsche 
und <EU Land östlich von uns> in einen Topf zu werfen.

Japan hat das selbe BIP/Einwohner wie Deutschland... nur mal so zur 
Info. China hat 1/20stel davon.
Und Japan hat ~1.5mal so viele Einwohner, entsprechend auch ein ~1.5mal 
so hohes BSP wie wir.

von Peter D. (peda)


Lesenswert?

Geniale Programmierer wachsen nicht auf Bäumen sondern sind sehr rar 
gesät.

Man macht sich daher das Leben erheblich einfacher, wenn man erstmal 
davon ausgeht, daß man nicht dazu gehört. D.h. man postet einfach seine 
Programme und lernt aus den Reaktionen dazu.

Und wenn dann doch jemand diese Idee erfolgreich vermarken sollte 
können, dann weiß man wenigstens, daß man auf dem richtigen Weg ist.
Und als wirkliches Genie hat man dann ja schon die nächste Idee in 
petto.
Und man kann daraus lernen, wie der andere es zur Produktreife geführt 
hat (was in EU-Land ja alles andere als einfach ist).

In jedem Fall hat man aber wesentlich mehr gewonnen als mit 
übertriebener Geheimniskrämerei.


Peter


P.S.:
Ich wünsche mir manchmal sogar, daß Code abgekupfert wird, z.B. damit 
ich endlich mal Geräte prellfrei bedienen kann.

von Matthias L. (Gast)


Lesenswert?

>Ich wünsche mir manchmal sogar, daß Code abgekupfert wird, z.B. damit
>ich endlich mal Geräte prellfrei bedienen kann.

Dann solltest du deinen bulletproof-tastenentpreller vielleicht nicht 
veröffentlichen, sondern Heimlichtuerei betreiben. Das schafft Neugier 
;-))


@ Tobias Tetzlaff (tobytetzi)

Vielleicht kannst du ja zumindest paar Details bekanntgeben:
- Was soll das Programm genau machen,
- Was macht es wirklich,
- Wie groß ist das Programm etwa,
- Wo denkst du ist das Problem,
- Was erwartest du beim Darüberschauen..?

von Tobias T. (tobytetzi)


Angehängte Dateien:

Lesenswert?

Hallo,

@Gast, nein, dazu habe ich mich schon schlau gemacht.
Aber wenn auch nicht, was würde gegen die Frage sprechen?
Es gibt nunmal keine dummen Fragen, nur .... .

@I.H, ok, ich nehme hiermit meinen Kommentar zurück. ;-)
Auch wenn ich nur deutlich machen wollte, das kein anderer die Sache 
einfach so nachbaut.

@Peter, ich habe mich entschlossen, das Programm hier einzustelen.
Allerdings gehe ich nicht davon aus, genial zu sein, ich habe nur eine 
"meiner Meinung nach" geniale Idee gehabt, eine PropClock in einem Heli 
zu verwenden. ;-)

Ich habe nun auch wirklich keine Lust, mich über östliche EU Mitglieder, 
oder Japaner, Chinesen oder sonstige zu unterhalten.
Ich würde nun viellieber ein gut funktionierendes Programm erstellen,
indem ich hier etwas Hilfe bekomme.

Das ich kein "genialer" Programmierer bin, werdet ihr sehen, wenn ihr 
das Programm anseht, aber dazu soll es ja optimiert werden.

@Matthias, das Programm soll
pro Umdrehung eine IR Pulslänge auswerten
die Pulslänge bestimmt, was angezeigt werden soll
der IR Puls ist Startsignal der Anzeige
es soll einen 9 bit Wert "Offset" geben, der bestimmt, bei welcher 
Spalte das Bild anfängt
es soll bei einem bestimmten IR Puls die aktuelle Drehzahl im aktuellen 
Bild angezeigt werden.
...
...

Woran es liegt, das ich Timing Probleme habe?
Seit ich abfrage, ob der "Propeller" zwischen 2 bestimmten Spalten ist,
und in den Spalten aus einer 8x5 bit Schrift eine 16x5 Bit Schrift 
mache,
geht die Drehzahlanzeige nur noch bis etwa 1300 U/min. Danach steht nur 
Wirrwarr da.
Ich glaube stark daran, das zu wenig Zeit im Spalten Interrut zur 
verfügung steht, um auf die Spalte zu testen, und gleichzeitig die 
Schrift zu erhöhen.
Kurz gesagt, das INT Programm ist zu lang, denke ich.

Gruß Toby

von Tobias T. (tobytetzi)


Lesenswert?

Mir ist grade noch was eingefallen:

Ich bin nicht davon ausgegangen, das es viele AVR Programmierer gibt,
die auch noch mit WinAVR programmieren, und auch noch RC Heli fliegen,
und zu guter letzt auch noch eine Propeller Uhr auf einen Heli basteln 
wollen.

Daher denke, dachte, ich, das die Resonanz nicht so groß sein könnte,
wenn ich einfach mal so meinen Code poste, und auf Hilfe hoffe.
Daher hatte ich schon eher speziell jemanden gesucht.

Allerdings weiß ich auch, das eine Mehrheit gemeinsam mehr schaffen 
kann,
als ein einzelner.

Soviel dazu.

Gruß Toby

von X. Y. (jtr)


Lesenswert?

Tobias Tetzlaff wrote:
> ich habe nur eine
> "meiner Meinung nach" geniale Idee gehabt, eine PropClock in einem Heli
> zu verwenden. ;-)

Ist auch eine gute Idee, nur nicht neu ;)
Beitrag "rotordisplay guckt euch dass ma an"

von Tobias T. (tobytetzi)


Lesenswert?

Hallo Jurij,

ja, da geht es ja auch genau um mein System. ;-)

Es gibt derzeit noch kein vergleichbares.
Zumindest keines, welches so viele LEDs hat.

Es gibt wohl Prototypen, aber keinen, der es jeh Hardware Technisch zur 
Serie geführt hat. Haber bis lang alle nur in Holzblättern was 
eingebaut, aber nicht in GFK.
Schau mal unter www.NightGraphiX.de, dann auf Impressum, das sollte 
erklären, das es meines ist.

Prinzipiell funktioniert das System ja.
Nur habe ich noch ein paar Ideen, bei denen ich mit der Software 
Probleme habe.

Gruß Toby

von Simon K. (simon) Benutzerseite


Lesenswert?

Tobias Tetzlaff wrote:
> @Peter, ich habe mich entschlossen, das Programm hier einzustelen.

Ohje ohje, der ganze Code in main.c... hm! Das wird wohl erst mal dauern 
bis man da durchblickt.

von Peter D. (peda)


Lesenswert?

Ja, da ist wirklich ne Menge Holz in vielen Interrupts.

Du solltest mal versuchen, soviel wie möglich in die Mainloop zu 
verlagern.
Z.B. Drehzahl und Spannung berechnen reicht völlig aus, wenn man das 
alle 0,5s einmal macht und nicht im Interrupt.

Und die ganzen Unterfunktionen solltest Du vor den Interrupts schreiben 
und als inline definieren, damit nicht unnötig Register gerettet werden.


Peter

von I_ H. (i_h)


Lesenswert?

Musst halt aufpassen, Japaner und Chinesen sind sich nicht grün. Dagegen 
ist die Fußballfeindschaft D<->Holland nix.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Tobias Tetzlaff wrote:

> Nur habe ich noch ein paar Ideen, bei denen ich mit der Software
> Probleme habe.

Wenn du jetzt noch erzählst, welche eigentlich, dann steht ja der
Hilfe nicht mehr viel im Weg. ;-)

von Tobias T. (tobytetzi)


Lesenswert?

Hallo Jörg,

seitdem ich die 5x8 Schrift zu 5x15 wandele,
und die Drehzahl in einem bestimmen Fenster der Spalten anzeigen will,
geht die Drehzahlanzeige nur noch bis etwa 1300 U/min.
Außerdem flackert dann das Bild extrem hin und her.
Über 1300 U/min wird nur Wirrwarr angezeigt.

Ebenso nutze ich nicht mehr die Var Spalte als Spaltenwert,
sondern Spalte_Offset, das ist die Spalte mit Offsetwert, damit
das Bild in 512 Schritten gedreht werden kann.
Das brauche ich, da es Mechanisch nicht immer möglich ist,
den Sensor, bzw. den Magneten des IR Senders, an die 0 Position zu 
montieren.

Ich habe grade Peters Rat befolgt, und werde gleich einen Testflug 
machen.
Mal sehen, ob es schon etwas gebracht hat.

Ebenso versuche ich grade die neue Version etwas zu dokumentieren,
damit die einzelnen Funktionen, speziell die Interupts verständlicher 
werden. ;-)

Melde mich gleich nochmal.

Gruß Toby

von Tobias T. (tobytetzi)


Angehängte Dateien:

Lesenswert?

Hallo,

also nach meinem Testflug kann ich sagen,
das das Bild wieder stabil ist.
Leider geht die Drehzahl Anzeige noch nicht richtig.
Bis 1300 geht es, danach komische Ziffern,
manchmal nur senkrechte Striche.
Dafür wackelt das Bild nicht mehr, es sthet wie eine Eins.

Werde nochmal die andere "Verbreitern" Funktion ausprobieren.
Denke, das es daran liegt.

Wäre es eigentlich schneller, eine 5x16 Font aus dem Flash zu lesen, 
statt
eine 5x8 zu lesen, und die zu einer 5x16 umzubauen?
Dann bekomme ich nur Probleme mit dem Flash, da ist nicht genügend Platz 
mehr.
Es sei denn, ich nehme nur die benötigten Zeichen.
0-9, L, i, P, O.
Aber dann geht die Funktion
Pixels = pgm_read_byte_near(&FontTable[ASCII-32][ASCII_Row]);
nicht mehr, da ja die Adessen nicht mehr stimmen.

Anliegend ein paar Bilder bei denen man auch noch einen weiteren fehler 
erkennt.
Bei der Drehzahlanzeige wird nicht nur unten im Bild, sondern auch oben
ein Zeichen angezeigt. (Bild 0001, 0010, 0012)
Bild 0005 zeigt die "komischen" Striche, die ich meine.
Obwohl Bild 0006 und 0007 einen Wert größer 1300 zeigt, selber gesehen 
hab ich die Zahl aber nicht.

Gruß Toby

Das neue Programm kommt sofort.

von Tobias T. (tobytetzi)


Angehängte Dateien:

Lesenswert?

Nochmal ich,

Da ist das Programm 2.1.105.
alles inline deklariert und vor den Int Funktionen.

Drehzahl Wert und Spannungsüberwachung alle 10 Umdrehungen.
Das ist etwa alle 0,5 Sekunden.

Die Interrupts etwas mehr Dokumentiert.

Gruß Toby

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
Noch kein Account? Hier anmelden.