Ocena:

Książka spotkała się ze sporą krytyką ze względu na słabe środowisko programistyczne i wprowadzającą w błąd treść. Wielu użytkowników uznało, że proces instalacji jest uciążliwy, a przykłady nie odzwierciedlają programowania bare-metal, co doprowadziło do rozczarowania.
Zalety:Niektórzy użytkownicy wyrazili chęć polubienia książki i zauważyli, że No Starch Press zazwyczaj publikuje wysokiej jakości treści. Niektórzy stwierdzili, że alternatywne konfiguracje, takie jak CLion, lepiej odpowiadają ich potrzebom.
Wady:Środowisko programistyczne jest obarczone wieloma problemami, w tym słabo utrzymanym oprogramowaniem i trudnymi procesami instalacji. Treść nie jest prawdziwie bare-metalowa, zamiast tego wykorzystuje warstwę abstrakcji sprzętowej. Kilka przykładów kodu jest przestarzałych lub nieprzydatnych, co prowadzi do frustracji związanej ze wskazówkami zawartymi w książce.
(na podstawie 5 opinii czytelników)
Bare Metal C: Embedded Programming for the Real World
Bare Metal C uczy programowania systemów wbudowanych przy użyciu języka programowania C. Dowiesz się, jak programy wbudowane wchodzą w bezpośrednią interakcję z gołym sprzętem, zajrzysz za kulisy kompilatora i linkera oraz poznasz funkcje C, które są ważne dla programowania zwykłych komputerów.
Bare Metal C nauczy Cię, jak programować urządzenia wbudowane za pomocą języka programowania C. Dla programistów systemów wbudowanych, którzy chcą mieć precyzyjną i pełną kontrolę nad systemem, którego używają, ta książka odsuwa zasłonę tego, co kompilator robi dla ciebie, abyś mógł zobaczyć wszystkie szczegóły tego, co dzieje się z twoim programem.
Pierwsza część książki uczy podstaw języka C za pomocą niedrogiego, powszechnie dostępnego systemu bare metal (system ewaluacyjny Nucleo Arm), który zapewnia wszystkie narzędzia potrzebne do wykonywania podstawowego programowania wbudowanego. W miarę postępów w książce dowiesz się, jak zintegrować szeregowe wejście/wyjście (I/O) i przerwania w swoich programach. Dowiesz się również, co kompilator C i linker robią za kulisami, dzięki czemu będziesz w stanie pisać bardziej wydajne programy, które maksymalizują ograniczoną pamięć. Wreszcie, dowiesz się, jak korzystać z bardziej złożonych, pamięciożernych funkcji języka C, takich jak pamięć dynamiczna, we/wy plików i liczby zmiennoprzecinkowe.
Zakres tematyczny obejmuje
⬤ Podstawowy proces tworzenia programu.
⬤ Proste programowanie GPIO (mruganie diodą LED)
⬤ Pisanie sterowników urządzeń szeregowych.
⬤ Linker i preprocesor języka C.
⬤ Instrukcje decyzyjne i sterujące.
⬤ Liczby, tablice, wskaźniki, łańcuchy i złożone typy danych.
⬤ Zmienne lokalne i procedury.
⬤ Pamięć dynamiczna.
⬤ Pliki i nieprzetworzone wejścia/wyjścia.
⬤ Liczby zmiennoprzecinkowe.
⬤ Programowanie modułowe.