SimulIDE relies on QEMU for ARM instruction emulation and implements peripherals natively. Supported peripherals include:
Here is a bare-metal register configuration example written in standard C to blink an LED on pin PA0: simulide stm32 full
SimulIDE goes beyond simple digital input/output (GPIO). You can simulate complete protocols. Analog to Digital Conversion (ADC) SimulIDE relies on QEMU for ARM instruction emulation