کتاب برنامه‌نویسی C تعبیه‌شده Bare-Metal – ویرایش اول نوشته Israel Gbati

عنوان:

Bare-Metal Embedded C Programming

نویسنده:

Israel Gbati

انتشارات:

Packt Publishing

تاریخ انتشار

2024

حجم:

4.26MB

دانلود

معرفی کتاب: "برنامه‌نویسی C تعبیه‌شده در سطح Bare-Metal: توسعه سیستم‌های تعبیه‌شده با عملکرد بالا با استفاده از C برای میکروکنترلرهای Arm "

اگر می‌خواهید به‌جای وابستگی به کتابخانه‌های سطح بالا، واقعاً سخت‌افزار را درک کرده و از صفر فریم‌ور مخصوص خود را توسعه دهید، کتاب Bare-Metal Embedded C Programming دقیقاً همان راهنمایی است که به آن نیاز دارید. این کتاب شما را از حالت "کپی-پیست" خارج کرده و به سطحی از درک می‌رساند که می‌توانید با اعتمادبه‌نفس و از پایه کدنویسی سیستم‌های تعبیه‌شده را انجام دهید.


ویژگی‌های کلیدی:

  • رویکرد کاملاً کاربردی برای آموزش برنامه‌نویسی C سطح پایین روی میکروکنترلرها
  • درک عمیق رجیسترها، معماری سخت‌افزار و ارتباط مستقیم با دیتاشیت‌ها
  • یادگیری استخراج اطلاعات حیاتی از مستندات فنی به‌منظور تنظیم دقیق سخت‌افزار
  • توسعه فریم‌ور مستقل به‌جای استفاده از لایه‌های انتزاعی آماده
  • آموزش نگارش کدهای بهینه، سبک و قابل اطمینان برای سیستم‌های واقعی

آنچه در این کتاب خواهید آموخت:

  • رمزگشایی دیتاشیت‌ها و یافتن اطلاعات ضروری برای برنامه‌نویسی سطح پایین
  • نوشتن کدهایی که مستقیماً با رجیسترهای سخت‌افزار در تعامل هستند
  • درک عمیق از ساختار داخلی میکروکنترلرها، تایمرها، GPIO، وقفه‌ها و دیگر ماژول‌ها
  • ساخت فریم‌ورهای bare-metal اختصاصی بدون استفاده از RTOS یا لایه‌های نرم‌افزاری آماده
  • اشتباهات رایج در برنامه‌نویسی سیستم‌های تعبیه‌شده و نحوه اجتناب از آن‌ها

چرا این کتاب منحصربه‌فرد است؟

برخلاف بسیاری از منابع که روی تئوری یا ابزارهای آماده تمرکز دارند، این کتاب بر مهارت واقعی و مستقل تاکید می‌کند. شما یاد می‌گیرید چگونه به‌صورت حرفه‌ای دیتاشیت بخوانید، کدهای bare-metal بنویسید، منابع سخت‌افزاری را مدیریت کنید و بدون نیاز به چارچوب‌های از پیش‌ساخته، نرم‌افزار سفارشی خود را توسعه دهید.

مخاطب این کتاب:

  • دانشجویان رشته‌های مهندسی برق، الکترونیک و کامپیوتر
  • برنامه‌نویسان علاقه‌مند به یادگیری سیستم‌های تعبیه‌شده سطح پایین
  • توسعه‌دهندگان فریم‌ورهای صنعتی و IoT
  • مهندسان علاقه‌مند به درک عمیق سخت‌افزار بدون تکیه بر ابزارهای انتزاعی

نتیجه‌گیری:

کتاب Bare-Metal Embedded C Programming نه‌تنها یک منبع آموزشی است، بلکه یک راهنما برای ساختن ذهنی مستقل و خلاق در دنیای برنامه‌نویسی سیستم‌های تعبیه‌شده است. پس اگر می‌خواهید از ریشه برنامه‌نویس سخت‌افزار شوید، این کتاب را از دست ندهید.

فهرست مطالب

  • Cover
  • Title Page
  • Copyright and Credits
  • Foreword
  • Contributors
  • Table of Contents
  • Preface
  • Chapter 1: Setting Up the Tools of the Trade
  • Technical requirements
  • Essential development tools for microcontrollers
  • The development board
  • Datasheets and manuals – unraveling the details
  • Navigating the STM32CubeIDE
  • Understanding the control icons
  • Summary
  • Chapter 2: Constructing Peripheral Registers from Memory Addresses
  • Technical requirements
  • The different types of firmware development
  • Locating and understanding the development board’s components
  • Defining and creating registers through documentation insights
  • Register manipulation – from configuration to running your first firmware
  • Summary
  • Chapter 3: Understanding the Build Process and Exploring the GNU Toolchain
  • Technical requirements
  • The foundations – understanding the embedded build process
  • A tour of GNU binary tools for embedded systems
  • From IDE to the command line – watching the build process unfold
  • Summary
  • Chapter 4: Developing the Linker Script and Startup File
  • Technical requirements
  • Understanding the STM32 memory model
  • The linker script
  • Writing the linker script and startup file
  • Summary
  • Chapter 5: The “Make” Build System
  • Technical requirements
  • An introduction to build systems
  • The Make build system
  • Writing Makefiles for firmware projects
  • Summary
  • Chapter 6: The Common Microcontroller Software Interface Standard (CMSIS)
  • Technical requirements
  • Defining peripheral registers with C structures
  • Understanding CMSIS
  • Setting up the required CMSIS files
  • Summary
  • Chapter 7: The General-Purpose Input/Output (GPIO) Peripheral
  • Technical requirements
  • Understanding the GPIO peripheral
  • The STM32 GPIO registers
  • Developing input and output drivers
  • Summary
  • Chapter 8: System Tick (SysTick) Timer
  • Technical requirements
  • Introduction to the SysTick timer
  • Developing a driver for the SysTick timer
  • Summary
  • Chapter 9: General-Purpose Timers (TIM)
  • Technical requirements
  • Introduction to timers and their uses
  • Common use cases of timers
  • STM32 timers
  • Developing the timer driver
  • Summary
  • Chapter 10: The Universal Asynchronous Receiver/Transmitter Protocol
  • Technical requirements
  • Introduction to communication protocols
  • Overview of the UART protocol
  • Developing the UART driver
  • Summary
  • Chapter 11: Analog-to-Digital Converter (ADC)
  • Technical requirements
  • Overview of analog-to-digital conversion
  • The STM32F4 ADC peripheral
  • The key ADC registers and flags
  • Developing the ADC driver
  • Summary
  • Chapter 12: Serial Peripheral Interface (SPI)
  • Technical requirements
  • Overview of the SPI protocol
  • The STM32F4 SPI peripherals
  • Developing the SPI driver
  • Summary
  • Chapter 13: Inter-Integrated Circuit (I2C)
  • Technical requirements
  • An overview of the I2C protocol
  • The STM32F4 I2C peripherals
  • Developing the I2C driver
  • Summary
  • Chapter 14: External Interrupts and Events (EXTI)
  • Technical requirements
  • Interrupts and their role in firmware
  • The STM32 EXTI controller
  • Developing the EXTI driver
  • Summary
  • Chapter 15: The Real-Time Clock (RTC)
  • Technical requirements
  • Understanding RTCs
  • The STM32 RTC module
  • Some key RTC registers
  • Developing the RTC driver
  • Summary
  • Chapter 16: Independent Watchdog (IWDG)
  • Technical requirements
  • Understanding WDTs
  • The STM32 IWDG
  • Developing the IWDG driver
  • Summary
  • Chapter 17: Direct Memory Access (DMA)
  • Technical requirements
  • Understanding Direct Memory Access (DMA)
  • The DMA modules of the STM32F4 microcontroller
  • Developing the ADC DMA driver
  • Developing the UART DMA driver
  • Developing the DMA memory-to-memory driver
  • Summary
  • Chapter 18: Power Management and Energy Efficiency in Embedded Systems
  • Technical requirements
  • An overview of power management techniques
  • Wake-up sources and triggers from low-power modes in STM32F4
  • Developing a driver to enter standby mode and wake up
  • Index
  • Other Books You May Enjoy

مشخصات

نام کتاب

Bare-Metal Embedded C Programming

نویسنده

Israel Gbati

انتشارات

Packt Publishing

تاریخ انتشار

2024

ISBN

9781835460818

تعداد صفحات

438

زبان

انگلیسی

فرمت

pdf

حجم

4.26MB

موضوع

Bare-Metal Programming;Embedded C