With more than 1200 microcontrollers, STM32 is probably the most complete ARM Cortex-M platform on the market. This book aims to be the most complete guide around introducing the reader to this exciting MCU portfolio from ST Microelectronics and its official CubeHAL and STM32CubeIDE development environment.
This third edition covers Rust 1.85 and the Rust 2024 Edition in full. The new chapters on concurrency, the 2024 edition migration, GPU computing, Go integration, and Linux kernel programming show where the Rust community has moved since the second edition, and where systems programming as a discipline is heading. You might be writing your first Rust function or your hundredth production service, but I hope this book makes the language feel less like a puzzle and more like a tool you are already familiar with. That was the only goal I had when I wrote it.
"Wired Protocols in Embedded Systems" is your essential guide to understanding how wired communication works in embedded systems. From UART and SPI to I²C and CAN, this book explains the core principles, advantages, and limitations of each protocol. Whether you're an embedded engineer, firmware developer, or Arduino enthusiast, you'll gain the knowledge needed to choose and implement the right protocol for your project. After all, even in the age of AI, it is still important to improve your own intelligence.
This practical guide gives you the skills to write efficient, reliable, and scalable firmware for modern microcontrollers and connected devices. Designed for developers with a working knowledge of C++, this book bridges the gap between theory and applied embedded development.
Get started with the latest versions of Java, JavaFX, Pi4J, Spring, and so much more. Learn the power (and fun!) of experimenting with electronics. All explained in many small and easy-to-understand examples.
If you’ve ever wondered why your GPU code hits a wall long before the hardware’s limits, this book tells you why—and how to break through it.Most programmers stop where the compiler starts. They trust nvcc to make the right decisions, to manage registers, to schedule instructions, and to use memory efficiently. But the compiler doesn’t know your problem. It guesses. And in GPU computing, guessing costs performance.
Most programmers never touch the machine.They live inside frameworks. They trust kernels. They inherit latency, abstraction, and hidden behavior they do not control.And they call that “systems programming.”Bare Metal Computing With X64 — Low Level Coding of Native Instructions is for the engineer who wants authority, not convenience
This case study shows processes, tools, and methods used by embedded system developers. The book's content is derived from the author's 35 years experience developing embedded systems for major corporations. The example project is a digital trombone implemented on an mbed and Arduino compatible, NUCLEO-L432KC board from STMicroelectronics..
Descriptions, Discussion, and Selected Source Modules illustrating State Machines, Event Handlers, Message Pumps, Fibers, and Event-triggered, Interacting State Machines. A demo program can be downloaded and run on an STM32F746G_DISCO board.
Embedded security is an architecture problem, not a checklist.This book shows how to build a coherent security design for real devices: what embedded cybersecurity means, why it’s different in embedded systems (constraints, lifecycle, physical access, limited patching), and how to turn that into practical design decisions. You’ll learn threat modeling and trust boundaries, then the core mechanisms that must work together: secure boot and root of trust, key management, secure communication, and robust firmware updates. Early access: updated regularly as new chapters and examples are added. Purchasers receive updates.
The definitive guide to programming on the ESP32.
An MBSE workflow for automotive systems engineering teams — run V-model programmes on real agile sprints, with ASPICE and ISO 26262 evidence produced as you go, not reconstructed before the audit.
Ready to turn Verilog code into real hardware? FPGA Programming with Verilog takes you from digital logic basics to complete FPGA designs, with practical examples, thorough testbenches and real-world projects covering communications, video, signal processing and system-on-chip design.
Master AArch64 assembly with a practical guide that covers ARM64 fundamentals, advanced instruction sets, performance optimization, debugging, and systems programming. From your first instructions to writing efficient low-level code, this book provides the knowledge and hands-on examples you need.
Learn Lua from your first script to advanced programming techniques with a practical, hands-on guide. Whether you are building games, scripting applications, or exploring embedded systems, this book gives you the knowledge to write clean, efficient Lua code with confidence.