July 31 - Day 3: Assembly Language for MCUs
Continuing Education Center 7/31/2013 376 comments Now that the target MCU hardware and execution processes are understood, a detailed look at Assembly language is needed. This class will dig into the details of Assembly as a software development vehicle. Several simple examples will show the advantages and disadvantages of using Assembly language for programming MCUs.
July 30 - Day 2: An MCU as a Software Target
Continuing Education Center 7/30/2013 436 comments Once the fundamental building blocks of the MCU are understood, the way in which a program is processed by the MCU can be considered. This class will cover CPU-related concepts such as pipelining, caches, instruction efficiency, and floating point implementation so various MCU architectures can be more easily compared.
July 29 - Day 1: An Introduction to MCU Architecture
Continuing Education Center 7/29/2013 498 comments MCUs provide an impressive set of hardware features over which the designer "pours" the software design. This class will provide an understanding of the key hardware elements inside the processing block of the MCU so we can better understand how a software description is converted into MCU operations.
July 19 - Day 5: Signaling, Inter-Task Communications and Debugging
Continuing Education Center 7/19/2013 254 comments In this class, we’ll show some of the mechanisms provided by a kernel to allow ISRs and Tasks to signal and send messages to other tasks. Debugging with a kernel can be challenging and we’ll briefly describe techniques and tools you can use to visualize your application. This session will end with a brief summary of what we’ve covered.
July 18 - Day 4: Time and Resource Management
Continuing Education Center 7/18/2013 251 comments Most kernels require the presence of a periodic time source called a ‘Clock Tick’. We’ll look at what this is used for and whether it’s mandatory. We’ll also look at the mechanisms provided by a kernel that provide mutual exclusion to shared resources.
July 16 - Day 2: Task Management
Continuing Education Center 7/16/2013 368 comments This class will explain one of the most important aspects of a real-time kernel: task (or thread) management. Here you will learn what a task is and how a real-time kernel knows about how you want it to manage your tasks.
July 15 - Day 1: What is a Real-Time Kernel?
Continuing Education Center 7/15/2013 409 comments A real-time kernel is software that allows you to better manage the allocation of resources available in most of today’s 8-, 16-, 32- and 64-bit processor-based embedded systems. This first class will explain the differences between a "Super Loop" and a real-time kernel.
For industrial control applications, or even a simple assembly line, that machine can go almost 24/7 without a break. But what happens when the task is a little more complex? That’s where the “smart” machine would come in. The smart machine is one that has some simple (or complex in some cases) processing capability to be able to adapt to changing conditions. Such machines are suited for a host of applications, including automotive, aerospace, defense, medical, computers and electronics, telecommunications, consumer goods, and so on. This discussion will examine what’s possible with smart machines, and what tradeoffs need to be made to implement such a solution.