STM32 HAL_SPI_Transmit() richtig?

Gast #6432768
Lesenswert?

Grüße,
ich möchte dieses Array:
1
uint8_t data[4]
2
{
3
0b11111111,
4
0b11111111,
5
0b11111111,
6
0b11111111
7
}
über SPI im Blocking-Mode senden.

Aus der HAL-Doku:
1
HAL_StatusTypeDef HAL_SPI_Transmit (SPI_HandleTypeDef * hspi, uint8_t * pData, uint16_t Size,
2
uint32_t Timeout)

Dann wäre der Befehl so:
1
HAL_SPI_Transmit(&hspi1, &data, 4, HAL_MAX_DELAY);

Stimmt das so? Insbesondere die & Zeichen und die 4? Der Code nach dem 
Transmit-Befehl wird auch erst ausgeführt wenn der Transmit fertig ist 
oder es zum Timeout kommt, da im Blocking-Mode, richtig?

Das SPI ist über CubeMX im 8bit Modus konfiguriert. Ein "SPI_Enable" wie 
es in den "STM32 Standard Peripheral Libraries" nötig war gibt es beim 
HAL nicht, richtig?

Gibt es in der CubeIDE eine Möglichkeit das SPI zu debuggen oder genauer 
zu visualisieren um zu sehen ob er sendet?

Bin blutiger Anfänger, danke für eure Zeit :)
Liebe Grüße!
Gast #6432879
Lesenswert?

Ich habe oben ein = vergessen. Entschuldigung. Richtig:
1
uint8_t data[4] =
2
{
3
0b11111111,
4
0b11111111,
5
0b11111111,
6
0b11111111
7
}

junge jomm bald wieder schrieb:
> Dazu gibt's Logic Analyzer um 7 EUR.
So einen hab ich sogar. Nur ist es leider aktuell sehr schwer den 
anzuschließen, dazu muss ich noch die Platine umbauen, bzw. Pins an den 
Leiterbahnen anbringen. Das hab damals leider ungünstig geplant.

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