Return to Portfoliowebase.top / projects / stm32-nursing-robot
Completed2025Role: Embedded Assembly Programmer

STM32 Nursing Robot

Low-Level Assembly Implementation on ARM Microcontroller

An academic embedded systems project featuring a simulated nursing robot with multi-function physiological monitoring (heart-rate sensing and dialysis/kidney-wash cycle simulation) coded in ARM assembly on STM32.

1. The Engineering Problem

High-level languages like C/C++ abstract away processor pipeline mechanics, register allocation, and cycle-exact timing. The academic challenge was building medical assistant robot functions directly in assembly language on an STM32 ARM microcontroller.

2. What Was Built

An STM32 embedded controller programmed in assembly language to coordinate multi-mode medical assistance: heart rate calculation loops, dialysis/kidney-wash timing simulation, and status alerting via hardware registers.

3. System Architecture & Topology

ASCII Topology

Direct register-level execution: ARM assembly code directly configures STM32 GPIO and timer peripheral control registers.

STM32 ARM Cortex-M Microcontroller
  - Direct Register Configuration (RCC, GPIO, TIM)
  - Assembly Language Routines:
      * Heart Rate Measurement Subroutine
      * Dialysis / Kidney-Wash Timing Sequence
      * LED / Actuator Status Signaling

4. Mohamed's Personal Implementation

Wrote low-level assembly language routines directly targeting STM32 registers in Keil MDK.
Implemented timing loops and state transitions for simulated medical assistance routines.
Configured peripheral clock gating and GPIO pin modes using direct memory-mapped register manipulation.

5. Engineering Challenges & Solutions

Challenge: Precision Timing in Assembly Without OS Schedulers
Solution: Calculated clock cycle execution counts per instruction branch to construct accurate microsecond and millisecond delay loops for medical sensor simulation.
Impact: Deterministic, cycle-accurate routine execution.

6. Technology Stack

Hardware
STM32 MicrocontrollerARM Cortex-M Architecture
Toolchain
ARM Assembly LanguageKeil MDK / uVisionEmbedded Registers

7. Verified Outcomes

  • •Verified low-level mastery of microcontroller internals and memory-mapped hardware.
  • •Validated academic project requirements for embedded healthcare robotics.