Forum: Mikrocontroller und Digitale Elektronik STM32: Was macht SPI_Cmd(SPI1, ENABLE)?


von useless (Gast)


Lesenswert?

Hi,

ich habe mir das Tutorial von Driller zu dem STM32 und SPI angeschaut. 
Ich kann allerdings keine Erklärung zu diesem Befehl finden:

SPI_Cmd(SPI1, ENABLE)

Was macht dieser?

von Lutz (Gast)


Lesenswert?

Was würdest du denn an Hand der Worte vermuten???

von Dr. Sommer (Gast)


Lesenswert?

Wenn man dir das jetzt beantwortet, fragst du das dann für jeden 
einzelnen Befehl den du findest?

von Trottel (Gast)


Lesenswert?

Enable, SPI1.... Hmm, dass es das SPI1-Peripheral enabelt, wäre zu 
einfach. Das kann ja eigentlich nicht sein, wenn die SW von ST kommt. 
Die verkacken doch sonst auch immer alles

von useless (Gast)


Lesenswert?

Lutz schrieb:
> Was würdest du denn an Hand der Worte vermuten???

Das es irgendwas! von SPI1 aktiviert ist mir schon klar. Aber wofür 
steht das CMD? Wird die Taktversorgung für SPI1 aktiviert, oder die 
Interrupts, oder oder oder?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

useless schrieb:
> Aber wofür
> steht das CMD?

Schau doch in der Lib nach:
1
**
2
  * @brief  Enables or disables the specified SPI peripheral.
3
  * @param  SPIx: where x can be 1, 2 or 3 to select the SPI peripheral.
4
  * @param  NewState: new state of the SPIx peripheral. 
5
  *          This parameter can be: ENABLE or DISABLE.
6
  * @retval None
7
  */
8
void SPI_Cmd(SPI_TypeDef* SPIx, FunctionalState NewState)
9
{
10
  /* Check the parameters */
11
  assert_param(IS_SPI_ALL_PERIPH(SPIx));
12
  assert_param(IS_FUNCTIONAL_STATE(NewState));
13
  if (NewState != DISABLE)
14
  {
15
    /* Enable the selected SPI peripheral */
16
    SPIx->CR1 |= SPI_CR1_SPE;
17
  }
18
  else
19
  {
20
    /* Disable the selected SPI peripheral */
21
    SPIx->CR1 &= (uint16_t)~((uint16_t)SPI_CR1_SPE);
22
  }
23
}
Es wird also im SPIn->CR1 Register das Bit SPI_CR1_SPE gesetzt oder 
gelöscht.
Zu finden ist die Routine für die F4 Serie in 'stm32f4xx_spi.c'

von Faul (Gast)


Lesenswert?

Wenn du in deiner IDE auf die Funktion rechtsklickst und auf "go to 
definition" linksklickst kommst du schneller an die Antwort, anstatt 
hier das Forum zu bemühen.

von Felix C. (felix_c13)


Lesenswert?

Nicht normal wie grad wieder alle übern nen Neuen herfallen. Hätte er 
gemeint, dass er bisher nur Arduino-Erfahrung hätte. Wäre er wohl 
sprichwörtlich schon aufgeknüpft^^

Allerdings, auf ne saubere Art Fragen stellen kann er auch nich...

useless schrieb:
> ich habe mir das Tutorial von Driller zu dem STM32 und SPI angeschaut.

Matthias S. schrieb:
> Schau doch in der Lib nach:

Bei der Lib handelt sich um die Standard Peripheral Library -> 
Mittlerweile durch HAL verschlimmbessert.

Nächstes Mal konkretisieren um welche Familie es sich handelt 
STM32F1?F2?F7?..??

von Dr. Sommer (Gast)


Lesenswert?

Felix C. schrieb:
> Nicht normal wie grad wieder alle übern nen Neuen herfallen.
Wer sich solche Fragen nicht selbst beantworten kann, sollte 
programmieren bleiben lassen und das Forum nicht nerven. Google findet 
so etwas sofort. Eine Referenz lesen gehört zu den Grundfertigkeiten. 
Internetkompetenz sollte mittlerweile sogar an Schulen gelehrt werden...

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.