Simulating a FRDM-K64F (without peripherals).

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Simulating a FRDM-K64F (without peripherals).

1,540 Views
knoq
Contributor I


I'm relatively new to embedded development (come from the software side of things), so pardon any ignorance.

For as long as I have been developing, unit tests have been king.

Now, I find myself working on a pseudo-RTOS (the details are irrelevant) where I need to run tests to verify behavior.... but how to simulate?

I'm aware of uTasker, but for an open-source project that's basically a no-go.

I need to simulate the core itself (no peripherals, GPIO, etc) which made me think QEMU could work out as I have _lots_ of experience with it -- but Cortex-M4(f)  support seems experimental at best.

Looking around at the various RTOSes around, I see very few with true unit tests (though I could be missing something).

What do you guys use?

Thanks

0 Kudos
Reply
2 Replies

1,275 Views
Carlos_Mendoza
NXP Employee
NXP Employee

Hi Zach,

Another option might be to use the Instruction Simulator in the Keil uVision Debugger, you can find more information on this link:

Free ARM Cortex-M3 Simulation Software? | ARM Connected Community

Hope it helps!

Best Regards,

Carlos Mendoza

Technical Support Engineer

0 Kudos
Reply

1,275 Views
knoq
Contributor I

Keil also seems to be cortex-m3 only (perhaps an updated version from the one linked or that I could find).

Considering that, why use it over QEMU? It's FOSS and is rather lightweight (considering what it does).

I do sincerely appreciate the response, however.

Just seems I am out of luck and CI is no longer an option which is rather silly.

This seems to just be a large trend in embedded development; these large, monolithic IDEs/projects.
I can understand why, but coming from software engineering, it's the complete opposite.

For me, vim + GDB does 97% of everything I need to do in this workflow.

Testing is the only thing that seems to be missing from a "typical" workflow and certainly does not need all this integration.

0 Kudos
Reply