Wie genau funktionieren diese Zeilen? /*Configure GPIO pin : PA0 */ GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_INPUT; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); Wird bei HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); bzw &GPIO_InitStruct) alles ersetzte was vorher hier GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_INPUT; GPIO_InitStruct.Pull = GPIO_NOPULL; definiert wurde?
Nö. Damit
1 | GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_INPUT; GPIO_InitStruct.Pull = GPIO_NOPULL; |
füllst du lediglich ein Struct mit Daten bzw. weist dessen Membern Werte zu; es wird nichts am Portpin verändert. Dies geschieht erst durch die Funktion
1 | HAL_GPIO_Init(GPIOA, &GPIO_InitStruct) |
; das wendet die im strict hinterlegte Konfiguration auf Port A an.
Das meinte ich damit. Da eben nur noch HAL_GPIO_Init(GPIOA, &GPIO_InitStruct), dasteht
Tilo P. schrieb: > Das meinte ich damit. > Da eben nur noch HAL_GPIO_Init(GPIOA, &GPIO_InitStruct), dasteht Du weist aber schon wie ein Funktionsaufruf in der von dir gewählten Programiersprache aussieht und was der bewirkt? - https://en.cppreference.com/w/c/language/functions
schön das mn hier immer bei Jeopardy ist. Keine Ahnung was du mir damit sagen willst. Aber ja, ich kenne Funktionen. Hier geht es aber um Records
Moin, was ist denn jetzt die eigentliche Frage?
1 | HAL_GPIO_Init(GPIOA, &GPIO_InitStruct) |
setzt alles, was vorher in dem GPIO_InitStruct gesetzt wurde für PortA. Vorher wird nur dein Struct (GPIO_InitStruct), bzw. dessen Member gesetzt. Was ist dir unklar? Viele Grüße
Tilo P. schrieb: > schön das mn hier immer bei Jeopardy ist. > Keine Ahnung was du mir damit sagen willst. > Aber ja, ich kenne Funktionen. > Hier geht es aber um Records In C gibt es nichts, das sich "Records" nennt, und > HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); ist nunmal der Aufruf einer Funktion. Da du die ja kennst, müsste dir das doch eigentlich bekannt sein. Daher ist unklar, wo jetzt dein Verständnisproblem liegt.
Rolf M. schrieb: > Daher ist unklar, wo jetzt dein Verständnisproblem liegt. Steht bestimmt im ersten Post...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.