STM32 I2C Messen

Gast #5989602
Lesenswert?

Hallo,

ich habe ein ein NUCLEO-F446ZE (STM32F446ZE) Board und würde gerne ein 
LCD Display über I2C ansteuern. Nachdem ich längere Zeit herum probiert 
habe und nichts funktioniert hat, habe ich versucht mit dem Oszilloskop 
zu messen ob er überhaupt Signale über SDA oder SCL schickt und konnte 
nichts messen.

Ich habe einfach in STM32MCubeX I2C1 auf den Pins PB8(SDA) und PB9(SCL) 
aktiviert und mit HAL_I2C_Master_Transmit(...) versucht etwas über I2C 
zu senden.

Ich hab jeweils zwischen SDA und Masse gemessen, ist das so richtig ?

Muss ich sonst noch etwas bei der Messung mit dem Oszi beachten ?

Ich habe etwas von Pull-Up-Widerständen gelesen, war mir aber nicht 
sicher, ob ich welche brauche und wie diese geschaltet sein müssen.

Mit freundlichen Grüßen

Tim
Gast #5989611
Lesenswert?

Tim schrieb:
> Muss ich sonst noch etwas bei der Messung mit dem Oszi beachten ?

Du brauchst einen Slave zum Ansprechen. Und die richtige Adresse
des Slaves.

Tim schrieb:
> Ich habe etwas von Pull-Up-Widerständen gelesen, war mir aber nicht
> sicher, ob ich welche brauche und wie diese geschaltet sein müssen.

Ja du brauchst welche, und sie werden genau so geschaltet wie
Pull-Up-Widerstände üblicherweise geschaltet werden.
#5989618
Lesenswert?

Tim schrieb:
> LCD Display über I2C ansteuern. Nachdem ich längere Zeit herum probiert
> habe und nichts funktioniert hat

> Ich habe etwas von Pull-Up-Widerständen gelesen, war mir aber nicht
> sicher, ob ich welche brauche und wie diese geschaltet sein müssen.

Ja, brauchst du. Einfach mal die Grundlagen lernen! Es gibt hier im Wiki 
auch einen Artikel zu I2C. Falls dir die Verweise da drin nicht 
reichen, findet Google sicher noch viel mehr.
Gast #5989623
Lesenswert?

Erklehr Behr schrieb:
> Du brauchst einen Slave zum Ansprechen. Und die richtige Adresse
> des Slaves.

Heißt ohne Slave und richtiger Adresse würde ich keine Signale am Oszi 
sehen ? Weder an SCL und SDA ?

Erklehr Behr schrieb:
> Ja du brauchst welche, und sie werden genau so geschaltet wie
> Pull-Up-Widerstände üblicherweise geschaltet werden.

Also schalte ich jeweils einen Pull-Up Widerstand zwischen SDA/SCL und 
Vcc ?
Gast #5989627
Lesenswert?

Tim schrieb:
> Heißt ohne Slave und richtiger Adresse würde ich keine Signale am Oszi
> sehen ? Weder an SCL und SDA ?

Ja, nur das erste Byte das versucht den Slave zu adressieren.

Tim schrieb:
> Also schalte ich jeweils einen Pull-Up Widerstand zwischen SDA/SCL und
> Vcc ?

RTFM

oder besser RTFW (read the fucking wiki)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren