I'm putting together a new university-level assembly language/systems course.
- I'm keen to use ARM32, since ARM is extremely relevant, and there are many boards to choose from
- I want to give all the students their own board to hack on (budget ~$30 each) since in my experience having something that's yours gives you ownership and buy-in to the course
- getting a dev environment set up (including hardware debugging) should be pretty painless, and ideally cross-platform so that they can muck around on their own laptops without needing dual-boot/VMs
- I want a pony (yep, I realise some of these goals are at odds with each other and tradeoffs must be made)
I don't need lots of on-board functionality (or compatibility with daughterboards, etc) since I just want to teach the basics.
Some options in the mix (although they don't all play nicely together) are:
- STM32 discovery or Nucleo boards
- the mbed cloud IDE
- BBC micro:bit hardware
- GNU ARM Eclipse for a cross-platform IDE
- Keil uVision for IDE (and just go Windows-only)
I know that most folks don't write bare asm for these boards these days, but since the purpose is to teach the basics with a real-world flavour it seems like it'd be a nice way to go.
Anyway, sorry for the long & open-ended question, any comments and suggestions are welcome.