I would like my son to learn ARM assembler, and I'm considering buying him an embedded system that he can program so he can make LEDs flash and other cool stuff that I got a kick out of as a kid. Are there any emulated or virtual "workbenches" that offer this type of programming environment on the PC without using actual hardware? I'm keen to get him started with ARM as these chips seem to be in all the new devices such as phones etc.
Try QEMU!
It's free and you can install Ubuntu or Debian linux on the simulated ARM core. Running naked code is possible as well (also much less fun).
As far as I know it does ARMv5, ARMv6 and Cortex-A8, so you have a broad range of cheap to high end ARM processors to choose from.
Best of it: Once your code works in the emulated environment you can just move the entire firesystem to flash or SD-card on a real hardware system. The kernel will take care about 90% of the hardware-differences. That will only work if you decide to run linux on the ARM of course.
Highly recommended.
You may also be interested in an easy to use and cheap ARM system on a module system. Imho there is nothing better than working with a real piece of hardware. A naked board that you can plug cables into and have real LED's blinking. In this case I suggest you take a look at the beagleboard.
Getting into embedded programming has never been cheaper. (www.beagleboard.org)
Hmm, this doesn't answer your question, but still: HP50g calculator has an ARM processor, and you can use hpgcc to write programs in C (and, consequently, ASM) for ARM. Not to mention that HP 50g is an extremely powerful and useful piece of hardware; who knows it might even get your son interested in math :) The C library supplied with hpgcc has routines for screen drawing and producing sounds, so it's also possible to do something "fun".
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With