Hur använder man GPIO pinnarna inom STM32?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Mr Andersson
Inlägg: 1394
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Mr Andersson »

Och än en gång har du bevisat att det är ingen idé att svara för du läser ändå ingenting..
LÄS KAPITEL 29
SvenW
Inlägg: 1116
Blev medlem: 24 april 2007, 16:23:10
Ort: Göteborg

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av SvenW »

Ja, som sagt!
I dokumentationen ovan är texten något mer utförlig, men samma information finns i headerfilerna ( samt Src-filerna ).
Med rätt konfigurerad editor har du snabb tillgång till dem där.
I Src-filerna kan man dessutom se hur det är implementerat!
Tyvärr dock, det verkar inte alltid som mjukvaruproducenterna talar riktigt samma språk som de som skriver hårdvarumanualerna( som t.ex DM00031020.pdf) . Det är lite tråkigt, men man lär sig om man är läraktig!
Janson1
Inlägg: 1338
Blev medlem: 1 december 2016, 09:06:02
Ort: Marks Kommun

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Janson1 »

Måste fråga: Har dom valt exakt samma pinkonfig. som på Arduino Uno/Nano?
Edit: Ja, plus mer funktioner per pinne ibland.
SvenW
Inlägg: 1116
Blev medlem: 24 april 2007, 16:23:10
Ort: Göteborg

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av SvenW »

Jag tror att de skall vara kompatibla. Svårt att veta om det alltid gäller ???
Se mer här:
https://en.wikipedia.org/wiki/List_of_A ... le_systems
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Al_Bundy »

Tanken med STMCubeMX och HAL-funktioner är väll att underlätta skrivandet utav C-kod? Mest bara skriva och återanvända automatisk genererade funktioner?
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Al_Bundy »

SvenW skrev:Dylika namnkonventioner brukar finnas i headerfilerna.

I min dator ligger de i förljade:
~/projf4/Drivers/STM32F4xx_HAL_Driver/Inc
~/projf4/Inc
...
Man bör konfigurerar sin editor/IDE så att man snabbt kan hitta i dessa.
I Linux har man etags. Jag känner inte till hur man konfigurerar Kiel och liknade IDE,
men antar att det går även där.

Det är bra att bekanta sig med headerfilerna innan man startar; väl igång tittar man i dem
allt som oftast.
Stängde dem genast. C-kod ska man vara försiktig med. Det är ju en jävla röra till språk. :)
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av lillahuset »

Med den attityden och att du inte verkar ha någon förmåga att ta till dig skriftlig information kanske du bör undvika C.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Al_Bundy »

Nej. C fungerar om man håller det fint och enkelt. :) Koppla ihop en liten LCD, kanske styra ett relä, lite knappar och kanske läsa utav en analog givare osv. Den nivå är jag på. Min nivå är att inte landa på Mars med 4-bits processor eller programmera nya Philips LED TV.
Senast redigerad av Al_Bundy 26 november 2018, 23:02:44, redigerad totalt 1 gång.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Al_Bundy »

Finns det ett sätt så man kan se alla värden på variablerna online i Atollic TrueSTUDIO?
Jag undrar också varför 0 = Hög och 1 = Låg.

Kod: Markera allt

int pin13 = HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_13);  // 0 = Knapp OFF, 1 = Knapp ON
	  if(pin13 > 0){
		  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, 0); // Tänd lampa
	  }else{
		  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, 1); // Släck lampa
	  }
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43149
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av sodjan »

> Jag undrar också varför 0 = Hög och 1 = Låg.

Varför tror du att det är det?
Användarvisningsbild
rvl
Inlägg: 5720
Blev medlem: 5 april 2016, 14:58:53
Ort: Helsingfors

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av rvl »

Kanske för att 0 betyder "tänd lampa"? men det beror snarare på hur "lampan" är inkopplad. (Mellan plus och portpinne, inte jord och portpinne.)
svanted
Inlägg: 5082
Blev medlem: 30 augusti 2010, 21:20:38
Ort: Umeå

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av svanted »

Jag undrar också varför 0 = Hög och 1 = Låg.
:roll:
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Al_Bundy »

rvl skrev:Kanske för att 0 betyder "tänd lampa"? men det beror snarare på hur "lampan" är inkopplad. (Mellan plus och portpinne, inte jord och portpinne.)
Jag har inte kopplat in lampan. Det är den integrerade gröna lampan som sitter fast på kortet.
sodjan skrev:> Jag undrar också varför 0 = Hög och 1 = Låg.

Varför tror du att det är det?
Jag tror det bara. Men den digitala teorin säger att 1 = Hög och 0 = Låg.
Användarvisningsbild
rvl
Inlägg: 5720
Blev medlem: 5 april 2016, 14:58:53
Ort: Helsingfors

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av rvl »

Den gröna lysdioden är mellan jord och portpinne, så den borde lysa när pinnen är hög och i övrigt korrekt initialiserad.
greenLED.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Klas-Kenny
Inlägg: 11292
Blev medlem: 17 maj 2010, 19:06:14
Ort: Växjö/Alvesta

Re: Hur använder man GPIO pinnarna inom STM32?

Inlägg av Klas-Kenny »

Det är väl knappen som är kopplad till jord med pull-up, alltså helt standard men logiskt "bakvänt".
Skriv svar