Given that this firmware project is an enabler for a Windows device driver course, and is not an end in and of itself, I don’t want to spend more than the absolute minimum amount of time on the firmware. Therefore, I want to find some example code that is as close as possible to what I need, and hack in my changes. There just isn’t time to learn all the ins and outs of the ARM LPC1343 and write the entire USB stack myself.
I have located a lot of NXP ARM code on a variety of web sites, including that of Olimex
(each board has its own software downloads), NXP, onARM (registration required to access CMSIS sources), microBuilder.eu, and 32bitmicro. Unfortunately, each uses a different tool chain, and the tool chains appear to be incompatible; although much
of the code from NXP seems to support multiple compilers.
So, my next task is to identify an example that is close to what I need, and that will determine which tool chain I will use. Unfortunately, I haven’t found any examples that implement USB isochronous endpoints on the LPC1343. I have found some examples that do implement isochronous, but for other ARM chips with possibly different internal hardware configurations. I’m going to have to see what sort of commonality exists and
see if I can modify one of the LPC1343 examples to support isochronous. This will be a very tedious job, and I hate jobs that are tedious.