lpcware

Bemused

Discussion created by lpcware Employee on Jun 15, 2016
Latest reply on Jun 15, 2016 by lpcware
Content originally posted in LPCWare by hangdog on Wed Jul 23 14:55:18 MST 2014
Hi all

I'm trying to get started with the USB driver in the ROM of my LPC4350 (I've a DIOLAN board here, and I'm using the GCC ARM toolchain with Olimex programmer).

My trouble is, I'm utterly bemused by the support situation. I've found that chapter 26 of the UM documents the driver. Fine, I could go with that, but I'd rather use somebody else's headers, of course. So, I find something called "USBD ROM Stack" / "usbromlib" on lpcware.com. Looks great, only I can't find anywhere to download the files, such as "mw_usbd.h". So I copy and paste them from the website, and write a script to strip off the line numbers. Looking good, until I find they include other files, such as "app_usbd_cfg.h".

Right, I think to myself, that must be part of this LPCOPEN thing I've been hearing about. Googling that filename takes me to LPCOPEN v1.03. Great. Except that when I download LPCOPEN v1.03 (lpcopen_1_03a_4370_lpcxpresso_lpclink2.zip) that file I need is nowhere to be found. Worse, the file list on the docs page says there should be two top-level folders called "applications" and "software", but the zip file has no such content. And I can find examples of USB apps, but no USB API.

Ok, I think, maybe this is all out of sync and deprecated, let's look at LPCOPEN 2.12 which as just popped up on my google. So I download it (lpcopen_2_12_lpcxpresso_hitex_eva_4350.zip), only to find the same situation. It's full of folders with various names, no order I can detect. No online docs either, and when I download the zip docs, they indicate the files should be organised into "freertos", "lpc_core", and "lpcspifilib". And they're not.

In my experience, when I'm experiencing a wall of frustration like this, it's because I'm missing some assumed knowledge. If someone could please direct me where to go to find suitable headers to access the ROM USB API, and documentation thereof, I'd be hugely grateful. If someone could point out what assumption I've been making wrongly up to now, based on my story above, I'd be curious :).

Cheers

Outcomes