Hands-On RTOS with Microcontrollers

Hands-On RTOS with Microcontrollers
Author :
Publisher : Packt Publishing Ltd
Total Pages : 479
Release :
ISBN-10 : 9781838829285
ISBN-13 : 1838829288
Rating : 4/5 (85 Downloads)

Synopsis Hands-On RTOS with Microcontrollers by : Brian Amos

Build a strong foundation in designing and implementing real-time systems with the help of practical examples Key Features Get up and running with the fundamentals of RTOS and apply them on STM32 Enhance your programming skills to design and build real-world embedded systems Get to grips with advanced techniques for implementing embedded systems Book DescriptionA real-time operating system (RTOS) is used to develop systems that respond to events within strict timelines. Real-time embedded systems have applications in various industries, from automotive and aerospace through to laboratory test equipment and consumer electronics. These systems provide consistent and reliable timing and are designed to run without intervention for years. This microcontrollers book starts by introducing you to the concept of RTOS and compares some other alternative methods for achieving real-time performance. Once you've understood the fundamentals, such as tasks, queues, mutexes, and semaphores, you'll learn what to look for when selecting a microcontroller and development environment. By working through examples that use an STM32F7 Nucleo board, the STM32CubeIDE, and SEGGER debug tools, including SEGGER J-Link, Ozone, and SystemView, you'll gain an understanding of preemptive scheduling policies and task communication. The book will then help you develop highly efficient low-level drivers and analyze their real-time performance and CPU utilization. Finally, you'll cover tips for troubleshooting and be able to take your new-found skills to the next level. By the end of this book, you'll have built on your embedded system skills and will be able to create real-time systems using microcontrollers and FreeRTOS.What you will learn Understand when to use an RTOS for a project Explore RTOS concepts such as tasks, mutexes, semaphores, and queues Discover different microcontroller units (MCUs) and choose the best one for your project Evaluate and select the best IDE and middleware stack for your project Use professional-grade tools for analyzing and debugging your application Get FreeRTOS-based applications up and running on an STM32 board Who this book is for This book is for embedded engineers, students, or anyone interested in learning the complete RTOS feature set with embedded devices. A basic understanding of the C programming language and embedded systems or microcontrollers will be helpful.

Hands-On RTOS with Microcontrollers

Hands-On RTOS with Microcontrollers
Author :
Publisher :
Total Pages : 0
Release :
ISBN-10 : 1803237724
ISBN-13 : 9781803237725
Rating : 4/5 (24 Downloads)

Synopsis Hands-On RTOS with Microcontrollers by : Brian Amos

Hands-On Embedded Programming with C++17

Hands-On Embedded Programming with C++17
Author :
Publisher : Packt Publishing Ltd
Total Pages : 442
Release :
ISBN-10 : 9781788834322
ISBN-13 : 1788834321
Rating : 4/5 (22 Downloads)

Synopsis Hands-On Embedded Programming with C++17 by : Maya Posch

Build safety-critical and memory-safe stand-alone and networked embedded systems Key FeaturesKnow how C++ works and compares to other languages used for embedded developmentCreate advanced GUIs for embedded devices to design an attractive and functional UIIntegrate proven strategies into your design for optimum hardware performanceBook Description C++ is a great choice for embedded development, most notably, because it does not add any bloat, extends maintainability, and offers many advantages over different programming languages. Hands-On Embedded Programming with C++17 will show you how C++ can be used to build robust and concurrent systems that leverage the available hardware resources. Starting with a primer on embedded programming and the latest features of C++17, the book takes you through various facets of good programming. You’ll learn how to use the concurrency, memory management, and functional programming features of C++ to build embedded systems. You will understand how to integrate your systems with external peripherals and efficient ways of working with drivers. This book will also guide you in testing and optimizing code for better performance and implementing useful design patterns. As an additional benefit, you will see how to work with Qt, the popular GUI library used for building embedded systems. By the end of the book, you will have gained the confidence to use C++ for embedded programming. What you will learnChoose the correct type of embedded platform to use for a projectDevelop drivers for OS-based embedded systemsUse concurrency and memory management with various microcontroller units (MCUs)Debug and test cross-platform code with LinuxImplement an infotainment system using a Linux-based single board computerExtend an existing embedded system with a Qt-based GUICommunicate with the FPGA side of a hybrid FPGA/SoC systemWho this book is for If you want to start developing effective embedded programs in C++, then this book is for you. Good knowledge of C++ language constructs is required to understand the topics covered in the book. No knowledge of embedded systems is assumed.

Real-Time C++

Real-Time C++
Author :
Publisher : Springer
Total Pages : 441
Release :
ISBN-10 : 9783662567180
ISBN-13 : 3662567180
Rating : 4/5 (80 Downloads)

Synopsis Real-Time C++ by : Christopher Kormanyos

With this book, Christopher Kormanyos delivers a highly practical guide to programming real-time embedded microcontroller systems in C++. It is divided into three parts plus several appendices. Part I provides a foundation for real-time C++ by covering language technologies, including object-oriented methods, template programming and optimization. Next, part II presents detailed descriptions of a variety of C++ components that are widely used in microcontroller programming. It details some of C++’s most powerful language elements, such as class types, templates and the STL, to develop components for microcontroller register access, low-level drivers, custom memory management, embedded containers, multitasking, etc. Finally, part III describes mathematical methods and generic utilities that can be employed to solve recurring problems in real-time C++. The appendices include a brief C++ language tutorial, information on the real-time C++ development environment and instructions for building GNU GCC cross-compilers and a microcontroller circuit. For this third edition, the most recent specification of C++17 in ISO/IEC 14882:2017 is used throughout the text. Several sections on new C++17 functionality have been added, and various others reworked to reflect changes in the standard. Also several new sample projects are introduced and existing ones extended, and various user suggestions have been incorporated. To facilitate portability, no libraries other than those specified in the language standard itself are used. Efficiency is always in focus and numerous examples are backed up with real-time performance measurements and size analyses that quantify the true costs of the code down to the very last byte and microsecond. The target audience of this book mainly consists of students and professionals interested in real-time C++. Readers should be familiar with C or another programming language and will benefit most if they have had some previous experience with microcontroller electronics and the performance and size issues prevalent in embedded systems programming.

Beginning STM32

Beginning STM32
Author :
Publisher : Apress
Total Pages : 418
Release :
ISBN-10 : 9781484236246
ISBN-13 : 1484236246
Rating : 4/5 (46 Downloads)

Synopsis Beginning STM32 by : Warren Gay

Using FreeRTOS and libopencm3 instead of the Arduino software environment, this book will help you develop multi-tasking applications that go beyond Arduino norms. In addition to the usual peripherals found in the typical Arduino device, the STM32 device includes a USB controller, RTC (Real Time Clock), DMA (Direct Memory Access controller), CAN bus and more. Each chapter contains clear explanations of the STM32 hardware capabilities to help get you started with the device, including GPIO and several other ST Microelectronics peripherals like USB and CAN bus controller. You’ll learn how to download and set up the libopencm3 + FreeRTOS development environment, using GCC. With everything set up, you’ll leverage FreeRTOS to create tasks, queues, and mutexes. You’ll also learn to work with the I2C bus to add GPIO using the PCF8574 chip. And how to create PWM output for RC control using hardware timers. You'll be introduced to new concepts that are necessary to master the STM32, such as how to extend code with GCC overlays using an external Winbond ​W25Q32 flash chip. Your knowledge is tested at the end of each chapter with exercises. Upon completing this book, you’ll be ready to work with any of the devices in the STM32 family. Beginning STM32 provides the professional, student, or hobbyist a way to learn about ARM without costing an arm! What You'll Learn Initialize and use the libopencm3 drivers and handle interrupts Use DMA to drive a SPI based OLED displaying an analog meter Read PWM from an RC control using hardware timers Who This Book Is For Experienced embedded engineers, students, hobbyists and makers wishing to explore the ARM architecture, going beyond Arduino limits.

Embedded RTOS Design

Embedded RTOS Design
Author :
Publisher : Newnes
Total Pages : 384
Release :
ISBN-10 : 9780128228524
ISBN-13 : 0128228520
Rating : 4/5 (24 Downloads)

Synopsis Embedded RTOS Design by : Colin Walls

Embedded RTOS Design: Insights and Implementation combines explanations of RTOS concepts with detailed, practical implementation. It gives a detailed description of the implementation of a basic real-time kernel designed to be limited in scope and simple to understand, which could be used for a real design of modest complexity. The kernel features upward-compatibility to a commercial real-time operating system: Nucleus RTOS. Code is provided which can be used without restriction. Gain practical information on: - Scheduling, preemption, and interrupts - Information flow (queues, semaphores, etc.) and how they work - Signaling between tasks (signals, events, etc.) - Memory management (Where does each task get its stack from? What happens if the stack overflows?) - The CPU context: storage and retrieval after a context switch With this book you will be able to: - Utilize a basic real-time kernel to develop your own prototype - Design RTOS features - Understand the facilities of a commercial RTOS - Explains the principles of RTOS and shows their practical implementation - Demonstrates how to prototype a real-time design - Code is fully available for free use

ARM-Based Microcontroller Multitasking Projects

ARM-Based Microcontroller Multitasking Projects
Author :
Publisher : Newnes
Total Pages : 520
Release :
ISBN-10 : 9780128226315
ISBN-13 : 0128226315
Rating : 4/5 (15 Downloads)

Synopsis ARM-Based Microcontroller Multitasking Projects by : Dogan Ibrahim

Most microcontroller-based applications nowadays are large, complex, and may require several tasks to share the MCU in multitasking applications. Most modern high-speed microcontrollers support multitasking kernels with sophisticated scheduling algorithms so that many complex tasks can be executed on a priority basis. ARM-based Microcontroller Multitasking Projects: Using the FreeRTOS Multitasking Kernel explains how to multitask ARM Cortex microcontrollers using the FreeRTOS multitasking kernel. The book describes in detail the features of multitasking operating systems such as scheduling, priorities, mailboxes, event flags, semaphores etc. before going onto present the highly popular FreeRTOS multitasking kernel. Practical working real-time projects using the highly popular Clicker 2 for STM32 development board (which can easily be transferred to other boards) together with FreeRTOS are an essential feature of this book. Projects include: LEDs flashing at different rates; Refreshing of 7-segment LEDs; Mobile robot where different sensors are controlled by different tasks; Multiple servo motors being controlled independently; Multitasking IoT project; Temperature controller with independent keyboard entry; Random number generator with 3 tasks: live, generator, display; home alarm system; car park management system, and many more. - Explains the basic concepts of multitasking - Demonstrates how to create small multitasking programs - Explains how to install and use the FreeRTOS on an ARM Cortex processor - Presents structured real-world projects that enables the reader to create their own

DIY Microcontroller Projects for Hobbyists

DIY Microcontroller Projects for Hobbyists
Author :
Publisher : Packt Publishing Ltd
Total Pages : 320
Release :
ISBN-10 : 9781800569522
ISBN-13 : 1800569521
Rating : 4/5 (22 Downloads)

Synopsis DIY Microcontroller Projects for Hobbyists by : Miguel Angel Garcia-Ruiz

A practical guide to building PIC and STM32 microcontroller board applications with C and C++ programming Key FeaturesDiscover how to apply microcontroller boards in real life to create interesting IoT projectsCreate innovative solutions to help improve the lives of people affected by the COVID-19 pandemicDesign, build, program, and test microcontroller-based projects with the C and C++ programming languageBook Description We live in a world surrounded by electronic devices, and microcontrollers are the brains of these devices. Microcontroller programming is an essential skill in the era of the Internet of Things (IoT), and this book helps you to get up to speed with it by working through projects for designing and developing embedded apps with microcontroller boards. DIY Microcontroller Projects for Hobbyists are filled with microcontroller programming C and C++ language constructs. You'll discover how to use the Blue Pill (containing a type of STM32 microcontroller) and Curiosity Nano (containing a type of PIC microcontroller) boards for executing your projects as PIC is a beginner-level board and STM-32 is an ARM Cortex-based board. Later, you'll explore the fundamentals of digital electronics and microcontroller board programming. The book uses examples such as measuring humidity and temperature in an environment to help you gain hands-on project experience. You'll build on your knowledge as you create IoT projects by applying more complex sensors. Finally, you'll find out how to plan for a microcontroller-based project and troubleshoot it. By the end of this book, you'll have developed a firm foundation in electronics and practical PIC and STM32 microcontroller programming and interfacing, adding valuable skills to your professional portfolio. What you will learnGet to grips with the basics of digital and analog electronicsDesign, build, program, and test a microcontroller-based systemUnderstand the importance and applications of STM32 and PIC microcontrollersDiscover how to connect sensors to microcontroller boardsFind out how to obtain sensor data via codingUse microcontroller boards in real life and practical projectsWho this book is for This STM32 PIC microcontroller book is for students, hobbyists, and engineers who want to explore the world of embedded systems and microcontroller programming. Beginners, as well as more experienced users of digital electronics and microcontrollers, will also find this book useful. Basic knowledge of digital circuits and C and C++ programming will be helpful but not necessary.

ARM® Cortex® M4 Cookbook

ARM® Cortex® M4 Cookbook
Author :
Publisher : Packt Publishing Ltd
Total Pages : 296
Release :
ISBN-10 : 9781782176510
ISBN-13 : 1782176519
Rating : 4/5 (10 Downloads)

Synopsis ARM® Cortex® M4 Cookbook by : Dr. Mark Fisher

Over 50 hands-on recipes that will help you develop amazing real-time applications using GPIO, RS232, ADC, DAC, timers, audio codecs, graphics LCD, and a touch screen About This Book This book focuses on programming embedded systems using a practical approach Examples show how to use bitmapped graphics and manipulate digital audio to produce amazing games and other multimedia applications The recipes in this book are written using ARM's MDK Microcontroller Development Kit which is the most comprehensive and accessible development solution Who This Book Is For This book is aimed at those with an interest in designing and programming embedded systems. These could include electrical engineers or computer programmers who want to get started with microcontroller applications using the ARM Cortex-M4 architecture in a short time frame. The book's recipes can also be used to support students learning embedded programming for the first time. Basic knowledge of programming using a high level language is essential but those familiar with other high level languages such as Python or Java should not have too much difficulty picking up the basics of embedded C programming. What You Will Learn Use ARM's uVision MDK to configure the microcontroller run time environment (RTE), create projects and compile download and run simple programs on an evaluation board. Use and extend device family packs to configure I/O peripherals. Develop multimedia applications using the touchscreen and audio codec beep generator. Configure the codec to stream digital audio and design digital filters to create amazing audio effects. Write multi-threaded programs using ARM's real time operating system (RTOS). Write critical sections of code in assembly language and integrate these with functions written in C. Fix problems using ARM's debugging tool to set breakpoints and examine variables. Port uVision projects to other open source development environments. In Detail Embedded microcontrollers are at the core of many everyday electronic devices. Electronic automotive systems rely on these devices for engine management, anti-lock brakes, in car entertainment, automatic transmission, active suspension, satellite navigation, etc. The so-called internet of things drives the market for such technology, so much so that embedded cores now represent 90% of all processor's sold. The ARM Cortex-M4 is one of the most powerful microcontrollers on the market and includes a floating point unit (FPU) which enables it to address applications. The ARM Cortex-M4 Microcontroller Cookbook provides a practical introduction to programming an embedded microcontroller architecture. This book attempts to address this through a series of recipes that develop embedded applications targeting the ARM-Cortex M4 device family. The recipes in this book have all been tested using the Keil MCBSTM32F400 board. This board includes a small graphic LCD touchscreen (320x240 pixels) that can be used to create a variety of 2D gaming applications. These motivate a younger audience and are used throughout the book to illustrate particular hardware peripherals and software concepts. C language is used predominantly throughout but one chapter is devoted to recipes involving assembly language. Programs are mostly written using ARM's free microcontroller development kit (MDK) but for those looking for open source development environments the book also shows how to configure the ARM-GNU toolchain. Some of the recipes described in the book are the basis for laboratories and assignments undertaken by undergraduates. Style and approach The ARM Cortex-M4 Cookbook is a practical guide full of hands-on recipes. It follows a step-by-step approach that allows you to find, utilize and learn ARM concepts quickly.

Microcontroller Projects in C for the 8051

Microcontroller Projects in C for the 8051
Author :
Publisher : Newnes
Total Pages : 190
Release :
ISBN-10 : 0750646403
ISBN-13 : 9780750646406
Rating : 4/5 (03 Downloads)

Synopsis Microcontroller Projects in C for the 8051 by : Dogan Ibrahim

This book is a thoroughly practical way to explore the 8051 and discover C programming through project work. Through graded projects, Dogan Ibrahim introduces the reader to the fundamentals of microelectronics, the 8051 family, programming in C, and the use of a C compiler. The specific device used for examples is the AT89C2051 - a small, economical chip with re-writable memory, readily available from the major component suppliers. A working knowledge of microcontrollers, and how to program them, is essential for all students of electronics. In this rapidly expanding field many students and professionals at all levels need to get up to speed with practical microcontroller applications. Their rapid fall in price has made microcontrollers the most exciting and accessible new development in electronics for years - rendering them equally popular with engineers, electronics hobbyists and teachers looking for a fresh range of projects. Microcontroller Projects in C for the 8051 is an ideal resource for self-study as well as providing an interesting, enjoyable and easily mastered alternative to more theoretical textbooks. Practical projects that enable students and practitioners to get up and running straight away with 8051 microcontrollers A hands-on introduction to practical C programming A wealth of project ideas for students and enthusiasts