Following Application Note 196, I can get a running simulation with the ADC simulated however the interrupts are not generated even thought its "DONE" flag is set. I set a break point in the interrupt handler and it is never reached. I checked that if I trigger the interrupt from the system viewer by manually setting the pending bit in the NVIC then the break point is hit. So it seems that the simulated ADC is not able to generate interrupts.
In the simulator settings, the app note says to use DLM.DLL instead of the default DCM.DLL. I tried both with the same result.
This app note is rather old, could this be a version compatibility issue ?
IDE-Version:µVision V5.28.0.0Copyright (C) 2019 ARM Ltd and ARM Germany GmbH. All rights reserved.
Tool Version Numbers:Toolchain: MDK-Lite Version: 5.28.0.0Toolchain Path: C:\Keil_v5\ARM\ARMCC\BinC Compiler: Armcc.exe V5.06 update 6 (build 750)Assembler: Armasm.exe V5.06 update 6 (build 750)Linker/Locator: ArmLink.exe V5.06 update 6 (build 750)Library Manager: ArmAr.exe V5.06 update 6 (build 750)Hex Converter: FromElf.exe V5.06 update 6 (build 750)CPU DLL: SARMCM3.DLL V5.28.0.0Dialog DLL: DCM.DLL V1.17.3.0Target DLL: UL2CM3.DLL V1.162.16.0Dialog DLL: TCM.DLL V1.36.2.0
I agree, this AppNote 196 is pretty old and presumably not compatible to our today's MDK 5.28.
At the time when that AppNote got released (May, 2010) MDK-ARM V4.11 was published.
Regarding "Simulation with MDK 5" refer to:
https://www2.keil.com/mdk5/simulation
As rkopsch suggests, nowadays, there are just so many different ARM-based chips around that it would impossible for Keil to build detailed simulations of every single model from every single manufacturer.
Also, with the easy availability of low-cost dev boards having built-in debug, the value of such simulation is greatly reduced.
Probably the best bet is to just use real hardware!
Thanks for your answer, unfortunately the link you give is leading to the same old app note 196 as far as I can see.
Unfortunately I do not have that option, I am developing new hardware IP. Using Keil simulator is very useful to benchmark the effect of a new hardware accelerator on existing applications. I would like to use it to fine tune the accelerator interface before starting RTL development.