I2C problemchen

Gast #5849190
Lesenswert?

Ich schicke Daten via I2C um die Schnittstelle zu testen.
Sollte ich am Oszi nicht das Adressbyte und anschliessend das Datenbyte 
sehen?
Ich sehe nur die Adresse, aber auch das ist komisch, weil am Schluss 
noch ein bit kommt bevor die Leitungen freu werden.
Oder liegt es daran, dass ich auch beim Test einen Slave dran haben 
muss, wegen des Ack.?
1
/* Initialize all configured peripherals */
2

3
  MX_GPIO_Init();
4

5
  MX_I2C1_Init();
6

7
  /* USER CODE BEGIN 2 */
8

9
              uint16_t dAddress = 0x06 << 1;    // 0x0C read/write = 0
10

11
  data = 0x02;
12

13
              size_a = sizeof(data);
14

15
  /* USER CODE END 2 */
16

17
 
18

19
  /* Infinite loop */
20

21
  /* USER CODE BEGIN WHILE */
22

23
  while (1)
24

25
  {
26
                           HAL_I2C_Master_Transmit(&hi2c1, dAddress<<1, &data, size_a,100);
27

28
                           HAL_Delay(1);
29

30
 
31

32
  /* USER CODE END WHILE */
33

34
 
35

36
  /* USER CODE BEGIN 3 */
37

38
 
39

40
  }
41

42
  /* USER CODE END 3 */
Angehängte Dateien:
Gast #5849210
Lesenswert?

> Sollte ich am Oszi nicht das Adressbyte und anschliessend das Datenbyte
> sehen?

Wie hast du eigentlich dein Programm geschrieben ohne vorher das 
Datenblatt zu deinem IC gelesen zu haben? Seufz!
Natuerlich muss da erst Adresse und dann Daten kommen und du musst dir 
ja auch was dabei gedacht haben wenn du ACK auswertest oder nicht?

Olaf
Gast #5849214
Lesenswert?

Beim neunten Bit soll der adressierte Slave bestätigen, dass er bereit 
ist. Der Pegel ist in deinem Fall HIGH und das bedeutet "Not ACK" (nicht 
bereit). Ohne angeschlossenen Slave ist das normal, dann kommt der High 
Pegel vom Pull-Up Widerstand. Und wegen dem "Not ACK" bricht er die 
Transaktion ab und sendet nichts mehr. Das ist alles so gewollt.
Gast #5849574
Lesenswert?

Forist schrieb:

> Ist dir schon mal die USB-Buchse unten rechts am Oszi aufgefallen?
>
> Meinst du nicht, dass die prima geeignet wäre, um Screenshot
> aufzuzeichnen, in denen sich nicht die halbe Raumbeleuchtung spiegelt?

Zumal es sich ja lt. Foto sogar um ein "Super phosphor oscilloscope" 
handelt ;o)

Atomraketen in den Händen von Handy-Äffchen mit Jäckchen...

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