• Wydawnictwo Grupy Medium
    • Seria e.
    • Seria i.
    • Seria b.
    • elektro.info
    • Rynek instalacyjny
    • Izolacje
    • Ekspert budowlany
    • Administrator
    • Wydania elektroniczne
  • Instytut Techniki Budowlanej
    • Instrukcje, Wytyczne, Poradniki
    • Prace Naukowe ITB
    • Prace Naukowe w Open Access
    • Projektowanie według Eurokodów
    • Warunki Techniczne Wykonania i Odbioru Robót Budowlanych
  • Pakiety książek
  • Architektura
  • Automatyka, sterowanie
  • BHP
  • Biologia
  • Biznes
  • Budownictwo
  • Chemia
  • Energetyka
  • Elektronika
  • Geodezja, kartografia
  • Górnictwo, wiertnictwo
  • Informatyka
  • Instalacje elektryczne i teletechniczne
  • Instalacje grzewcze
  • Instalacje sanitarne i gazowe
  • Kosztorysowanie
  • Matematyka, fizyka
  • Materiałoznawstwo
  • Mechanika
  • Nieruchomości
  • Normy
    • Normy w wersji elektronicznej
  • Ochrona Środowiska
  • PPOŻ.
  • Prawo budowlane
  • Programy
  • Spawalnictwo
  • Transport
  • Wentylacja, klimatyzacja, chłodnictwo
  • Wnętrza i ogrody
  • Albumy
  • Czasopisma
  • Multimedia
  • Poradniki
  • Słowniki
    • Seria słownik podręczny
  • Mały technik. Książki dla dzieci
  • Kalendarze
  • Inne/pozostałe
  • Kontakt
  • Nowości
  • Promocje
  • Dostawa
  • Newsletter
  • Poradnik projektanta elektryka
  • Ebooki
  • 22 512 60 60
Twój koszyk jest pusty
Zaloguj
Nie masz jeszcze konta?
Załóż konto
  1. Start
  2. Elektronika
  3. Mikrokontrolery STM32 dla początkujących
  • Mikrokontrolery STM32 dla początkujących

Mikrokontrolery STM32 dla początkujących

  • Dodaj recenzję:
  • Kod: 4025
  • Producent: BTC
  • Kod producenta:
  • Autor: Aleksander Kurczyk
  • Rok wydania: 2019
  • ISBN: 978-83-64702-16-7
  • Liczba stron: 242
  • Oprawa: twarda
  • Format: A5

  • Cena netto: 94,29 zł 99,00 zł
  • szt.

Opis

Książka poświęcona jest programowaniu i stosowaniu 32-bitowych mikrokontrolerów z rodziny STM32, bazujących na rdzeniu obliczeniowym z rodziny Cortex-M. Czytelnik znajdzie w książce dużą liczbę przykładów ze szczegółowymi komentarzami, pozwalającymi szybko rozpocząć własne eksperymenty. Autor bazuje na programie STM32CubeMX firmy STMicroelectronics. Omawia narzędzia oraz biblioteki pozwalające na programowanie układów z rodziny STM32. Wydrukowanie w książce kolorowych zrzutów ekranowych oraz listingów ułatwi z pewnością Czytelnikowi śledzenie kolejnych etapów pracy dla zamieszczonych projektów.

Książka skierowana jest przede wszystkim do osób, które po raz pierwszy spotykają się z mikrokontrolerami STM32, a mają już jakieś podstawowe doświadczenie z popularnymi płytkami Arduino lub jakimikolwiek mikrokontrolerami.
Autor zakłada, że Czytelnik zna podstawy programowania w języku C/C++ i rozumie działanie prostego kodu – zna pojęcia takie jak: zmienne, instrukcje warunkowe czy pętle.

Ze wstępu

Swoją pierwszą styczność z układami STM32 miałem w trakcie kursu programowania tych układów zorganizowanego przez koło naukowe Microsystem Oriented Societyna Politechnice Wrocławskiej. Podczas kursu przygotowałem kilka małych projektów i umieściłem je w serwisie GitHub; repozytorium to następnie rozbudowywałem po kursie, dodając kolejne projekty. Ponieważ wszystkie przykłady wykonywane były na płytkach Kamami KA-NUCLEO, które KN MOS otrzymało od producenta i rozdało między uczestników szkolenia, pracownik firmy Kamami p. Piotr Zbysiński skon-taktował się ze mną i zapytał, czy nie chciałbym opisać kilku projektów na łamach miesięcznika „Elektronika Praktyczna”. Zgodziłem się – czego efektem była seria wydawnicza – „Kurs programowania układów STM32”. Następnie poproszony zostałem o przygotowanie książki na bazie tych artykułów – tej właśnie książki. Opisuję w niej sporo tych samych projektów – część z nich nieco rozbudowałem, część całkiem zmieniłem, a część pozostawiłem w niemal niezmienionej formie. Względem serii wydawniczej zmieniło się także środowisko pracy – w artykułach wykorzystywane było starsze, tworzone przez społeczność – System Workbech for STM32, obecnie jest to Atollic TrueSTUDIO, wykupione przez producenta układów STM32. W dużej mierze jednak książka bazuje na wspomnianej serii wydawniczej.

1.1. Do kogo kieruję niniejszą książkę? Książkę tę kieruję przede wszystkim do osób takich jak ja w momencie pierwszego spotkania z mikrokontrolerami STM32 – do osób, które mają już jakieś podstawowe doświadczenie z popularnymi płytkami Arduino lub jakimikolwiek mikrokontrolerami – czy to na zajęciach w szkole, na uczelni, czy prywatnie w domu. Zakładam też, że Czytelnik zna podstawy programowania w języku C/C++ i rozumie działanie prostego kodu – zna pojęcia takie jak: zmienne, instrukcje warunkowe czy pętle.

1.2. Czego będzie można się z niej nauczyć? W kolejnych rozdziałach przedstawię narzędzia oraz biblioteki pozwalające na programowanie układów z rodziny STM32. Podczas tworzenia małych projektów zapoznamy się z zagadnieniami takimi jak: obsługa pinów GPIO, liczniki, prze-rwania, generowanie sygnału PWM, interfejsy komunikacyjne UART, SPI czy I2C, obsługa konwertera analogowo-cyfrowego i wielowątkowość oferowana przez system operacyjny FreeRTOS. Uruchomimy także urządzenia zewnętrzne takie jak: moduł GPS, kolorowy dotykowy wyświetlacz LCD, czujniki temperatury, ciśnienia i wilgotności czy paski adresowalnych diod LED oraz połączymy się z siecią Wi-Fi i komputerem w standardzie Bluetooth.

1.3. Płytka rozwojowa Kamami KA-NUCLEO. Wszystkie opisywane w książce przykłady tworzone były pod kątem płytki rozwojowej Kamami KA-NUCLEO-F411CE. Choć większość spośród nich będzie możliwa do wykonania na dowolnej innej płytce z układem STM32, zachęcam do zakupu tej konkretnej płytki, ponieważ przenoszenie projektów może być chwilami problematyczne.

KA-NUCLEO-F411CE występuje w dwóch, nieznacznie różniących się wersjach i każdy przykład jest kompatybilny z obiema wersjami. Obie wersje płytki bazują na układzie STM32F411CEU6 i są wyposażone w interfejs USB 2.0 (do dyspozycji użytkownika), pięć interfejsów SPI, pięć magistral I2S, trzy magistrale I2C, trzy interfejsy USART/UART, sześć liczników 16-bitowych oraz dwa 32-bitowe. KA- -NUCLEO-F411CE może być taktowany zegarem o maksymalnej częstotliwości 100 MHz. Na płytce oprócz właściwego mikrokontrolera znajduje się również prostszy układ STM32F103C8U6, pełniący funkcję programatora ST-LINK z wyj-ściem USB. Urządzenie ma wyprowadzenia pinów zgodne z Arduino, wbudowany przycisk do dyspozycji użytkownika oraz trójkolorową diodę LED RGB. STM32 to rodzina 32-bitowych mikrokontrolerów wyprodukowanych przez firmę STMicroelectronics. Układy te bazują na rdzeniu obliczeniowym z serii ARM Cortex-M. W zależności od wersji cechują się małym poborem mocy lub wysokimi osiągami i możliwościami. Układy mogą być taktowane zegarem o maksymalnej częstotliwości od 32 do 216 MHz, odpowiednio w wersji STM32L0 oraz STM32F7. Wersje STM32F7, STM32F4 i STM32F3, oparte na rdzeniach Cortex-M4F, mają wsparcie dla obliczeń zmiennoprzecinkowych (FPU) oraz cyfrowego przetwarzania sygnałów (DSP). Mikrokontrolery te mają również wiele interfejsów SPI, UART, I2C, I2S, a w niektórych wersjach również wbudowany kontroler USB 1.1 lub 2.0 i Ethernet.

1.4. W jakim programie będziemy pracować? Producent układów STM32 – firma STMicroelectronics – wydał zestaw bibliotek – frameworków, noszący nazwę Hardware Abstraction Layer, umożliwiający programowanie tych mikrokontrolerów w bardzo prosty, wysokopoziomowy, sposób. Dzięki temu nie ma konieczności zagłębiania się w obszerną specyfikację układu ani rdzenia ARM. Wraz z bibliotekami HAL producent dostarcza również program STM32CubeMX (rysunek1.2). Jest to graficzny generator konfiguracji mikrokontrolera, pozwalający na skonfigurowanie wszystkich wyprowadzeń, interfejsów, liczników oraz taktowania całego układu, a następnie na wygenerowanie gotowego projektu dla różnych środowisk IDE. Wszystko to sprawia, że programowanie tak zaawansowanego mikrokontrolera jest niemal równie proste i intuicyjne, jak programowanie platformy Arduino, niemniej mamy tutaj znacznie większe możliwości.

Spis treści

1. Wstęp / 7
1.1. Do kogo kieruję niniejszą książkę?/ 8
1.2. Czego będzie można się z niej nauczyć? / 8
1.3. Płytka rozwojowa Kamami KA-NUCLEO / 8
1.4. W jakim programie będziemy pracować? / 10

2 . Hello Blinky! – Hello World świata mikrokontrolerów / 11
2.1. Tworzenie projektu w programie STM32CubeMX / 12
2.2. Konfiguracja wyprowadzeń procesora / 14
2.3. Wbudowana pętla PLL / 16
2.4. Generowanie projektu / 19
2.5. Poznajemy Atollic TrueSTUDIO / 20
2.6. Importujemy projekt / 20
2.7. Piszemy kod programu / 20
2.8. Kompilacja, wgrywanie kodu programu, perspektywa debugowania i praca krokowa / 25
2.9. Obsługa pinów GPIO – odczyt wartości (obsługa przycisku) / 28

3. Liczniki, przerwania i sygnał PWM / 33
3.1. Tworzymy projekt / 35
3.2. Konfiguracja licznika / 38
3.3. Jak dobrać parametry? / 38
3.4. Sterowanie jasnością z kodu programu / 40
3.5. Czy coś jest nie tak? – skala liniowa i korekcja gamma / 41
3.6. Mieszanie barw / 43
3.7. Karuzela / 44
3.8. Przerwania licznika / 45

4. Interfejs UART – połączenie z komputerem i innymi urządzeniami / 49
4.1. Pierwszy projekt / 51
4.2. Sterowanie kolorem diody RGB z komputera / 58
4.3. Wykorzystanie przerwań do odbioru danych / 62

5. [UART] Odbiornik GPS / 67
5.1. GPS-NAVSTAR – Global Positioning System – Navigation Signal Timing and Ranging / 69
5.2. Moduł GPS / 69
5.3. Tworzymy projekt / 72

6. Interfejs SPI i adresowalne diody LED / 89
6.1. Jak sterować diodami? / 91
6.2. Jak to wykonamy? – interfejs SPI / 94
6.3. Tworzymy nowy projekt / 95
6.4. Częstotliwość sygnału sterującego / 97
6.5. Mieszanie barw i tworzenie gradientów / 104

7. [SPI] Wyświetlacz LCD / 109
7.1. Zasada działania wyświetlacza LCD / 110
7.2. Podłączenie / 111
7.3. Tworzymy projekt / 114
7.4. Przenoszenie biblioteki / 133

8. [SPI] Panel dotykowy / 135
8.1 Jak działa panel dotykowy? / 136
8.2. Rozbudujmy projekt / 137

9. Magistrala I2C i odczyt danych z czujników cyfrowych / 153
9.1. Interfejs I2C / 154
9.2. Czujnik BMP180 / 155
9.3. Komunikacja z czujnikiem / 157
9.4. Tworzymy projekt / 159
9.5. Czujnik Bosch BME280 / 169

10. Konwerter analogowo-cyfrowy i odczyt danych z czujników analogowych / 175
10.1. Jak działa przetwornik ADC? / 176
10.1.1. Próbkowanie / 176
10.1.2. Kwantyzacja / 176
10.2. Bezpośredni odczyt wartości / 178
10.3. Tryb DMA – automatyczny odczyt do zmiennej / 185
10.4. Do czego odczytem wartości z czujników możemy wykorzystać przetwornik analogowo-cyfrowy?/ 188

11. Wi-Fi / 189
11.1. Zestaw poleceń AT Hayesa / 191
11.2. Czym właściwie jest TCP, porty i jak w uproszczeniu przebiega komunikacja w Internecie? / 194
11.3. Testowanie działania układu ESP8266 / 195
11.4. Serwer HTTP i ustawianie koloru diody RGB przez stronę www / 199

12. Bluetooth / 211
12.1. Bluetooth / 213
12.2. Moduł HC-6 / 213
12.3. Tworzymy projekt / 214
12.4. Jak to działa? / 229

13. Wielowątkowość / 231
13.1. Tworzymy projekt / 233
13.2. Race condition i semafory / 239
13.3 Kolejki / 241


O Autorze

Aleksander Kurczyk jest pasjonatem informatyki, programowania, sieci komputerowych i elektroniki. Mikrokontrolery STM32 poznał podczas studiów na Politechnice Wrocławskiej, gdzie brał udział w przygotowaniu kursów mikrokontrolerowych dla studentów. Jest autorem artykułów publikowanych w „Elektronice Praktycznej”.

Informacje o bezpieczeństwie produktu Informacje o producencie

  • Recenzje

  • Polecane produkty
  • Pytania do produktu

Zadaj pytanie dotyczące produktu. Nasz zespół z przyjemnością udzieli szczegółowej odpowiedzi na zapytanie.


  • Ostatnio przeglądane produkty

Informacje
Kontakt Regulamin O firmie Polityka prywatności
Kontakt
Dołącz do naszego klubu.

Dołącz do naszego klubu i otrzymuj ciekawe informacje, promocje i rabaty.

Dołącz
Sklep internetowy SOTE
Ustawienia cookies
Niezbędne pliki cookie
Te pliki cookie są niezbędne do działania strony i nie można ich wyłączyć. Służą na przykład do utrzymania zawartości koszyka użytkownika. Możesz ustawić przeglądarkę tak, aby blokowała te pliki cookie, ale wtedy strona nie będzie działała poprawnie. Te pliki cookie pozwalają na identyfikację np. osób zalogowanych.

Zawsze aktywne
Analityczne pliki cookie
Te pliki cookie pozwalają liczyć wizyty i źródła ruchu. Dzięki tym plikom wiadomo, które strony są bardziej popularne i w jaki sposób poruszają się odwiedzający stronę. Wszystkie informacje gromadzone przez te pliki cookie są anonimowe.

Reklamowe pliki cookie
Reklamowe pliki cookie mogą być wykorzystywane za pośrednictwem naszej strony przez naszych partnerów reklamowych. Służą do budowania profilu Twoich zainteresowań na podstawie informacji o stronach, które przeglądasz, co obejmuje unikalną identyfikację Twojej przeglądarki i urządzenia końcowego. Jeśli nie zezwolisz na te pliki cookie, nadal będziesz widzieć w przeglądarce podstawowe reklamy, które nie są oparte na Twoich zainteresowaniach.

Nasza strona korzysta z usług Google, takich jak Google Analytics i Google Ads. Aby dowiedzieć się więcej o tym, jak Google wykorzystuje dane z naszej strony, zapoznaj się z polityką prywatności i warunkami Google.

Wysyłanie danych związanych z reklamami
Zgadzam się na wysyłanie danych związanych z reklamami do Google.

Reklamy spersonalizowane Google
Zgadzam się na używanie reklam spersonalizowanych. Reklamy te są dostosowywane do konkretnych preferencji, zachowań i cech użytkownika. Google zbiera dane na temat aktywności użytkownika w internecie, takie jak wyszukiwania, przeglądane strony internetowe, kliknięcia i zakupy online, aby lepiej zrozumieć jego zainteresowania i preferencje.

Koszyk

Twój koszyk jest pusty

Kategorie

  • Wydawnictwo Grupy Medium
    • Seria e.
    • Seria i.
    • Seria b.
    • elektro.info
    • Rynek instalacyjny
    • Izolacje
    • Ekspert budowlany
    • Administrator
    • Wydania elektroniczne
  • Instytut Techniki Budowlanej
    • Instrukcje, Wytyczne, Poradniki
    • Prace Naukowe ITB
    • Prace Naukowe w Open Access
    • Projektowanie według Eurokodów
    • Warunki Techniczne Wykonania i Odbioru Robót Budowlanych
  • Pakiety książek
  • Architektura
  • Automatyka, sterowanie
  • BHP
  • Biologia
  • Biznes
  • Budownictwo
  • Chemia
  • Energetyka
  • Elektronika
  • Geodezja, kartografia
  • Górnictwo, wiertnictwo
  • Informatyka
  • Instalacje elektryczne i teletechniczne
  • Instalacje grzewcze
  • Instalacje sanitarne i gazowe
  • Kosztorysowanie
  • Matematyka, fizyka
  • Materiałoznawstwo
  • Mechanika
  • Nieruchomości
  • Normy
    • Normy w wersji elektronicznej
  • Ochrona Środowiska
  • PPOŻ.
  • Prawo budowlane
  • Programy
  • Spawalnictwo
  • Transport
  • Wentylacja, klimatyzacja, chłodnictwo
  • Wnętrza i ogrody
  • Albumy
  • Czasopisma
  • Multimedia
  • Poradniki
  • Słowniki
    • Seria słownik podręczny
  • Mały technik. Książki dla dzieci
  • Kalendarze
  • Inne/pozostałe
  • Kontakt
  • Nowości
  • Promocje
  • Dostawa
  • Newsletter
  • Poradnik projektanta elektryka
  • Ebooki
  • 22 512 60 60

Moje konto

Zaloguj
Nie masz jeszcze konta?
Załóż konto

Wyszukiwanie produktów