SPI clockt 16 bit im trotz data size 8 bit

Gast #4559256
Servus,

auf meinem STM32F303 initialisiere ich die SPI-Schnittstelle so:
1
    //Configure SPI (but without enabling it)
2
    SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
3
    SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
4
    SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;
5
    SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
6
    SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;
7
    SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;
8
    //PCLK2/32 = 72MHz/32 = 2.25MHz
9
    SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_16;/* SPI_BaudRatePrescaler_32;*/
10
    SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;
11
    SPI_InitStructure.SPI_CRCPolynomial = 7;
12
    SPI_Init(SPI2, &SPI_InitStructure);
13

14
    //Enable SPI
15
    SPI_Cmd(SPI2, ENABLE);

Auf das
1
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;
 kommt's mir an:

Wenn ich nämlich ein Byte abschicke, werden 16 bit auf SCL getaktet, 
nicht nur 8. Die "extra" 8 bit sind dann alle 0. Jedenfalls auf MOSI. 
Wenn Daten über MISO kommen, sieht es so aus, als ob 16 bit ankämen...

Siehe auch Screenshot: oben clock,darunter MOSI, MISO und CS.

Irgendwas ist doch da bei der Initialisierung falsch, oder? Ich würde 
nur 8 clocks für 8 bit erwarten...

Kann mir da bitte jemand auf die Sprünge helfen?
Angehängte Dateien:
Gast
Markus Grunwald schrieb:
> Wenn ich nämlich ein Byte abschicke, werden 16 bit auf SCL getaktet,
> nicht nur 8. Die "extra" 8 bit sind dann alle 0. Jedenfalls auf MOSI.
> Wenn Daten über MISO kommen, sieht es so aus, als ob 16 bit ankämen...
>
> Siehe auch Screenshot: oben clock,darunter MOSI, MISO und CS.

Aha, alles unklar, besonders SCL und das Byte.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.