Hello all, I'm at instructor at a large US school who has slowly been moving into teaching embedded systems. I know very little about embedded systems in the real world (I'm more of an architect), but I've learned a lot by teaching and working with students on embedded projects.
We currently have a class that uses a combination of an MPC823 and an FPGA to do software/hardware design. It is mostly in assembly (a bit of C) and covers the details of doing memory-mapped I/O, designing the hardware devices, interrupts (in gory detail), timers and A/D stuff.
I've been trying to upgrade our embedded systems offerings and so I am offering a class next semester that is a follow-on to the current one. I've have chosen to go with two different platforms, an ARM based system from Intel (sitsang) with an OS, color touch LCD, and crazy amounts of I/O as well as an Atmel based portion (ATmega8) where the students will design (and get built) a board.
So now the questions: #1 Is there a USB chip that I could possibly talk to with the ATmega8? I'd love something I can put on a breadboard without having to solder very small wires. Looking at the student projects I'm expecting, USB may be a pretty common desire. The sitsang board does USB in its sleep, but I'd like them designing their own hardware where possible.
#2 Same as #1 but for ethernet.
#3 What do _you_ all think is important for them to know? If you were to hire one of our graduates, what specific skills would you be looking for? Are skills like being good with solder important to any/many of you? Just software?
#4 What am I missing?
More background: I'm going to teach a fair bit about how to interface with an OS (for the sitsang) and the basics of Linux drivers. I'm also going to spend a short time on the AVR architecture and interupts (which I'm still learning) as well as a bit on the basics of board design. I'm planning on having a few guest speakers come in and talk about what they do (one a WIMS person, one works for Rabbit, and maybe a Lockheed-Martin embedded person).
The major goal of the class is to give them the oppertunity to design a system (probably involving board design) of their choosing. We have a reasonable budget (thanks Lockheed-Martin!) of around $800 per group of
4 students. So we should be able to build some cool things!Answers to the above or random thoughts greatfully accepted!