دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [1 ed.]
نویسندگان: Stephen Oualline
سری:
ناشر: No Starch Press
سال نشر: 2022
تعداد صفحات: 445
زبان: Language
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 5 Mb
در صورت تبدیل فایل کتاب Bare metal C : Embedded Programming for the Real world به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب Bare metal C: برنامه نویسی جاسازی شده برای دنیای واقعی نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Title Page Copyright About the Author Introduction Part I: Embedded Programming Chapter 1: Hello World Installing GCC Downloading System Workbench for STM32 Our First Program Compiling the Program Making Mistakes Understanding the Program Adding Comments Improving the Program and Build Process The make Program Compiler Flags How the Compiler Works Behind the Scenes The Preprocessor The Compiler The Assembler The Linker Adding to Your Makefile Summary Questions Chapter 2: Introduction to the Integrated Development Environment Using System Workbench for STM32 Starting the IDE Creating Hello World Debugging the Program What the IDE Did for Us Importing the Book’s Programming Examples Summary Programming Problems Questions Chapter 3: Programming the Microcontroller The NUCLEO-F030R8 Development Board Programming and Debugging the Board Setting Up the Board Setting Up an Embedded Project Your First Embedded Program Initializing the Hardware Programming a GPIO Pin Toggling the LED Building the Completed Program Exploring the Build Process Exploring the Project Files Debugging the Application Stepping Through the Program Summary Programming Problems Questions Chapter 4: Numbers and Variables Working with Integers Declaring Variables to Hold Integers Assigning Values to Variables Initializing Variables Integer Sizes and Representations Number Representations Standard Integers Unsigned Integer Types Overflow Two’s Complement Representation in Signed Integer Types Shorthand Operators Controlling Memory-Mapped I/O Registers Using Bit Operations OR AND NOT Exclusive OR Shifting Defining the Meaning of Bits Setting the Values of Two Bits at Once Turning Off a Bit Checking the Values of Bits Summary Programming Problems Chapter 5: Decision and Control Statements The if Statement The if/else Statement Looping Statements The while Loop The for Loop Using the Button Initialization Choosing a Pulldown Circuit Getting the State of the Button Running the Program Loop Control The break Statement The continue Statement Anti-patterns The Empty while Loop Assignment in while Summary Programming Problems Chapter 6: Arrays, Pointers, and Strings Arrays Under the Hood: Pointers Array and Pointer Arithmetic Array Overflow Characters and Strings Summary Programming Problems Chapter 7: Local Variables and Procedures Local Variables Hidden Variables Procedures Stack Frames Recursion Programming Style Summary Programming Problems Chapter 8: Complex Data Types Enums Preprocessor Tricks and Enums Structures Structures in Memory Accessing Unaligned Data Structure Initialization Structure Assignment Structure Pointers Structure Naming Unions Creating a Custom Type Structures and Embedded Programming typedef Function Pointers and typedef typedef and struct Summary Programming Problems Chapter 9: Serial Output on the STM Writing a String One Character at a Time Defining Our Own putchar Serial Output A Brief History of Serial Communications Serial Hello World! UART Initialization Transmitting a Character Communicating with the Device Windows Linux and macOS Summary Programming Problems Chapter 10: Interrupts Polling vs. Interrupts Interrupts for Serial I/O Interrupt Routines Writing a String with Interrupts Program Details Interrupt Hell Using a Buffer to Increase Speed Sending Function Interrupt Routine Full Program The Problem Summary Programming Problems Chapter 11: The Linker The Linker’s Job Compilation and Linking Memory Models The Ideal C Model Nonstandard Sections The Linking Process Symbols Defined by the Linker Relocation and Linking Object Files The Linker Map Advanced Linker Usage Flash Memory for “Permanent” Storage Multiple Configuration Items Field Customization Example Firmware Upgrade Summary Programming Problems Chapter 12: The Preprocessor Simple Macros Parameterized Macros Code Macros Conditional Compilation Where Symbols Get Defined Command Line Symbols Predefined Symbols Include Files Other Preprocessor Directives Preprocessor Tricks Summary Programming Problems Part II: C for Big Machines Chapter 13: Dynamic Memory Basic Heap Allocation and Deallocation Linked Lists Adding a Node Printing the Linked List Deleting a Node Putting It All Together Dynamic Memory Problems Valgrind and the GCC Address Sanitizer Summary Programming Problems Chapter 14: Buffered File I/O The printf Function Writing the ASCII Table Writing to Predefined Files Reading Data The Evil gets Function Opening Files Binary I/O Copying a File Buffering and Flushing Closing Files Summary Programming Problems Chapter 15: Command Line Arguments and Raw I/O Command Line Arguments Raw I/O Using Raw I/O Using Binary Mode ioctl Summary Programming Problems Chapter 16: Floating-Point Numbers What Is a Floating-Point Number? Floating-Point Types Automatic Conversions Problems with Floating-Point Numbers Rounding Errors Digits of Precision Infinity, NaN, and Subnormal Numbers Implementation Alternatives Summary Programming Problems Chapter 17: Modular Programming Simple Modules Problems with the Simple Module Making the Module What Makes Good Modules Namespaces Libraries ranlib and Library Linking Deterministic vs. Nondeterministic Libraries Weak Symbols Summary Programming Problems Afterword Learn How to Write Learn How to Read Collaboration and Creative Theft Useful Open Source Tools Cppcheck Doxygen Valgrind SQLite Never Stop Learning Appendix: Project Creation Checklist Native C Project STM32 Workbench Embedded Project Index