Skocz do zawartości

Kurs STM32 - #4 - Sterowanie portami GPIO w praktyce


Pomocna odpowiedź

To w takim razie musisz zajrzeć do dokumentacji swojego mikrokontrolera lub poszukać odpowiednich przykładów. Na przykład w Twoim przypadku szyna, do której podłączony jest port GPIOA, nie nazywa się APB2 - pewną wskazówkę masz w komunikatach kompilatora u dołu programu (AHB). Analogicznie, w używanym przez Ciebie sprzęcie mogą nie istnieć pewne tryby (GPIO_mode) działania pinów układu, które istnieją w F103.

  • Lubię! 1
Link to post
Share on other sites

Ogólnie w dokumentacji (F303) masz taki rysunek:

image.thumb.png.58809b91dd3c4e6629f622396dab5345.png

W dokumentacji F103 (takiej, jak w kursie) masz inny rysunek:

image.thumb.png.d358b0090e78c132c227bf4bdb46da63.png

Możesz jeszcze zajrzeć do dokumentu opisującego różnice między seriami:

https://www.st.com/content/ccc/resource/technical/document/application_note/8e/c8/8d/e3/ee/ff/44/e6/DM00073522.pdf/files/DM00073522.pdf/jcr:content/translations/en.DM00073522.pdf

Znajdziesz tam na przykład takie informacje:

image.thumb.png.74515923685ea56e4b504baae0dc37df.png

Twój kompilator zresztą Cię o tym poinformował:

image.thumb.png.1c1ec352013f3017302272443dcf7077.png

Po prostu powinieneś wstawić AHB w miejsce APB2 w kodzie programu. To powinno zlikwidować pierwszy błąd. (Przyznam szczerze, że nie chce mi się szukać dlaczego funkcja ma w nazwie AHB zamiast AHB2 - możesz poszukać.) Mam nadzieję, że z kolejnymi błędami sobie poradzisz. Decydując się na przerobienie zadań z kursu na innym niż dedykowanym zestawie, musisz liczyć się z tego typu różnicami pomiędzy różnymi seriami stmów.

Przez pomyłkę poniższy rysunek dodał się dwa razy - nie umiem go usunąć:

image.png

Edytowano przez piotr96
Zdublowany rysunek (na dole wiadomości) - brak możliwości usunięcia.
  • Lubię! 1
  • Pomogłeś! 1
Link to post
Share on other sites

dzięki za odpowiedz ale chodzilo mi o to jak znalezc jakis dokument ze spisem komend do mojego mikroprocesora bo oczywiscie po poprawieniu tych bledow pojawiaja sie kolejne, przegladanie plikow z biblioteki niestety nie na wszystko daje odpowiedz

Link to post
Share on other sites

Jeśli chodzi Ci o opis biblioteki StdPeriph dla Twojego mikrokontrolera, to zapoznaj się z tym dokumentem:

https://www.st.com/content/ccc/resource/technical/document/user_manual/d1/02/f0/b6/1a/8a/43/de/DM00068049.pdf/files/DM00068049.pdf/jcr:content/translations/en.DM00068049.pdf

Jeżeli chcesz zapoznać się z rejestrami stma, to odpowiedni będzie reference manual.

Link to post
Share on other sites

A ja mam pytanie odnośnie linijki LED: załóżmy, że chcielibyśmy podłączyć sobie linijkę led trochę inaczej, tj. w taki sposób, że anody led podłączylibyśmy do pinu 3.3 V na płytce, czyli musielibyśmy załączać diody zerem z pinów GPIO. I tu pytanie, jak dostosować w takim wypadku kod, a zwłaszcza linijkę: 

gpio.GPIO_Mode = GPIO_Mode_Out_PP;

Jak to sensownie zrobić?:c

Link to post
Share on other sites
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.