Forum: Mikrocontroller und Digitale Elektronik SPI Basics mit 3-achs-AccelerometerADXL343


von Alex (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche gerade zu verstehen, warum meine SPI Kommunikation mit 
einem ADXL343 Accelerometer 
(http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL343.pdf 
) nicht funktioniert. Ich bin allerdings auch noch nicht sehr SPI 
erfahren, deshalb hoffe ich auf ein paar Tips von euch:

Im Anhang seht ihr die Beschaltung des ADXL343 und die signale, die ich 
mit dem LogicSniffer abfange, wenn ich mit meinem µC über SPI unter 
Verwendung des Atmel Software Frameworks
1
 
2
3
#define READSINGLE    0x80
4
#define READMULTI    0xC0
5
#define WRITESINGLE    0x00
6
#define WRITEMULTI    0x40
7
8
#define DEVID      0x00
9
#define  DATA_FORMAT    0x31
10
11
while(1){
12
      
13
      uint8_t read =0xFF;
14
      
15
      uint8_t data1 []={(WRITESINGLE | DATA_FORMAT), 0x00};
16
      uint8_t data2 []={(READSINGLE | DEVID), 0x00};
17
      
18
      spi_select_device(SPI, &ADXL343);
19
      spi_write_packet(SPI, &data1, 2);
20
      //spi_deselect_device(SPI, &ADXL343);
21
      delay_us(50);
22
      
23
      //spi_select_device(SPI, &ADXL343);
24
      spi_write_packet(SPI, &data2, 2);
25
      spi_deselect_device(SPI, &ADXL343);
26
      delay_us(50);
27
      
28
        
29
      delay_ms(1);
30
      
31
    }

sende.

Zur Erklärung: Ich möchte hier das DATA_FORMAT Register resetten (auf 
0x00 setzen), damit ich sicher im 4-wire SPI modus des ADXL bin. Danach 
möchte ich die DEVID auslesen, die nach Datenblatt 0xE5 sein sollte.

Was ich mit dem Open Bench Logic analyzer aber sehe, ist, dass alle MOSI 
daten über MISO wieder rausgeschleift werden. Kann mir jemand sagen was 
ich falsch mache?

Zum Sniffer: Leitung 4 im Bild ist der direkte SDI pin des ADXL, d.h. 
nach dem Logik-Gatter. Die Daten kommen also an.

von Alex (Gast)


Lesenswert?

Generell: Ist das Durchschleifen von SDI Signalen nach SDO bei einem SPI 
Device im slave modus überhaupt auch nur in wenigen Fällen üblich?
Ich habe durchgepiept, ein Kurzschluss ist es nicht..

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.