
عنوان:
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
زبان
انگلیسی
فرمت
حجم
4.26MB
موضوع
Bare-Metal Programming;Embedded C