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...
Universal Serial Bus System Architecture (2nd Edition)
With USB 2.0, the USB standard for PC peripheral connectivity delivers up to 40 times the speed of USB 1.1 -- plus many other extensions, clarifications, and reliability improvements. Now's the time for professional engineers working with PC hardware and peripherals to master USB 2.0 -- and this is the book. The latest in MindShare's world-class PC System Architecture Series, Universal Serial Bus System Architecture, Second Edition teaches engineers everything they need to know to deliver...
TCP/IP Sockets in C, Second Edition: 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...
Pro Linux Embedded Systems (Expert's Voice in Linux)
Today, Linux is included with nearly every embedded platform. Embedded developers can take a more modern route and spend more time tuning Linux and taking advantage of open source code to build more robust, feature-rich applications. While Gene Sally does not neglect porting Linux to new hardware, modern embedded hardware is more sophisticated than ever: most systems include the capabilities found on desktop systems. This book is written from the perspective of a user employing technologies...
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...
Interprocess Communications in Linux: The Nooks and Crannies
Interprocess Communications in Linux explains exactly how to use Linux processes and interprocess communications to build robust, high-performance systems. Coverage includes: named/unnamed pipes, message queues, semaphores, shared memory, RPC and the rpcgen compiler, sockets-based communication, the /proc file system, LinuxThreads POSIX support, multithreading, and much more. Includes detailed exercises, plus dozens of downloadable program examples compiled with GNU C/C++ 2.96 & 3.2 and...
Handbook of Modern Sensors: Physics, Designs, and Applications
Since publication of the previous, the 3rd edition of this book, the sensor tech- logies have made a remarkable leap ahead. The sensitivity of the sensors became higher, the dimensions – smaller, the selectivity – better, and the prices – lower. What have not changed, are the fundamental principles of the sensor design. They still are governed by the laws of Nature. Arguably one of the greatest geniuses ever lived, Leonardo Da Vinci had his own peculiar way of praying. It went like...
Fast Circuit Boards: Energy Management
An essential guide to modern circuit board design based on simple physics and practical applications
The fundamentals taught in circuit theory were never intended to work above a few megahertz, let alone at a gigahertz. While electronics is grounded in physics, most engineers’ education in this area is too general and mathematical to be easily applied to the problem of high speed circuits. Left to their own devices, many engineers produce layouts that require expensive revisions in order...
Embedded Systems: ARM Programming and Optimization
The modern consumer electronics industry as we know it owes much of its success and popularity to two technologies: the ARM processor and the Linux operating system. ARM processor technology powers nearly all modern mobile devices-and most of these processors run the Linux operating system. It's no exaggeration to say that having an understanding of embedded system design and development from the context of ARM and Linux technology is an important asset in today's world.
Embedded Systems:...
Avionics Certification - Complete Guide to DO-178, DO-178C, DO-254
The second edition brings this book up to date on C, the latest version of DO-178. It describes the impact on the earlier document in the practical style of the authors, who have a combined experience of 50 years in avionics certification. The book is the result of seminars given throughout the world for over ten years. This edition is updated with new chapters on: Integrated Modular Avionics (DO-297), Software Tool Qualification (DO-330) and the complete test of the related FAA Advisory...
Embedded Android: Porting, Extending, and Customizing
Looking to port Android to other platforms such as embedded devices? This hands-on book shows you how Android works and how you can adapt it to fit your needs. You’ll delve into Android’s architecture and learn how to navigate its source code, modify its various components, and create your own version of Android for your particular device. You’ll also discover how Android differs from its Linux roots.
If you’re experienced with embedded systems development and have a good handle on...
Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance
The amount of software used in safety-critical systems is increasing at a rapid rate. At the same time, software technology is changing, projects are pressed to develop software faster and more cheaply, and the software is being used in more critical ways. Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance equips you with the information you need to effectively and efficiently develop safety-critical, life-critical, and mission-critical...
Modeling and Analysis of Real-Time and Embedded Systems with UML and MARTE: Developing Cyber-Physical Systems (The MK/OM
Modeling and Analysis of Real-Time and Embedded Systems with UML and MARTE explains how to apply the complex MARTE standard in practical situations. This approachable reference provides a handy user guide, illustrating with numerous examples how you can use MARTE to design and develop real-time and embedded systems and software.
Expert co-authors Bran Selic and Sébastien Gérard lead the team that drafted and maintain the standard and give you the tools you need apply MARTE to overcome the...
Op Amps for Everyone, Fourth Edition
Op Amps for Everyone is an indispensable guide and reference for designing circuits that are reliable, have low power consumption, and are as small and low-cost as possible. Operational amplifiers are essential in modern electronics design, and are used in medical devices, communications technology, optical networks, and sensor interfacing.
This book is informed by the authors' years of experience, wisdom and expertise, giving engineers all the methods, techniques and tricks that they need...
Understanding and Using C Pointers
Improve your programming through a solid understanding of C pointers and memory management. With this practical book, you’ll learn how pointers provide the mechanism to dynamically manipulate memory, enhance support for data structures, and enable access to hardware. Author Richard Reese shows you how to use pointers with arrays, strings, structures, and functions, using memory models throughout the book.
Difficult to master, pointers provide C with much flexibility and power—yet few...
Mastering Microcontrollers: Helped By Arduino
Arduino boards have become hugely successful. They are simple to use and inexpensive. This book will not only familiarize you with the world of Arduino but it will also teach you how to program microcontrollers in general. In this book theory is put into practice on an Arduino board using the Arduino programming environment. The author, an Elektor Expert, provides the reader with the basic theoretical knowledge necessary to program any microcontroller: inputs and outputs (analog and...
Raspberry Pi Assembly Language RASPBIAN Beginners: Hands On Guide
Raspberry Pi Assembly Language RASPBIAN Beginners is your hands-on guide to learning to program ARM machine code on your Raspberry Pi. With nothing other than the Raspbian Operating System installed on your Raspberry Pi, this book shows you how to access all the tools that you'll need to create your own machine code programs using assembly language. (A version of this book is available specifically for RISC OS - search Amazon for 'Assembly Language Beginners'.) Ideal for the novice, this...
Finite State Machines in Hardware: Theory and Design (with VHDL and SystemVerilog)
Modern, complex digital systems invariably include hardware-implemented finite state machines. The correct design of such parts is crucial for attaining proper system performance. This book offers detailed, comprehensive coverage of the theory and design for any category of hardware-implemented finite state machines. It describes crucial design problems that lead to incorrect or far from optimal implementation...
Getting Started with BeagleBone: Linux-Powered Electronic Projects With Python and JavaScript
Many people think of Linux as a computer operating system, running on users' desktops and powering servers. But Linux can also be found inside many consumer electronics devices. Whether they're the brains of a cell phone, cable box, or exercise bike, embedded Linux systems blur the distinction between computer and device. Many makers love microcontroller platforms such as Arduino, but as the complexity increases in their projects, they need more power for applications, such as computer...







