Forum: Compiler & IDEs I2C Problem


von Volker (Gast)


Lesenswert?

Hallo,

ich habe ein grundsätzliches Problem mit der Biblithek von Peter
Fleury. Ich möchte die Real Time Clock DS1302 über I2C ansteuern,
hierzu habe ich auch die Bibliothek von Peter heruntergeladen.

Zu meinem Problem:
Ich weiß, dass ich die Datei "i2cmaster.h" includieren muss ich mein
Projekt. Ich muss ja auch  die "i2cmaster.S" einbinden, allerdings
weiß ich nicht wie das mit AVR-GCC geht.

Kann mir jemand erklären wie das geht und was man da machen muss?

Danke Volker

von Volker (Gast)


Lesenswert?

Tja es ist halt wie immer, kaum hat man mal wieder ne dumme Frage in nem
Forum gestellt schon ist man auch selber auf die Lösung gekommen.

Vielleich sollte man einfach für die Dummen (wie mich) in die Hilfe
schreiben, dass man die "i2cmaster.S" im Makefile mit einbinden muss.
Tja selber schuld.

Gruß Volker

von Matze N. (hupe123)


Lesenswert?

Hi,

ich habe eben das erste Mal mit I2C gespielt und ich habe ganz 
übersehen, daß ich die i2cmaster.S von Peter Fleury hätte einbinden 
müssen - es lief auch so! Komisch aber war.

Jetzt, wo ich sie eingebunden hab, bekomme ich Fehlermeldungen alle:
i2cmaster.o: In function `i2c_init':
i2cmaster.S:94: multiple definition of `i2c_init'
main.o:D:\Eigene Dateien\...\001_I2C\02\01master 644/twimaster.c:26: 
first defined here
i2cmaster.o: In function `i2c_start':
i2cmaster.S:113: multiple definition of `i2c_start'
main.o:D:\Eigene Dateien\...\001_I2C\02\01master 644/twimaster.c:37: 
first defined here

Diese Fehlermeldungen bekomme ich für alle i2C-Funktionen.

Hardware: ATmega644V
Software: WinAVR, neuste Version
Der Quellcode ist hier nebensächlich, da ich nichts geändert habe...

Danke, Gruß

von Stefan E. (sternst)


Lesenswert?

Weil du jetzt beide Dateien in deinem Projekt hast, twimaster.c und 
i2cmaster.S. Du brauchst aber nur die Eine oder die Andere. Und 
solltest du tatsächlich beide brauchen, weil du sowohl Hardware- als 
auch Software-I2C machen willst, dann musst du halt die Funktionen in 
einer umbenennen.

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.