Hi inka,
als Schritt davor habe ich erstmal die HEX der Demo 05 geschickt.
Funktioniert die?
@Dirk:
habe die dateien für M32 (RP6Control_MultiIO_05.zip) heruntergeladen, die dateien
RP6Control_MultiIO.h
RP6Control_Orientation.h
RP6Control_OrientationLib.c
RP6Control_OrientationLib.h
in meinem libverzeichnis durch die neuen ersetzt und die RP6Control_MultiIO_05.c mit unveränderten (neuen) libs neu kompiliert. Nach dem upload hat sich am ergebnis nichts geändert, das programm beendet sich nach einmaligem anzeigen der minIMU daten selbst.
das gleiche passiert nach der änderung von I2CTWI_initMaster(100) auf I2CTWI_initMaster(70).
die hardwarekontrolle beschränkte sich auf die nochmalige kontrolle der "abweichenden IO jumperstellung für die M32", das vorhandensein der VIN, GND, SDA und SCL leitungen/signale für die minIMU (deren verbindung zu den entsprechenden punkten an der BASE bzw. der M32).
Alles OK...
Würden die fehlen, würde ja die minIMU garnichts tun, oder?
dann habe ich versucht die im archiv enthaltene *.hex datei zu laden, nach deren start bleibt das LCD "dunkel", es wird nichts angezeigt.
das einzige was mir noch einfällt: könnte ich Dir das IO-board, die minIMU und den HDMM zum überprüfen schicken? Für porto hin und zurück komme ich selbstverständlich auf...
gruß inka
Hi inka,
als Schritt davor habe ich erstmal die HEX der Demo 05 geschickt.
Funktioniert die?
Gruß
Dirk
hi Dirk,
auch wenn ich (noch) nicht weiss, was die vielen zahlen im LCD bedeuten:
JA! die hexdatei funktioniert!
wo lag das problem?
gruß inka
Hi inka,
Ich habe keins identifiziert, außer der jetzt auf 70 kHz reduzierten I2C-Busgeschwindigkeit.wo lag das problem?
Die komplette Demo mit Source habe ich dir noch einmal geschickt.
Gruß
Dirk
Hi Dirk,
ich habe nun die dateien noch einmal getauscht, kompiliert, hier das protokoll:
und die kompilierte datei geht nicht!Code:-------------- Bereinigen: gyro_test_multi_io_05 in multi_I_O_test --------------- Cleaned "multi_I_O_test - gyro_test_multi_io_05" -------------- Erstellen: gyro_test_multi_io_05 in multi_I_O_test --------------- Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6ControlLib.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6ControlServoLib.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6Control_I2CMasterLib.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6Control_LFSBumperLib.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6Control_MultiIOLib.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6Control_OrientationLib.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6I2CmasterTWI.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/2012_lib_komplett/RP6uart.c Compiliere: ../../../../mnt/netzserver_x/georg/workspace/multi_I_O_test/gyro_test_RP6Control_MultiIO_05.c Verbinde Programmmodule ausführbare Datei: bin/gyro_test_multi_io_05/gyro_test_multi_io_05 Output size is 60,93 KB Projekt-Schritte nach dem Erstellen ausführen avr-objcopy -O ihex -R .eeprom -R .eesafe bin/gyro_test_multi_io_05/gyro_test_multi_io_05 bin/gyro_test_multi_io_05/gyro_test_multi_io_05.hex avr-objcopy --no-change-warnings -j .eeprom --change-section-lma .eeprom=0 -O ihex bin/gyro_test_multi_io_05/gyro_test_multi_io_05 bin/gyro_test_multi_io_05/gyro_test_multi_io_05.eep.hex avr-objdump -h -S bin/gyro_test_multi_io_05/gyro_test_multi_io_05 > bin/gyro_test_multi_io_05/gyro_test_multi_io_05.lss Prozess wurde mit Status 0 beendet. (0 Minuten, 2 Sekunden) 0 Fehler, 0 Warnungen
gruß inka
Hi inka,
scheint ja auch bei dir fehlerfrei zu kompilieren.
Ich habe bei der Demo natürlich nur die notwendigen Libs (RP6ControlLib, RP6uart, RP6I2CmasterTWI, RP6Control_OrientationLib) eingebunden.
Bei dir sehe ich noch die RP6ControlServoLib, RP6Control_LFSBumperLib und RP6Control_MultiIOLib.
Versuch doch mal, die nicht unbedingt nötigen Libs eine nach der anderen wegzulassen. Vielleicht kannst du ja was inkompatibles identifizieren.
Gruß
Dirk
das war ja offensichtlich mein trugschluss: ich dachte eine *.c datei, die bein anderen kompiliert wurde und lief, - wenn sie bei mir ohne fehler ebenfalls kompiliert wurde - wird/muss auch bei mir funktionieren...
ich habe die drei dateien nacheinander entfernt, erst beim entfernen der "RP6Control-MultiIOLib.c" funktionierte es, komischerweise wurde bei keiner der drei dateien, als ich sie entfernt habe, verlangt das projekt neu zu speichern. Und trotzdem wurden sie beim kompilieren verwendet. Man lernt nie aus...
also, weitergehts mit dem kompass!
danke für alle deine bemühungen, ich hätte es ohne den hinweis nie gefunden...
gruß inka
@inka:
Gut, dass es bei dir jetzt weitergehen kann!
Schlecht:
Jetzt gehe ich auf Suche, warum sich die Orientierungs Lib eventuell nicht mit der MultiIO Lib verträgt ...
Werde jetzt die anderen Libs nacheinander mit einbinden und gucken, was passiert.![]()
Gruß
Dirk
Geschafft:
Alle drei Libs (RP6ControlServoLib, RP6Control_LFSBumperLib und RP6Control_MultiIOLib) nacheinander mit eingebunden, allerdings ohne eine Funktion daraus aktiv zu nutzen.
Ergebnis: Demo 05 läuft.
Also:
Keine Ahnung, was da gelaufen ist.
Gruß
Dirk
werde ich morgen auch noch einmal probieren...
gruß inka
Lesezeichen