Peter Barrett氏のBlueUSBにMIDI USB HOST機能を加えたサンプルプログラムです。KORG nanoKEYなどのUSB MIDIストリームをシリアルMIDI(Serial TX p9)にブリッジします。動作確認はKORG nanoKEY、AKAI LPK-25、EDIROL PC-50のみです。

Dependencies:   mbed

Committer:
radiojunkbox
Date:
Fri May 11 10:05:40 2012 +0000
Revision:
0:79620c558b0c
Rev. 1.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
radiojunkbox 0:79620c558b0c 1
radiojunkbox 0:79620c558b0c 2 typedef unsigned char u8;
radiojunkbox 0:79620c558b0c 3 typedef unsigned short u16;
radiojunkbox 0:79620c558b0c 4 typedef unsigned long u32;
radiojunkbox 0:79620c558b0c 5
radiojunkbox 0:79620c558b0c 6 void DelayMS(int ms);
radiojunkbox 0:79620c558b0c 7
radiojunkbox 0:79620c558b0c 8 void printfBytes(const char* label,const u8* data, int len);
radiojunkbox 0:79620c558b0c 9 void printHex(const u8* d, int len);
radiojunkbox 0:79620c558b0c 10
radiojunkbox 0:79620c558b0c 11 #ifndef min
radiojunkbox 0:79620c558b0c 12 #define min(_a,_b) ((_a) < (_b) ? (_a) : (_b))
radiojunkbox 0:79620c558b0c 13 #endif
radiojunkbox 0:79620c558b0c 14
radiojunkbox 0:79620c558b0c 15 inline int LE16(const u8* d)
radiojunkbox 0:79620c558b0c 16 {
radiojunkbox 0:79620c558b0c 17 return d[0] | (d[1] << 8);
radiojunkbox 0:79620c558b0c 18 }
radiojunkbox 0:79620c558b0c 19
radiojunkbox 0:79620c558b0c 20 inline u32 BE32(const u8* d)
radiojunkbox 0:79620c558b0c 21 {
radiojunkbox 0:79620c558b0c 22 return (d[0] << 24) | (d[1] << 16) | (d[2] << 8) | d[3];
radiojunkbox 0:79620c558b0c 23 }
radiojunkbox 0:79620c558b0c 24
radiojunkbox 0:79620c558b0c 25 inline void BE32(u32 n, u8* d)
radiojunkbox 0:79620c558b0c 26 {
radiojunkbox 0:79620c558b0c 27 d[0] = (u8)(n >> 24);
radiojunkbox 0:79620c558b0c 28 d[1] = (u8)(n >> 16);
radiojunkbox 0:79620c558b0c 29 d[2] = (u8)(n >> 8);
radiojunkbox 0:79620c558b0c 30 d[3] = (u8)n;
radiojunkbox 0:79620c558b0c 31 }
radiojunkbox 0:79620c558b0c 32
radiojunkbox 0:79620c558b0c 33 inline void BE16(u32 n, u8* d)
radiojunkbox 0:79620c558b0c 34 {
radiojunkbox 0:79620c558b0c 35 d[0] = (u8)(n >> 8);
radiojunkbox 0:79620c558b0c 36 d[1] = (u8)n;
radiojunkbox 0:79620c558b0c 37 }