Freescale ARM Cortex-M Embedded Programming (Mazidi & Naimi ARM)
The Freescale KL25Z is a popular ARM microcontroller designed and marketed by the Freescale, which is now part of NXP Corp. It comes with some powerful peripherals such as ADC, Timer, SPI, I2C, UART, and so on. Due to popularity of ARM architecture, many semiconductor design companies are moving away from proprietary architecture and adopting the ARM as the CPU of choice in all their designs. Why this book? Currently there is no other textbook for Freescale KL25Z microcontroller. This...
Fundamentals of Embedded Software: Where C and Assembly Meet
Reflecting current industrial applications and programming practice, this book lays a foundation that supports the multi-threaded style of programming and high-reliability requirements of embedded software. Using a non-product specific approach and a programming (versus hardware) perspective, it focuses on the 32-bit protected mode processors and on C as the dominant programming language--with coverage of Assembly and how it can be used in conjunction with, and support of, C. Features an...
STM32 Arm Programming for Embedded Systems (Mazidi & Naimi ARM)
This book covers the peripheral programming of the STM32 Arm chip. Throughout this book, we use C language to program the STM32F4xx chip peripherals such as I/O ports, ADCs, Timers, DACs, SPIs, I2Cs and UARTs. We use STM32F446RE NUCLEO Development Board which is based on ARM® Cortex®-M4 MCU. Volume 1 of this series is dedicated to Arm Assembly Language Programming and Architecture. See our website for other titles in this series: www.MicroDigitalEd.com You can also find the tutorials,...
The Art of Linux Kernel Design
Uses the Running Operation as the Main Thread
Difficulty in understanding an operating system (OS) lies not in the technical aspects, but in the complex relationships inside the operating systems. The Art of Linux Kernel Design: Illustrating the Operating System Design Principle and Implementation addresses this complexity. Written from the perspective of the designer of an operating system, this book tackles important issues and practical problems on how to understand an operating system...
USB: The Universal Serial Bus
Have you ever wondered how to use the USB hardware to send and receive data from an attached device? Wondered how to detect and initialize the controller, retrieve the device's descriptors, configure the device, and then communicate with it to send or retrieve its data? This book explains the ins and outs of the four major controllers, starting with the UHCI, OHCI, EHCI, and then the new Super Speed xHCI Controller. It explains in detail how to communicate with the various devices such as...
C Interfaces and Implementations: Techniques for Creating Reusable Software (Addison-Wesley Professional Computing Serie
creating reusable software modules; they are the building blocks of large, reliable applications. Unlike some modern object-oriented languages, C provides little linguistic support or motivation for creating reusable application programming interfaces (APIs). While most C programmers use APIs and the libraries that implement them in almost every application they write, relatively few programmers create and disseminate new, widely applicable APIs. C Interfaces and Implementations shows how to...
ARM A32 Assembly Language: 32-Bit ARM, Neon, VFP, Thumb
ARM A32 ASSEMBLY LANGUAGE is your hands-on guide to learning how to program in ARM machine code using the world’s most modern microprocessor. Ideal for the novice, this book will take you from first principles through to becoming a competent ARM programmer. It covers all aspects of the ARM instruction set including Thumb, Neon, Advanced SIMD and Vector Floating Point Programming. The book covers the new Unified Assembly Language (UAL) and the use of AArch32 State in the latest range of ARM...
Professional Embedded ARM Development (Wrox: Programmer to Programmer)
A practical Wrox guide to ARM programming for mobile devices With more than 90 percent of mobile phones sold in recent years using ARM-based processors, developers are eager to master this embedded technology. If you know the basics of C programming, this guide will ease you into the world of embedded ARM technology. With clear explanations of the systems common to all ARM processors and step-by-step instructions for creating an embedded application, it prepares you for this popular...
TCP/IP Sockets in C: Practical Guide for Programmers (Morgan Kaufmann Practical Guides)
TCP/IP Sockets in C: Practical Guide for Programmers, Second Edition is a quick and affordable way to gain the knowledge and skills needed to develop sophisticated and powerful web-based applications. The book's focused, tutorial-based approach enables the reader to master the tasks and techniques essential to virtually all client-server projects using sockets in C. This edition has been expanded to include new advancements such as support for IPv6 as well as detailed defensive programming...
Modern Assembly Language Programming with the ARM Processor
Modern Assembly Language Programming with the ARM Processor carefully explains the concepts of assembly language programming, slowly building from simple examples towards complex programming on bare-metal embedded systems. Considerable emphasis is put on showing how to develop good, structured assembly code.
More advanced topics, such as fixed and floating point mathematics, optimization, and the ARM VFP and NEON extensions are also covered, helping users understand representations of, and...
Writing Linux Device Drivers: Lab Solutions: a guide with exercises
This is a companion volume to Writing Linux Device Drivers, a guide with exercises, by Jerry Cooperstein, pub. 2009. While the solutions to the exercises in that volume can be obtained from http://www.coopj.com/LDD, requests for printed copies of the solutions have been encountered. There is no exposition here, only the statement of the exercises and then the actual code and necessary scripts. Writing Linux Device Drivers is designed to show experienced programmers how to develop...
Beginner's Guide to Embedded C Programming - Volume 2: Timers, Interrupts, Communication, Displays and More
If you liked his first C book "Beginner's Guide to Embedded C Programming" then you will love this one. In this "Volume 2" Chuck takes the reader to the next level by introducing how to drive displays, how to use interrupts, how to use serial communication, how to use the internal hardware peripherals of the PIC16F690 Microcontroller such as SPI, PWM and Timers. He even introduces how to drive a stepper motor for those looking for electromechanical design help. He tackles these topics with...
Designing Embedded Systems with PIC Microcontrollers: Principles and Applications
PIC microcontrollers are used worldwide in commercial and industrial devices. The 8-bit PIC which this book focuses on is a versatile work horse that completes many designs. An engineer working with applications that include a microcontroller will no doubt come across the PIC sooner rather than later. It is a must to have a working knowledge of this 8-bit technology. This book takes the novice from introduction of embedded systems through to advanced development techniques for utilizing and...
Embedded Linux Development Using Eclipse
The Eclipse environment solves the problem of having to maintain your own Integrated Development Environment (IDE), which is time consuming and costly. Embedded tools can also be easily integrated into Eclipse. The C/C++CDT is ideal for the embedded community with more than 70% of embedded developers using this language to write embedded code. Eclipse simplifies embedded system development and then eases its integration into larger platforms and frameworks. In this book, Doug Abbott...
Essential Linux Device Drivers
“Probably the most wide ranging and complete Linux device driver book I’ve read.”
--Alan Cox, Linux Guru and Key Kernel Developer
“Very comprehensive and detailed, covering almost every single Linux device driver type.”
--Theodore Ts’o, First Linux Kernel Developer in North America and Chief Platform Strategist of the Linux Foundation
The Most Practical Guide to Writing Linux Device Drivers
Practical UML Statecharts in C/C++: Event-Driven Programming for Embedded Systems
Practical UML Statecharts in C/C++ Second Edition bridges the gap between high-level abstract concepts of the Unified Modeling Language (UML) and the actual programming aspects of modern hierarchical state machines (UML statecharts). The book describes a lightweight, open source, active object (actor) framework, called QP that enables direct manual coding UML statecharts and concurrent event-driven applications in C or C++. This book is presented in two parts. In Part I, you get a practical...
MSP430 Microcontroller Basics
The MSP430 microcontroller family offers ultra-low power mixed signal, 16-bit architecture that is perfect for wireless low-power industrial and portable medical applications. This book begins with an overview of embedded systems and microcontrollers followed by a comprehensive in-depth look at the MSP430. The coverage included a tour of the microcontroller's architecture and functionality along with a review of the development environment. Start using the MSP430 armed with a complete...
Beginner's Guide To Embedded C Programming: Using The Pic Microcontroller And The Hitech Picc-Lite C Compiler (Power, Po
The C language has been covered in many books but none as dedicated to the embedded microcontroller beginner as the Beginner's Guide to Embedded C Programming. Through his down to earth style of writing Chuck Hellebuyck delivers a step by step introduction to learning how to program microcontrollers with the C language. In addition he uses a powerful C compiler that the reader can download for free in a series of hands on projects with sample code so you can learn right along with him. For...
Embedded C Coding Standard
Barr Group's Embedded C Coding Standard was developed from the ground up to minimize bugs in firmware, by focusing on practical rules that keep bugs out, while also improving the maintainability and portability of embedded software. The coding standard book details a set of guiding principles as well as specific naming conventions and other rules for the use of data types, functions, preprocessor macros, variables and much more. Individual rules that have been demonstrated to reduce or...








