Recent Posts
Recommended Literature Describing The ARM Cortex M3 Microcontroller
Posted by
onThis post is part of a series on CAN Bus and SAE J1939 Prototyping with the ARM Cortex M3 processor.
The ARM Cortex-M is a group of 32-bit RISC ARM processor cores licensed by ARM Holdings. The cores are intended for microcontroller use, and consist of the Cortex-M0, M0+, M1, M3, M4, and M7.
The ARM Cortex-M3 processor is very well suited for highly deterministic real-time applications, even for low-cost platforms, such as automotive body systems, industrial control systems, wireless networking and sensors, and many more.
Cortex-M3 microcontrollers are available from a number of semiconductor manufacturers such as Texas Instruments, Infineon, Atmel, NXP (formerly Philips), Analog Devices, Toshiba, STMicroelectronics, and more. => Read more...
The Definitive Guide to ARM® Cortex®-M3 and Cortex®-M4 Processors
by Joseph Yiu
This new edition has been fully revised and updated to include extensive information on the ARM Cortex-M4 processor, providing a complete up-to-date guide to both Cortex-M3 and Cortex-M4 processors, and which enables migration from various processor architectures to the exciting world of the Cortex-M3 and M4.
This book presents the background of the ARM architecture and outlines the features of the processors such as the instruction set, interrupt-handling and also demonstrates how to program and utilize the advanced features available such as the Memory Protection Unit (MPU).
Chapters on getting started with IAR, Keil, gcc and CooCox CoIDE tools help beginners develop program codes. Coverage also includes the important areas of software development such as using the low power features, handling information input/output, mixed language projects with assembly and C, and other advanced topics. => Read more...
Embedded Systems: Introduction to Arm® Cortex-M Microcontrollers
by Jonathan Valvano
This book, now in its fifth edition, is the first in a series of three books that teach the fundamentals of embedded systems as applied to the ARM® Cortex™-M family of microcontrollers. This fifth edition focuses on the LaunchPads based on both the TM4C123 and TM4C1294 microcontrollers. This first volume is an introduction to computers and interfacing focusing on assembly language and C programming. The second volume, Embedded Systems: Real-Time Interfacing to ARM Cortex-M Microcontrollers, focuses on hardware/software interfacing and the design of embedded systems. The third volume, Embedded Systems: Real-Time Operating Systems for ARM Cortex-M Microcontrollers, is an advanced book focusing on operating systems, high-speed interfacing, control systems, and robotics.
The third volume could also be used for professionals wishing to design or deploy a real-time operating system onto an ARM platform. This first book is an introductory book that could be used at the college level with little or no prerequisites. An embedded system is a system that performs a specific task and has a computer embedded inside. A system is comprised of components and interfaces connected together for a common purpose. This book is an introduction to embedded systems. Specific topics include microcontrollers, fixed-point numbers, the design of software in assembly language and C, elementary data structures, programming input/output including interrupts, analog to digital conversion, digital to analog conversion.
This book employs many approaches to learning. It will not include an exhaustive recapitulation of the information in data sheets. First, it begins with basic fundamentals, which allows the reader to solve new problems with new technology. Second, the book presents many detailed design examples. These examples illustrate the process of design. There are multiple structural components that assist learning. Checkpoints, with answers in the back, are short easy to answer questions providing immediate feedback while reading. Simple homework, with answers to the odd questions on the web, provides more detailed learning opportunities. The book includes an index and a glossary so that information can be searched. The most important learning experiences in a class like this are of course the laboratories. Each chapter has suggested lab assignments. More detailed lab descriptions are available on the web. Specifically for this volume, look at the lab assignments for EE319K. For Volume 2 refer to the EE445L labs, and for Volume 3, look at the lab assignments for EE445M/EE380L.6.
Posted here are Keil™ uVision® and Texas Instruments Code Composer Studio™ projects for each of the example programs in the book. You will also find data sheets and Excel spreadsheets relevant to the material in this book. The book will cover embedded systems for ARM® Cortex™-M microcontrollers with specific details on the LM3S1968, TM4C123, and TM4C1294. Most of the topics can be run on any of these microcontrollers. In these books the terms LM3S LM4F and TM4C will refer to families of microcontrollers from Texas Instruments. Although the example designed are specific for the TM4C123, it will be possible to use these books for other ARM derivatives. => Read more...
Embedded Systems: Real-Time Interfacing to Arm Cortex-M Microcontrollers
by Jonathan Valvano
This book, published July 2015 as a fifth edition 1st printing, is the second in a series of three books that teach the fundamentals of embedded systems as applied to ARM Cortex-M microcontrollers. The three books are primarily written for undergraduate electrical and computer engineering students. They could also be used for professionals learning the ARM platform. The first book Embedded Systems: Introduction to ARM Cortex-M Microcontrollers is an introduction to computers and interfacing focusing on assembly language and C programming. This second book focuses on interfacing and system-level design. The third book Embedded Systems: Real-Time Operating Systems for ARM Cortex-M Microcontrollers is an advanced book focusing on operating systems, high-speed interfacing, control systems, and robotics.
An embedded system is a system that performs a specific task and has a computer embedded inside. Topics include design, verification, hardware/software synchronization, interfacing devices to the computer, timing diagrams, real-time systems, data collection and processing, motor control, analog and digital filters, real-time signal processing, low-power design, and the internet of things. In general, the area of embedded systems is an important and growing discipline within electrical and computer engineering. The educational market of embedded system is dominated by simple microcontrollers like the PIC, 9S12, and 8051. This is because of their market share, low cost, and historical dominance. However, as problems become more complex, so must the systems that solve them. A number of embedded system paradigms must shift in order to accommodate this growth in complexity. First, the number of calculations per second will increase from about 1 million/sec to 1 billion/sec. Similarly, the number of lines of software code will also increase from thousands to millions.
Thirdly, systems will involve multiple microcontrollers supporting many simultaneous operations. Lastly, the need for system verification will continue to grow as these systems are deployed into safety critical applications. These changes are more than a simple growth in size and bandwidth. These systems must employ parallel programming, DMA synchronization, real-time operating systems, fault tolerant design, priority interrupt handling, and networking. Consequently, it will be important to provide our students with these types of design experiences. The ARM platform is both low cost and provides the high performance features required in future embedded systems. The ARM market share is currently large and growing. Furthermore, students trained on the ARM will be equipped to design systems across the complete spectrum from simple to complex.
The purpose of writing this book at this time is to bring engineering education into the 21st century. This book employs many approaches to learning. It will not include an exhaustive recapitulation of the information in data sheets. First, it begins with basic fundamentals, which allows the reader to solve new problems with new technology. Second, the book presents many detailed design examples. These examples illustrate the process of design. There are multiple structural components that assist learning.
Checkpoints, with answers in the back, are short easy to answer questions providing immediate feedback while reading. Simple homework provide more detailed learning opportunities. The book includes an index and a glossary so that information can be searched. The most important learning experience in a class like this are of course the laboratories. Each chapter has suggested lab assignments. More detailed lab descriptions are available on the web. The book will cover embedded systems for the ARM Cortex-M with specific details on the TM4C123, and TM4C1294. Although the solutions are specific for the Tiva TM4C, it will be possible to use this book for other ARM derivatives. => Read more...