
Understand how 32-bit processors use register banks and a data path with the ALU, leading to memory addressing up to 4.2 gigabytes.
Explore the Cortex-M family of 32-bit processors, from M3 to M7, highlighting energy efficiency, digital signal control, floating point support, a flexible memory system, and 240 interrupt sources.
Explore the difference between microprocessors and microcontrollers, focusing on how processors provide computation power while microcontrollers integrate memory (ROM and RAM) and interfaces into a single system.
Explore the arm cortex-m program status register (psr) and its apsr, ipsr, and epsr components, and see how bit ranges like 0-8 and 27-31 map to these subregisters.
Inspect the source code for a Cortex-M assembly program, examining directives, port initialization, and a loop, and understand how initialization and returns enable turning on the light.
Export assembly directives to make the program callable from C, using dot text and export commands. Initialize gpio port f by loading the system clock address and enabling the port.
Master logical operations in ARM Cortex-M assembly, including and, or, and exclusive or, with bit enablement, binary-hex conversions, and register addressing using base and offsets; learn symbolic names via equ.
Create a looping subroutine in ARM Cortex-M assembly using labels and data and destination registers to control a light, then verify reset handler and main start for Project 1 final.
Add a button input to the Arm Cortex-M assembly project, enable pull-up, unlock registers, and turn on the red led.
Implement conditional logic for two input switches using compare instructions to set red or green, then compile and download to the board, with a color-mixing homework toward white.
Learn how to write a C function and import it into assembly, enabling peripheral access such as lcd controls and calling the function from assembly with a practical add-a-number example.
Develop a blinky program for the sdm 32 board in arm cortex-m assembly, configuring rcc and gpiod, enabling pins, and looping green, blue, red, and orange LEDs with timed delays.
Explore the STM32F4-Discovery board, featuring a microcontroller with 512 kilobyte flash memory, built-in accelerometer and magnetometer, audio sensor, USB connectivity, an on-board debugger, and user and reset buttons.
This course assumes no prior knowledge of assembly programming. All it requires from students is curiosity.The course covers the ARM instruction set architecture , assembly syntax and programming and provides bonus chapters on introduction to the ARM Cortex-M. The main aim of this course is to provide learners with practical skills and a strong foundation to be able to build upon to start producing well written code with a good blend of assembly and C.