Forum: Mikrocontroller und Digitale Elektronik Sam DA1 Port wechseln I2C


von Ryan O. (Firma: HFu) (gorfindel)


Lesenswert?

Hallo,

ich hoffe, dass ich hier nix doppelt schreibe, hab aber nix in die 
Richtung gefunden.

Ist es ohne großen Aufwand möglich eine I2C über andere Ports wie den 
Vorgegebenen Ports des SamDA1 anzusteuern? Im Datenblatt sind PA08/9 für 
die I2C Verbindung angegeben. Meine Problematik ist nur das ich die 
beiden Ports in dem Projekt schon, durch ein anderes Board, belegt sind. 
Anfänglich dachte ich es wäre keine Problem da die Adressierung ja 
entscheidend ist, jetzt ist nur aufgefallen, das besagtes Board keine 
Adressierung benötigt und daher auf alles reagiert, daher meine Frage ob 
jemand weiß ob für die I2C Verbindung standardmäßig eine 
Prozessor-Funktion verwendet wird, oder ob das meistens selber definiert 
wird. Ich verwende ein Beispielprojekt was sich um das ganze kümmert, 
bisher hab ich auch versucht dort die entsprechenden Ports zu suchen um 
zu schauen ob ich einfach den Port wechseln kann, hab aber leider nix in 
die Richtung gefunden.
Ich hab auch im Datenblatt versucht zu schauen hab aber nix gefunden, 
was das eine oder andere aufzeigen würde.

von Einer K. (Gast)


Lesenswert?

Naja..
Wer solche Planungsfehler begeht, wird dann wohl SoftI2C verwenden 
dürfen.

(kenne den SamDA1 nicht, also ohne Gewähr)

von Ryan O. (Firma: HFu) (gorfindel)


Lesenswert?

Der Planungsfehler ist dadurch entstanden das mir und dem Kollegen nicht 
gesagt wurde, dass noch eine zweite Person daran Arbeitet. Verwenden 
darf ich alles(solange ich bei C++ bleibe), wollte nur am liebsten bei 
meiner Vorgabe bleiben, das verwendet kein SoftI2C.

So wie du die Aussage geschrieben hast bist du absolut kein Fan von 
SoftI2C, hab ich das so richtig verstanden?

Gibt es da besondere Probleme, wie langsame Datenübertragungsraten oder 
ähnliches?

von Fabian F. (fabian_f55)


Lesenswert?

Bei den meisten SAM Controllern kann man i2c auf diverse Pins legen.
Konfiguriere dir doch einfach mal ein Beispielprogramm mit i2c Treibern 
hier:
http://start.atmel.com/

Der sagt dir dann schon auf welche Pins der i2C geht, und welche nicht

von Einer K. (Gast)


Lesenswert?

Ryan O. schrieb:
> hab ich das so richtig verstanden?

Da hilft kein Quengeln!

Entweder ihr ändert die Belegung so, dass die HardWare I2C Pins frei 
werden.
Oder der µC erlaubt ein Pin Remapping (datenblatt lesen)
Oder ihr verwendet SoftI2C.
Andere Alternativen sehe ich nicht.


Was ich von SoftI2C halte, ist dabei vollkommen irrelevant.

von Fabian F. (fabian_f55)


Lesenswert?

Hab grad mal ins Datenblatt gespickt.
Der i2c kann auf diverse Pins gemapped werden. Ist aber ggf. eine andere 
SERCOM-Instanz (Die vielleicht schon belegt ist)

von Ryan O. (Firma: HFu) (gorfindel)


Lesenswert?

Vielen Dank für die Infos, dann versuch ich mal weiterhin rauszufinden 
was ich ändern muss um anderen SERCOM zu verwenden.

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.