Andrew Irwin

74 Articles

Importance of Adequate Stack Size for Threads in Keil RTX

When developing multithreaded applications using Keil RTX, one important consideration is setting the stack size for each thread appropriately. Choosing…

Andrew Irwin 7 Min Read

End User Agreement Licence for the Cortex-M0 DesignStart Eval

The Cortex-M0 DesignStart Eval is an evaluation version of ARM's Cortex-M0 processor targeted at microcontroller applications. It allows developers to…

Andrew Irwin 5 Min Read

GNU-ARM Compiler Performance for Cortex-M0/M1

The GNU Arm Embedded Toolchain provides a complete open source toolchain for the Arm Cortex-M family of processors. The GNU…

Andrew Irwin 5 Min Read

Assessing Code Safety with GNU-ARM for Cortex-M0/M1

The GNU ARM Embedded Toolchain provides a robust set of tools for developing, testing, and debugging ARM Cortex-M0/M1 based applications.…

Andrew Irwin 7 Min Read

Bootloader Impact on Cortex-M0 PendSV Exception Handling

The ARM Cortex-M0 processor implements the PendSV exception handler to allow low priority interrupts to preempt current execution. However, the…

Andrew Irwin 8 Min Read

Step-by-Step Guide to Cortex-M0 PendSV Exception Handling

The Cortex-M0 processor implements a basic exception model with 7 exception types. The PendSV (pendable service request) exception is one…

Andrew Irwin 6 Min Read

Fixing Incorrect Vector Tables When Using a Bootloader with Cortex-M0

When developing embedded systems using the ARM Cortex-M0 processor and a bootloader, you may encounter issues with incorrect vector tables…

Andrew Irwin 6 Min Read

Cortex-M0 and Cortex-M3 Difference in Vector Table Remapping

The Cortex-M0 and Cortex-M3 are two popular ARM processor cores used in many embedded and IoT applications. Both support vector…

Andrew Irwin 7 Min Read

Saving and Restoring Registers Correctly During Context Switches on Cortex-M0

When a context switch occurs on a Cortex-M0 processor, the state of the current thread must be saved so that…

Andrew Irwin 6 Min Read

Cortex-M0 Vector Table Management with a Bootloader

The Cortex-M0 is one of ARM's smallest and simplest microcontroller cores, aimed at low-cost and low-power embedded applications. Like all…

Andrew Irwin 9 Min Read

Optimize Context Switching Performance on Cortex-M0

Context switching on Cortex-M0 microcontrollers can impact real-time performance if not optimized properly. By following best practices like minimizing the…

Andrew Irwin 5 Min Read

Bootloader causing incorrect vector table and issues with PendSV

When developing embedded systems using ARM Cortex-M processors, a common issue that can occur is the bootloader causing an incorrect…

Andrew Irwin 7 Min Read
- Sponsored-
Ad image