Forum: Mikrocontroller und Digitale Elektronik Rundsteuerbibliothek NXP mit IAR Verständnissproblem


von C. L. (calle)


Lesenswert?

Hallo zusammen,

Ich möchte die Rundsteuerbibliothek von NXP ausprobieren in einem STM32 
Board. https://www.nxp.com/docs/en/application-note/AN5046.pdf

Nun habe ich mit dem NXP Support Kontakt aufgenommen, weil meiner 
Meinung nach die vier wichtige Routinen (im PDF unter 4.1.1 Function API 
summary Seite 17) im Code nicht auffindbar sind.
NXP sagte mir dann das sie unter der neusten IAR IDE mit 30 Tage Lizenz 
den Code fehlerfrei kompilieren können. Das kann ich auch aber trotzdem 
sind die Routinen nicht auffindbar. Wenn ich die Verwendungsstellen 
suche, gibt es nur die Definition in der .h Datei.
=>  extern void RcolibInit (tRCOLIB_DATA *const ptr);

Wo sind die Routinen? Kann sowas geschützt oder versteckt oder von 
woanders her eingebettet sein?
So kann der Code doch nícht laufen, oder?
Kann mich da mal jemand auf die Spur bringen?

PS:
Bisher wusste ich, das sich ein .hex oder .bin file in den Controller 
flaschen lässt; geht das mit .out auch?
Die IAR IDE gibt nämlich ein Project.out file aus.
Wie stehts damit?

Gruß und bleibt gesund!  ;-)

CL

von Johannes S. (Gast)


Lesenswert?

Der code kann auch in einer kompilierten Form vorliegen, als Library 
(Archivefile) oder einzelnen objectfiles. Sowas ist aber immer unschön 
weil das dann zum Compiler und den Projekteinstellungen passen muss.
Aber Erstaunlich das der NXP Support bei einer STM Portierung helfen 
soll...

Nachtrag:
die Funktionen stecken in den .a archives, kein Sourcecode vorhanden.

von C. L. (calle)


Lesenswert?

Johannes S. schrieb:
> Der code kann auch in einer kompilierten Form vorliegen, als Library
> (Archivefile) oder einzelnen objectfiles.

Ok, das werden dann wahrscheinlich die *.o Dateien sein?
Das kann ich dann nicht in anderen Systemen verwenden?

Das Originale von NXP läuft im ARM® Cortex®-M0+.
Ich habe hier nur ein Board von Amazon betitelt mit
"STM32F103C8T6 Development Board Modul mit ARM Cortex M3 Prozessor"
Darin sollte das doch laufen...

CL

von Larry (Gast)


Lesenswert?

Der F103 ist ein M3 und kein M0+.

Was IAR (out,elf,bin,hex,...) hinten ausspuckt, kann man in den
Projekteigenschaften einstellen.
Was dann noch was nicht passt, kann man das selber in einem
Postbuildstep verwursten. Den muss man aber selber definieren.

Die Prognose auf lauffaehigen Code, wuerde ich aber als
schlecht einschaetzen.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Ohgott, der IAR, lauf weit weg!

Die .out Datei ist die elf Datei.
Da sind im Gegensatz zum binary/hex noch viele Zusatzinformationen 
drinne.
Ein JTAG/SWD Debugger versteht das aber meist auch und du musst dann 
nicht die FLash Startadresse angeben.
Ansonsten gibts in den projekteinstellungen einen output converter, der 
spcukt dir dann bin/hex/whatever aus.

Was sagt denn eigentlich die Lizenz des Codes zur Verwendung auf fremden 
Prozessoren?
Das ist meist ausgeschlossen.

von Johannes S. (Gast)


Lesenswert?

wenn der Code in der Lib irgendwelche Freescale HW anspricht läuft das 
auch nicht.

von C. L. (calle)


Lesenswert?

Danke erstmal für Eure Infos.
Damit ist schonmal einiges klar geworden.
Also habe ich das falsche Zielsystem, damit ist das mit der Lizenz auch 
erstmal egal, aber das wusste ich nicht.
Brauche also den original Freescale ARM Cortex M0+.
Dann sollte es ggf. auch kein Problem mit freescale Hardware geben.

NXP support meldete mir noch, das die Routinen in der .a "precompiled" 
sind.
Damit ist eigentlich erstmal alles klar.

Kann jemand ein entsprechendes Board empfehlen oder will eins loswerden?
In der Doku der lib steht ja 128kb.

Gruss

CL

von W.S. (Gast)


Lesenswert?

C. L. schrieb:
> Bisher wusste ich, das sich ein .hex oder .bin file in den Controller
> flaschen lässt; geht das mit .out auch?
> Die IAR IDE gibt nämlich ein Project.out file aus.
> Wie stehts damit?

Namen sind Schall und Rauch - wie schon unsere Altvorderen wußten. Du 
solltest in der Lage sein, die ausgegebenen Dateien nach ihrem 
tatsächlichen Inhalt beurteilen zu können.

Frage: was ist der Unterschied eines .mhx Files zu einem .S19 File?

W.S.

von C. L. (calle)


Lesenswert?

Hi,
Das kann ich dir nicht sagen, so tief stecke ich da nicht drin und das 
ist für Hobbybedarf auch ok.
Man muss nicht die letzten Einzelheiten aller Eigenschaften einer IDE 
kennen um ablauffähigen Code zu generieren.
Die .c und .h dateien und daraus .bin oder .hex zu machen ist ja der 
Kern.

CL

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.