Forum: Compiler & IDEs Problem mit dem At86Rf230 und debugen


von mark (Gast)


Angehängte Dateien:

Lesenswert?

hallo Leute,
ich versuche ein einfach rf verbindung zu  Senden und Empfangen von
Messdaten mit At86rf230 und Atmega32 zu machen.
ich habe das Programm aus 
http://download.savannah.nongnu.org/releases/uraco  runtergeladen und an
der  Atmega 32 angepasst aber ich kann das Programm nicht debugen,
weil ich  glaube dass die .C von der  .H Daten(zB: #include
"transceiver.h" #include "ioutil.h"..)fällen.
Kann mir jemand hilfen.

Dank in Voraus :)

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


Lesenswert?

Naja, es bringt nicht viel, hier das komplette Archiv von µracoli
anzuhängen.  Interessanter wäre es, wenn du deine Aussage:

,,ich kann das Programm nicht debugen''

mal irgendwie näher erläutern würdest:

. was hast du genau getan?
. lässt es sich compilieren?
. was funktioniert bereits?
. was funktioniert nicht?  was hättest du an dieser Stelle erwartet?
. wie debuggst du genau?

von mark (Gast)


Lesenswert?

ok.
1.ich habe folgend Änderung für xmpl_trx_tx_rdk230 in base_rdk230h die 
Pins verbindung an den Atmega 32 angebasst.
2.wenn ich build (F7) in AVR studio drucke, bekomme ich kein 
fehlermeldung und ich kann flaschen aber wenn ich debuge möchten bekomme 
ich "Coordinator: Error loading object file."
3. ich finde die .c Daten con .H ( "transceiver.h", "ioutil.h"..) nicht 
nur um zu wiessen wie die definierte funktionen wie z.B( 
trx_io_init(SPI_RATE_1_2), TRX_RESET_LOW()..) geschrieben sind.

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


Lesenswert?

mark wrote:

> 2.wenn ich build (F7) in AVR studio drucke, bekomme ich kein
> fehlermeldung und ich kann flaschen aber wenn ich debuge möchten bekomme
> ich "Coordinator: Error loading object file."

Du solltest dein AVR Studio aktualisieren.  Die alten Versionen
haben nicht alle Fehler beim Compilieren bemerkt und dann versucht
weiter zu arbeiten.

Alternativ: klappe manuell das Fenster mit den Compilermeldungen auf
und schau nach, was nicht funktioniert hat.

> 3. ich finde die .c Daten con .H ( "transceiver.h", "ioutil.h"..) nicht
> nur um zu wiessen wie die definierte funktionen wie z.B(
> trx_io_init(SPI_RATE_1_2), TRX_RESET_LOW()..) geschrieben sind.

Die sollte es aber sehr wohl bei µracoli geben, wobe manches davon
(wie TRX_RESET_LOW vermutlich) nur als Makros implementiert sein
könnte, d. h. es gibt keine Headerdatei dafür.

von mark (Gast)


Lesenswert?

erste mal vielen dank Jörg für deinen schnell Antwort und alles,
 1. ich habe schon die neuste version von AVR.
 2. ich brauche (TRANSCEIVER.c..) die C datei für z.B die Headerdatei 
(TRANSCEIVER.H ..),ich habe schon in µracoli gesucht aber ausser 
xmpl_trx_tx.c und xmpl_trx_rx_rdk230 gab es nicht !

von A. W. (uracolix)


Lesenswert?

Hallo Mark,

um ein komplett neues Board in µracoli einzubauen,
kommst du mit den xmpl*aps files nicht weiter. Du musst die Libraries 
komplett neu und fuer deine Hardware bauen.
Hier steht eine Beschreibung, was du aendern musst, damit das neue
Board in den Buildprozess eingefuegt wird:

http://uracoli.nongnu.org/manual/dev/pgNewHw.html

Am besten du legst dir gleich eine neue Boardefinition an, dann kann 
diese,
falls deine HW in Serie geht oder du die Schaltplaene veroeffentlichst
mit in die Release aufgenommen werden.

Fuer den Neubau der Libraries fuer das Mega32-Board brauchst du
neben WinAVR noch

 * Python V2.x (nicht jedoch 3.x) (www.python.org)
 * Scons (www.scons.org)

(Bin gerade dabei, das in der Doku zu beschreiben ... das dokumentieren 
kostet aber doch einiges an Zeit, hab schon ne ganze Weile keinen AVR 
mehr geflasht ;-))


Cheers Axel

von mark (Gast)


Lesenswert?

hallo Axel,
ich habe keine neues Board, ich möchte nur , die von dem Sensor (mit 
Atmega 32 verbunden) gewonnen daten mit At86rf230 senden  und empfangen 
, was ich hauptsichelich  brauche, ist  die implementierung von den 
Functionen, die in TRANSCEIVER.h sind . d.H ich brauche "TRANSCEIVER.c"
danke

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


Lesenswert?

Aus Sicht von µracoli stellt deine Kombination aber eine neue
Board-Abstraktion dar, die es bislang noch nicht kennt.  Daher
musst du ,,ein neues Board'' implementieren.  Dazu benötigst du
den kompletten Quellcode von µracoli (sowie die von Axel genannten
Tools).

von A. W. (uracolix)


Lesenswert?

Die Funktionen die in transceiver.h angegeben sind, sind in den
Dateien Src/Lib/Rf230/trx_*.c implementiert. Sie greifen auf Macros
zurueck die in der jeweiligen board_XYZ*h definiert sind, deshalb
fuehrt kein Weg drumrum, einen kompletten Build anzuschieben.

Wenn du mal kurz deine Verdrahtung postest und ein Namenskuerzel fuer 
deine Hardware (z.B. mkst230, fuer Marks Sensor Transmitter ...), dann 
koennte ich dir eine gepatchte Version ins Downloadverzeichnis legen.

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.