Frust mit CAN-Lib

Gast #236745
Lesenswert?

Hallo Leute.
Ich progammiere jetzt seit Monaten an dieser verflixten CAN -
Schnittstelle rum und habe mich des AVR-Beispiels bedient, es für GCC
umgeschieben und versucht zu verstehen, was darin vorgeht.
Inzwischen habe ich festgestellt, dass die Funktion zig Dinge nicht
tut, die sie sollte. Heute habe ich ein Beispiel selbst geschrieben und
es funktioniert. Kann es sein, dass diese beigestellten Libs, nicht nur
lausig dokumentiert, sondern auch lausig programmiert sind? Hat jemand
ähnliche Erfahrungen gemacht oder bin ich wieder mal nur zu doof es
richtig anzuwenden?
Gast #236747
Lesenswert?

Nun, ich möchte nur ungern jemandem Fehler nachsagen. Immerhin habe ich
bis heute nicht rausbekommen, was das Programm macht und wie man es
benutzt. Mir ist nur aufgefallen, dass es z.B. die Möglichkeit gibt,
einem zu senden String ein ID mit auf den Weg zu geben. Bei der
vorgefertigten Leseroutine habe ich aber die Einstellung zum ID-Check
nicht gefunden und in der selbstgestrickten leseroutine kam nicht die
gewünschte ID raus. Also habe ich 4 Strings mit 4 IDs senden lassen und
mir immer vor dem senden die 4 ID-Register angeschaut und festgestellt,
dass die ID ein Zufallswert war, wovon ich glaube dass das nun nicht
mehr an mir gelegen haben kann.
Ich habe halt diverse Fehler in der Doku des Proz gefunden, die mich
Wochen gekostet haben und in dem 2. Beispiel von AVR, welches ein
Freund für mich zur Benutzung mit GCC umgeschrieben hat, zeigte der
Interruptverktor ins Nirvana. Es kann die Software also nie getestet
worden sein. Ähnliches habe ich bei einem publizierten ct-Projekt
festgestellt. Jetzt frage ich mich, ob das erste Beispiel vieleicht
auch mit der heißen Nadel gestrickt wurde und vor der Publizierung nie
auch nur in die nähe des Can-Cntrollers gekommen ist.
Immerhin experimentiere ich seit 8 Wochen mit diesen fertigen Routinen
rum ohne auf einen grünen Zweig zu kommen und meine lausige
selbststrickware funzt auf Anhieb wie gewünscht.
Gast #236748
Lesenswert?

"habe mich des AVR-Beispiels bedient"

Welches meinst Du bitte damit genau?
Bei Atmel gibts die "AT90CAN128 Software Library", ist vielleicht
diese gemeint?

"Ähnliches habe ich bei einem publizierten ct-Projekt"

Nochmal: welches genau? Ein ordentlicher Link hilft allen, die hier
mitlesen beim Suchen und Raten.

"Ich habe halt diverse Fehler in der Doku des Proz gefunden"

Entweder es sind Denkfehler von Dir. Dann wird Dir SO niemand
weiterhelfen können. Oder es sind wirklich Fehler des Proc, dann hilft
Deine Aussage niemandem, den Fehler zu umgehen, und auch Atmel nicht,
den Fehler zu beheben. Nochmal: sei bitte exakt. Habe dieselben
Ansprüche an Dich, wie Du sie an die Autoren der Doku und des Source
hast!

Beim Programmieren wirst Du auch nicht glücklich werden, wenn Du so
unexakt arbeitest. Obwohl: vielleicht mal Fuzzy versuchen ...

Viele Grüße, Stefan
Gast #236749
Lesenswert?

"Sei doch bitte konstruktiv"

Sehe ich auch so, anstatt immer nur Wischiwaschi.


Wie wärs erstmal mit dem CAN-Typ (SJA1000, MCP2515, CAN128) und dann
die Source als Anhang oder nen Link darauf ?

Und natürlich Deine Source und Kommentare, wo Du denn Fehler vermutest
bzw. was Du wie verstanden zu haben glaubst.



Peter
Gast #236750
Lesenswert?

mein konstruktiver Beitrag wird darin bestehen, meine Can-Routine,
sobald ich sie zufriedenstellend zusammengezaubert und getestet habe,
hier einzustellen, auf dass ihr Gurus mein Copy_and_Past_Coder - Werk
in der Luft zerreist.
Gast #236752
Lesenswert?

nein, kein Wutzettel. Ich habe bloß ein Problem damit, mir vorzustellen,
dass die Treiber, Libs und Dokus heutzutage so oberflächlich erstellt
werden, dass sie vor der Publikation noch nicht einmal getestete
werden. Ich wollte eigentlich nur wissen, ob das Problem häufiger
Auftritt, oder ob ich das Problem bin. (Eine Frage die bisher noch
nicht geklärt wurde)
Ich finde den Fehler ja noch nicht einmal, weil (Meine Meinung! >> )
dieses Zeug so unübersichtlich und sinnlos zusammnegezaubert ist, darum
kann ich hier ja auch nicht mit dem dicken Finger drauf zeigen und sagen
: Da Issa!  Ich merke nur die Auswirkungen und frage mich, was ich nun
wieder falsch gemacht habe.
Das mit den Gurus ist nicht zu Ernst zu nehmen, ich habe nichts gegen
Verbesserungspotential.
fw.
Gast #236754
Lesenswert?

"oder ob ich das Problem bin. (Eine Frage die bisher noch nicht geklärt
wurde)"


Eine Frage die bisher noch nicht geklärt wurde, ist doch erstmal,
worüber Du überhaupt sprichst.

Du gehst ja nicht mal auf die Rückfragen ein.

Wie erwartest Du dann, daß sich jemand dazu äußern kann ?


In diesem Sinne gebe ich Dir recht, daß bisher Du das Problem bist.


Peter
Gast #236755
Lesenswert?

Nun gut.
Im Anhang ist die umgezauberte und nicht funktionstüchtige LIB. mit all
ihren Auswüchsen und hier unten der Quell des Übels.

Ach ja. Der C ist ein AT90CAN128
http://www.atmel.com/dyn/resources/prod_documents/AT90CAN128_demo1_IAR.zip
http://www.atmel.com/dyn/resources/prod_documents/AT90CAN128_demo2_IAR.zip

@Peter
Nun, ich sehe noch nicht recht, wie das helfen soll, denn ich kann mir
nicht vorstellen, dass sich jetzt jemand ein Demo-Board mit AT90CAN128
aus der Rippe schneidet, die Software da rauftüdelt meine HAusaufgaben
macht und postst: "Ja, Du musst ja auch vorher ...
Na wie dem auch sei, ich hoffe nun ist alles beieinander ...
Angehängte Dateien:
Gast #236756
Lesenswert?

"Nun, ich sehe noch nicht recht, wie das helfen soll, denn ich kann
mir
nicht vorstellen, dass sich jetzt jemand ein Demo-Board mit AT90CAN128
aus der Rippe schneidet, die Software da rauftüdelt meine HAusaufgaben
macht"


Hab ich auch nirgends nicht behauptet.

Aber die Leute, die den AT90CAN128 kennen und den IAR-Link gelesen
haben, können doch auch nicht hellsehen, daß Du diese gemeint hast oder
?

Aus den konfusen Texten vorher war es jedenfalls nicht zu entnehmen.

So müssen sich mögliche Antwortwillige erst bis ins 11.Posting
runterquälen.


Es gibt bestimmt tausende CAN-Libs weltweit und vielleicht 20..100
davon für den AVR.


Peter
Gast #236757
Lesenswert?

- AT90CAN128-Plugin zur Simulation in AVR-Studio mal ausprobiert? Damit
kann recht gut der Ablauf verfolgt werden und das CAN-Plugin liefert
auch Moeglichkeiten fuer "CAN-Message-Stimuli". Duefte beim Debuggen
hilfreich sein - war es zumindest "hier".
- eine Fehlerquelle mglw. ein inzwischen behobener Fehler einer
Bitdefintion in iocan128.h, aktuelle Version im avr-libc-cvs
- Diff. der Lib.-Anpassungen gegen das Atmel-Original bzw. Markierung
der gaenderten Quellzeilen wuerde helfen.
- Atmel hat mglw. eine aktuellere Library, die "Version 0.3" ist ja
schon etwas aelter, fragen bei avr at atmel dot com "kost' nix"
Leider "hier" immer noch keine Zeit zum Bau der Proto-Hardware zum
Test meiner gcc-Portierung, geschriebene Hinweise also nur vor dem
Hintergrund von zumindest "virtuell" erfolgreichen Tests mit dem
Simulator.
Gast #236758
Lesenswert?

...Duefte beim Debuggen hilfreich sein - war es zumindest "hier
Kann ich nicht mit um, gebe ich offen zu.
...Bitdefintion in iocan128.h,
die hab ich mir schon zur Brust genommen.
..."virtuell" erfolgreichen Tests mit dem
Simulator.
 Das ist zimlich genau das was ich vermute. Die zwei libs, die es gibt
sind nicht getestete Werkzeuge sondern mit der heißen Nadel am
Simulator gestrickte Tools zur Beruhigung der Massen und wer mehr will
als auf 2 Boards "Ping" und "Pong" ausgeben, der ist angeschmiert.

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