reklama - zainteresowany?

Jak programowa - Helion

Jak programowa
Autor: Stephen Oualline
Tytuł oryginału: Bare Metal C: Embedded Programming for the Real World
TÅ‚umaczenie: Krzysztof B
ISBN: 978-83-8322-085-7
stron: 300, Format: 165x235, okładka: mi
Księgarnia: Helion

Książka będzie dostępna od lutego 2023

Tagi: C - Programowanie

C to najcz

 

Zobacz także:

  • JÄ™zyk C. Kurs video. Praktyczne wprowadzenie do programowania
  • Linux. Programowanie systemowe
  • JÄ™zyk C. Solidna wiedza w praktyce. Wydanie VIII
  • Tablice informatyczne. C
  • Programowanie współbieżne. Systemy czasu rzeczywistego

Spis treści

Język C w programowaniu urządzeń. Praktyczna nauka tworzenia kodu dla systemów wbudowanych -- spis treści

Wprowadzenie

I. Programowanie systemów wbudowanych

  • 1. Witaj, Å›wiecie
    • Instalowanie GCC
    • Pobieranie programu System Workbench for STM32
    • Pierwszy program
      • Kompilowanie programu
      • PopeÅ‚nianie bÅ‚Ä™dów
      • Zrozumienie dziaÅ‚ania programu
      • Dodawanie komentarzy
    • Ulepszanie programu i procesu jego budowania
      • Program "make"
      • Flagi kompilatora
    • Jak kompilator dziaÅ‚a za kulisami
      • Preprocesor
      • Kompilator
      • Asembler
      • Konsolidator
    • Dodawanie reguÅ‚ do pliku Makefile
    • Podsumowanie
    • Pytania
  • 2. Prezentacja zintegrowanego Å›rodowiska programistycznego
    • Korzystanie z programu System Workbench for STM32
      • Uruchamianie Å›rodowiska IDE
      • Tworzenie programu "Witaj, Å›wiecie"
      • Debugowanie programu
    • Co zrobiÅ‚o Å›rodowisko IDE
    • Importowanie przykÅ‚adowych programów opisanych w tej książce
    • Podsumowanie
    • Problemy programistyczne
    • Pytania
  • 3. Programowanie mikrokontrolera
    • PÅ‚ytka rozwojowa NUCLEO-F030R8
      • Programowanie i debugowanie na pÅ‚ytce
      • Konfigurowanie pÅ‚ytki
    • Konfigurowanie projektu dla systemu wbudowanego
    • Twój pierwszy program dla systemu wbudowanego
      • Inicjacja sprzÄ™tu
      • Programowanie pinu GPIO
      • PrzeÅ‚Ä…czanie diody LED
      • Budowanie kompletnego programu
    • Analiza procesu budowania
    • Analiza plików projektu
    • Debugowanie aplikacji
    • Wykonywanie programu krok po kroku
    • Podsumowanie
    • Problemy programistyczne
    • Pytania
  • 4. Liczby i zmienne
    • Praca z liczbami caÅ‚kowitymi
      • Deklarowanie zmiennych do przechowywania liczb caÅ‚kowitych
      • Nadawanie wartoÅ›ci zmiennym
      • Inicjowanie zmiennych
    • Rozmiary i reprezentacje liczb caÅ‚kowitych
      • Reprezentacje liczb
      • Standardowe liczby caÅ‚kowite
      • Typy caÅ‚kowitoliczbowe bez znaku
      • PrzepeÅ‚nienie
      • Reprezentacja liczb caÅ‚kowitych ze znakiem metodÄ… uzupeÅ‚nieÅ„ do dwóch
    • Skrócone operatory
    • Sterowanie mapowanymi w pamiÄ™ci rejestrami we/wy za pomocÄ… operacji bitowych
      • Alternatywa
      • Koniunkcja
      • Negacja
      • Alternatywa wykluczajÄ…ca
      • PrzesuniÄ™cie
    • Definiowanie znaczenia bitów
      • Nadawanie wartoÅ›ci dwóm bitom naraz
      • WyÅ‚Ä…czanie bitu
      • Sprawdzanie wartoÅ›ci bitów
    • Podsumowanie
    • Problemy programistyczne
  • 5. Instrukcje decyzyjne i sterujÄ…ce
    • Instrukcja if
    • Instrukcja if/else
    • Instrukcje pÄ™tli
      • PÄ™tla while
      • PÄ™tla for
    • Używanie przycisku
      • Inicjacja
      • Wybór ukÅ‚adu ze Å›ciÄ…ganiem
      • Pobieranie stanu przycisku
      • Uruchomienie programu
    • Sterowanie pÄ™tlÄ…
      • Instrukcja break
      • Instrukcja continue
    • Antywzorce
      • Pusta pÄ™tla while
      • Przypisanie w pÄ™tli while
    • Podsumowanie
    • Problemy programistyczne
  • 6. Tablice, wskaźniki i Å‚aÅ„cuchy
    • Tablice
      • "Pod maskÄ…": wskaźniki
      • Arytmetyka tablic i wskaźników
      • PrzepeÅ‚nienie tablicy
    • Znaki i ich Å‚aÅ„cuchy
    • Podsumowanie
    • Problemy programistyczne
  • 7. Zmienne lokalne i procedury
    • Zmienne lokalne
    • PrzesÅ‚oniÄ™te zmienne
    • Procedury
    • Ramki stosu
    • Rekurencja
    • Styl programowania
    • Podsumowanie
    • Problemy programistyczne
  • 8. ZÅ‚ożone typy danych
    • Wyliczenia
    • Sztuczki preprocesora a wyliczenia
    • Struktury
      • Struktury w pamiÄ™ci
      • DostÄ™p do niewyrównanych danych
      • Inicjacja struktur
      • Przypisywanie struktury
      • Wskaźniki do struktur
      • Nazewnictwo struktur
    • Unie
    • Tworzenie wÅ‚asnego typu
    • Struktury a programowanie systemów wbudowanych
    • typedef
      • Wskaźniki do funkcji a dyrektywa typedef
      • typedef i struct
    • Podsumowanie
    • Problemy programistyczne
  • 9. WyjÅ›cie szeregowe w mikrokontrolerze STM
    • Wypisywanie znaków Å‚aÅ„cucha jeden po drugim
      • Definiowanie wÅ‚asnej funkcji putchar
    • WyjÅ›cie szeregowe
      • Krótka historia komunikacji szeregowej
      • Szeregowe "Witaj, Å›wiecie!"
      • Inicjacja interfejsu UART
      • PrzesyÅ‚anie znaku
    • Komunikacja z urzÄ…dzeniem
      • Windows
      • Linux i macOS
    • Podsumowanie
    • Problemy programistyczne
  • 10. Przerwania
    • Odpytywanie kontra przerwania
    • Przerwania w szeregowych operacjach we/wy
    • Procedury obsÅ‚ugi przerwaÅ„
    • Wypisywanie Å‚aÅ„cucha za pomocÄ… przerwaÅ„
      • SzczegóÅ‚y programu
      • Koszmar przerwaÅ„
    • ZwiÄ™kszanie prÄ™dkoÅ›ci przy użyciu bufora
      • Funkcja nadawcza
      • Procedura obsÅ‚ugi przerwania
      • CaÅ‚y program
      • Problem
    • Podsumowanie
    • Problemy programistyczne
  • 11. Konsolidator
    • Zadanie konsolidatora
    • Modele pamiÄ™ci stosowane podczas kompilacji i konsolidacji
      • Idealny model jÄ™zyka C
      • Sekcje niestandardowe
    • Proces konsolidacji
    • Symbole definiowane przez konsolidator
    • Relokacja i konsolidacja plików obiektowych
    • Mapa konsolidatora
    • Zaawansowane wykorzystanie konsolidatora
      • Pamięć flash jako "trwaÅ‚e" miejsce skÅ‚adowania
      • Wiele elementów konfiguracji
      • PrzykÅ‚ad adaptacji w "warunkach polowych"
      • Uaktualnianie oprogramowania ukÅ‚adowego
    • Podsumowanie
    • Problemy programistyczne
  • 12. Preprocesor
    • Proste makra
      • Makra parametryzowane
      • Makra z kodem
    • Kompilacja warunkowa
    • Gdzie definiowane sÄ… symbole
      • Symbole w wierszu poleceÅ„
      • Symbole predefiniowane
    • Pliki doÅ‚Ä…czane
    • Inne dyrektywy preprocesora
    • Sztuczki preprocesora
    • Podsumowanie
    • Problemy programistyczne

II. Język C na wielkich maszynach

  • 13. Pamięć dynamiczna
    • Podstawowe operacje przydzielania pamiÄ™ci ze sterty i wycofywania jej przydziaÅ‚u
    • Listy wiÄ…zane
      • Dodawanie wÄ™zÅ‚a
      • Wypisywanie listy wiÄ…zanej
      • Usuwanie wÄ™zÅ‚a
      • SkÅ‚adamy to wszystko razem
    • Problemy z pamiÄ™ciÄ… dynamicznÄ…
    • Valgrind i AddressSanitizer z GCC
    • Podsumowanie
    • Problemy programistyczne
  • 14. Buforowane plikowe operacje we/wy
    • Funkcja printf
      • Wypisywanie tabeli znaków ASCII
      • Zapis we wstÄ™pnie zdefiniowanych plikach
    • Odczyt danych
    • Szkodliwa funkcja gets
    • Otwieranie plików
    • Binarne we/wy
    • Kopiowanie pliku
    • Buforowanie i opróżnianie
    • Zamykanie plików
    • Podsumowanie
    • Problemy programistyczne
  • 15. Argumenty poleceÅ„ i podstawowe operacje we/wy
    • Argumenty poleceÅ„
    • Podstawowe operacje we/wy
      • Wykonywanie podstawowych operacji we/wy
      • Tryb binarny
    • Funkcja ioctl
    • Podsumowanie
    • Problemy programistyczne
  • 16. Liczby zmiennoprzecinkowe
    • Czym jest liczba zmiennoprzecinkowa?
      • Typy zmiennoprzecinkowe
      • Automatyczne konwersje
    • Problemy zwiÄ…zane z liczbami zmiennoprzecinkowymi
      • BÅ‚Ä™dy zaokrÄ…gleÅ„
      • Precyzja
    • NieskoÅ„czoność, wartoÅ›ci nieliczbowe i liczby subnormalne
    • Implementacja
    • Alternatywne rozwiÄ…zania
    • Podsumowanie
    • Problemy programistyczne
  • 17. Programowanie modularne
    • Proste moduÅ‚y
      • Problemy zwiÄ…zane z prostym moduÅ‚em
      • Kompilowanie moduÅ‚u
    • Cechy dobrego moduÅ‚u
    • Przestrzenie nazw
    • Biblioteki
      • Program ranlib i konsolidacja biblioteki
      • Tryb deterministyczny i niedeterministyczny
    • SÅ‚abe symbole
    • Podsumowanie
    • Problemy programistyczne

Posłowie

  • Ucz siÄ™ dobrze pisać
  • Ucz siÄ™ selektywnie czytać
  • WspóÅ‚praca i twórcze Å›ciÄ…ganie
  • Przydatne otwarte narzÄ™dzia
    • Cppcheck
    • Doxygen
    • Valgrind
    • SQLite
  • Nie przestawaj siÄ™ uczyć

Dodatek. Lista kontrolna projektu

  • Natywny projekt C
  • Projekt STM32 Workbench dla urzÄ…dzenia wbudowanego

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.