Software zu out-cs-bim112

Fragen und Diskussionen zur Entwicklung von neuen Geräten. Sowohl Hardware als auch Software. English is welcome.
ZwergNase
Beiträge: 51
Registriert: 9. Feb 2017, 18:58
Wohnort: Bendorf / München
Kontaktdaten:

Software zu out-cs-bim112

Beitrag von ZwergNase »

Mahlzeit zusammen!

Erst mal auch von mir hier ein großes Dankeschön an Florian für dieses Projekt!

Inzwischen ist der erste Controller soweit, dass man flashen könnte. Beim Kompilieren habe ich aber leider noch so meine Probleme. Ist da schon jemand weiter als ich?

Ich habe:
  • MCUXpresso von nxp.com installiert
  • CMSIS_CORE eingebunden
  • Projekt inkl. Link zu sblib von GitHub importiert
  • in den Projekt-Settings von out-cs-bim112
  • Verweis auf sblib ergänzt
  • den Dialekt auf GNU C++ 11 gestellt
Aber irgendwie gibt es Fehler rund um UsrCallback. In app_main.cpp läuft #include <sblib/usr_callback.h> ins Leere. Ich vermute das ist der Anfang meines Problems... ABER in der sblib kann ich auch nichts zu usr_callback finden. Hat jemand einen Tipp oder vielleicht gleich die .hex?

Danke,
Oliver
Oliver (ZwergNase)

RasPi 3 mit FT1.2 (ARM und LPC), TPUART, out8-bcu1 (ARM), out-cs-bim112, in8-bcu1 (230V, ARM), Drossel_2TE (nur für Testaufbau)
Florian
Beiträge: 163
Registriert: 8. Aug 2015, 23:25
Wohnort: Paderborn

Re: Software zu out-cs-bim112

Beitrag von Florian »

Natürlich kann ich dir ein .hex schicken, aber für andere wäre es vermutlich recht interessant, ob das Projekt denn nun compiliert werden kann oder nicht :D

Hast Du die neuste Version der sblib auf dem Rechner? Dort sollte es eine usr_callback.h in software-arm-lib\sblib\inc\sblib geben. Du sagst, an dieser Stelle würde der Compile abbrechen. Da nur wenige Zeilen über diesem include zwei andere Header-Dateien ebenfalls aus der sblib ohne Fehler eingebunden werden, sind die Pfade zu dem include-Verzeichnis anscheinend richtig gesetzt. Was passiert, wenn du den Cursor auf den Dateinamen des Includes setzt und F3 drückst? Dann sollte die Datei im Editor geöffnet werden.

Oder hast du vielleicht mehrere Versionen der sblib auf der Platte und in Wirklichkeit wird eine ältere Version benutzt - anstatt der neueren Variante.
ZwergNase
Beiträge: 51
Registriert: 9. Feb 2017, 18:58
Wohnort: Bendorf / München
Kontaktdaten:

Re: Software zu out-cs-bim112

Beitrag von ZwergNase »

Der Hinweis war gut! Ich hatte tatsächlich eine alte Version von sblib auf der Platte.
Im Repo software-arm-incubation gibt es einen Link auf sblib (software-arm-lib @ 6232301), allerdings auf eine alte Version. Wen man beim Clonen "Clone submodules" wählt, landet die alte Version auf der Platte. :cry:

Ich habe jetzt ohne "Clone submodules" beide Repos (software-arm-incubation und software-arm-lib) einzeln gecloned.

Jetzt bin ich schon mal weiter, knabbere aber an zwei weiteren Fehlern:

Code: Alles auswählen

app_main.cpp:118:20: error: 'class UserEeprom' has no member named 'serial'
app_main.cpp:124:13: error: 'class UserEeprom' has no member named 'commsTabAddr'
Eigentlich werden beide Member-Variablen in sblib/inc/sblib/eib/user_memory.h deklariert (Zeile 171 und 179) und sind auch im Projekt-Explorer zu sehen. :?

Grüße,
Oliver
Oliver (ZwergNase)

RasPi 3 mit FT1.2 (ARM und LPC), TPUART, out8-bcu1 (ARM), out-cs-bim112, in8-bcu1 (230V, ARM), Drossel_2TE (nur für Testaufbau)
Florian
Beiträge: 163
Registriert: 8. Aug 2015, 23:25
Wohnort: Paderborn

Re: Software zu out-cs-bim112

Beitrag von Florian »

Das riecht nach einem Problem der Build-Configuration. Wenn du im Projekt-Explorer die sblib angewählt hast, also unten im Quickstart-Panel die Befehle "Build 'sblib'", "Clean 'sblib'" auftauchen - was steht dann hinter genau diesen Texten. Da sollte [Debug_BIM112] stehen. Ich vermute mal, bei dir steht da BCU1. Dann würdest du die sblib für BCU1 übersetzen. Ändern kann man die Konfiguration über: Rechtsklick auf sblib im Projekt-Explorer, Build Configurations, Set active, Debug_BIM112. Dann diese Konfiguration übersetzen: Build 'sblib' [Debug_BIM112]
Bild

Beim out-cs-bim112 Projekt muss das Symbol "BIM112" definiert sein: Projekt Explorer "out-cs-bim112", Rechtsklick, Properties, C/C++ Build, Settings, Tool Settings, MCU C++ Compiler, Preprocessor - hier muss bei den "Defined Symbols" BIM112 auftauchen. Wenn nicht, mit Add... hinzufügen.
Bild
mattze
Beiträge: 11
Registriert: 13. Sep 2017, 21:27

Re: Software zu out-cs-bim112

Beitrag von mattze »

Hallo zusammen,

könnte man das compilierte Programm online stellen? Das würde mir das installieren von Eclipse ersparen! Oder spricht etwas dagegen?

Viele Grüße
Matthias
ZwergNase
Beiträge: 51
Registriert: 9. Feb 2017, 18:58
Wohnort: Bendorf / München
Kontaktdaten:

Re: Software zu out-cs-bim112

Beitrag von ZwergNase »

Kompilieren klappt jetzt nach einigem hin und her. Woran es lag kann ich (noch) nicht sagen. Ich habe sowohl für sblib als auch für out-cs-bim112 neue Projekte angelegt und nur die Source-Codes übernommen.
Meine Hardware ist bisher nur halb fertig. Aber zumindest der Programm-Button und die LED funktionieren wie sie sollen.

Danke schon mal,
Oliver
Oliver (ZwergNase)

RasPi 3 mit FT1.2 (ARM und LPC), TPUART, out8-bcu1 (ARM), out-cs-bim112, in8-bcu1 (230V, ARM), Drossel_2TE (nur für Testaufbau)
Florian
Beiträge: 163
Registriert: 8. Aug 2015, 23:25
Wohnort: Paderborn

Re: Software zu out-cs-bim112

Beitrag von Florian »

Doch schön zu wissen, dass ich nicht der einzige Mensch bin, bei dem das Projekt kompiliert ;)

Ich werde am Wochenende mal das HEX in's GIT hochladen - ist ja dann doch einfacher :D
Florian
Beiträge: 163
Registriert: 8. Aug 2015, 23:25
Wohnort: Paderborn

Re: Software zu out-cs-bim112

Beitrag von Florian »

Das HEX-File ist jetzt hier zu finden:

https://github.com/selfbus/software-arm ... bim112.hex
mattze
Beiträge: 11
Registriert: 13. Sep 2017, 21:27

Re: Software zu out-cs-bim112

Beitrag von mattze »

Vielen Dank Florian!

Gruß Matthias
erich73
Beiträge: 19
Registriert: 27. Mai 2013, 23:32

Re: Software zu out-cs-bim112

Beitrag von erich73 »

Hallo zusammen,

ich hab versucht den Code aus dem GIT zu kompilieren. Leider erhalte ich eine Fehlermeldung. Diese wird durch die Funktion

Code: Alles auswählen

void AdcIsrProcOffset(void)
{
 for (unsigned ChIdx=0; ChIdx < IMEASMUXCHANNELS; ChIdx++)
 {
  if ((IsrData.RegOvr[ChIdx]) < OFSCOMPOVRLIM)
  {
   //IsrData.OffsIntegral[ChIdx] += IsrData.RegSum[ChIdx];
   IsrData.OffsIntegral[ChIdx] = min(max(IsrData.OffsIntegral[ChIdx] + IsrData.RegSum[ChIdx], -BUFSIZE*8), BUFSIZE*8);
   if (IsrData.OffsIntegral[ChIdx] > (BUFSIZE*4))
   {
    IsrData.OffsIntegral[ChIdx] -= (BUFSIZE*4);
    IsrData.Offs[ChIdx] = min(IsrData.Offs[ChIdx]+1, OFSCOMPHIGHLIM);
   }
   if (IsrData.OffsIntegral[ChIdx] < (-BUFSIZE*4))
   {
    IsrData.OffsIntegral[ChIdx] += (BUFSIZE*4);
    IsrData.Offs[ChIdx] = max(IsrData.Offs[ChIdx]-1, OFSCOMPLOWLIM);
   }
  }
 }
}
ausgelöst. Es werden Funktionen min und max verwendet, diese sind jedoch nicht definiert.

Scheinbar ist der Stand im GIT nicht aktuell oder beim clonen ist bei mir was auf der Strecke geblieben. Kann das mal jemand gegenprüfen?

erich73
Antworten