JBBoardに接続したモーター2つをRCBControllerでコントロールするテストです。
Dependencies: FatFileSystem TB6612FNG2 mbed
Fork of JBB_BTLE_Test by
usb/Utils.h@7:3ed1e36587d4, 2014-05-12 (annotated)
- Committer:
- jksoft
- Date:
- Mon May 12 14:24:35 2014 +0000
- Revision:
- 7:3ed1e36587d4
- Parent:
- 0:1ed23ab1345f
First edition
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
va009039 | 0:1ed23ab1345f | 1 | #ifndef UTILS_H |
va009039 | 0:1ed23ab1345f | 2 | #define UTILS_H |
va009039 | 0:1ed23ab1345f | 3 | typedef unsigned char u8; |
va009039 | 0:1ed23ab1345f | 4 | typedef unsigned short u16; |
va009039 | 0:1ed23ab1345f | 5 | typedef unsigned long u32; |
va009039 | 0:1ed23ab1345f | 6 | |
va009039 | 0:1ed23ab1345f | 7 | //void DelayMS(int ms); |
va009039 | 0:1ed23ab1345f | 8 | |
va009039 | 0:1ed23ab1345f | 9 | void printfBytes(const char* label,const u8* data, int len); |
va009039 | 0:1ed23ab1345f | 10 | void printHex(const u8* d, int len); |
va009039 | 0:1ed23ab1345f | 11 | |
va009039 | 0:1ed23ab1345f | 12 | #ifndef min |
va009039 | 0:1ed23ab1345f | 13 | #define min(_a,_b) ((_a) < (_b) ? (_a) : (_b)) |
va009039 | 0:1ed23ab1345f | 14 | #endif |
va009039 | 0:1ed23ab1345f | 15 | |
va009039 | 0:1ed23ab1345f | 16 | inline int LE16(const u8* d) |
va009039 | 0:1ed23ab1345f | 17 | { |
va009039 | 0:1ed23ab1345f | 18 | return d[0] | (d[1] << 8); |
va009039 | 0:1ed23ab1345f | 19 | } |
va009039 | 0:1ed23ab1345f | 20 | |
va009039 | 0:1ed23ab1345f | 21 | |
va009039 | 0:1ed23ab1345f | 22 | inline int LE24(const uint8_t* d) { |
va009039 | 0:1ed23ab1345f | 23 | return d[0] | (d[1]<<8) | (d[2] << 16); |
va009039 | 0:1ed23ab1345f | 24 | } |
va009039 | 0:1ed23ab1345f | 25 | |
va009039 | 0:1ed23ab1345f | 26 | inline int LE32(const uint8_t* d) { |
va009039 | 0:1ed23ab1345f | 27 | return d[0] |(d[1]<<8) | (d[2] << 16) |(d[3] << 24) ; |
va009039 | 0:1ed23ab1345f | 28 | } |
va009039 | 0:1ed23ab1345f | 29 | |
va009039 | 0:1ed23ab1345f | 30 | inline u32 BE32(const u8* d) |
va009039 | 0:1ed23ab1345f | 31 | { |
va009039 | 0:1ed23ab1345f | 32 | return (d[0] << 24) | (d[1] << 16) | (d[2] << 8) | d[3]; |
va009039 | 0:1ed23ab1345f | 33 | } |
va009039 | 0:1ed23ab1345f | 34 | |
va009039 | 0:1ed23ab1345f | 35 | inline void BE32(u32 n, u8* d) |
va009039 | 0:1ed23ab1345f | 36 | { |
va009039 | 0:1ed23ab1345f | 37 | d[0] = (u8)(n >> 24); |
va009039 | 0:1ed23ab1345f | 38 | d[1] = (u8)(n >> 16); |
va009039 | 0:1ed23ab1345f | 39 | d[2] = (u8)(n >> 8); |
va009039 | 0:1ed23ab1345f | 40 | d[3] = (u8)n; |
va009039 | 0:1ed23ab1345f | 41 | } |
va009039 | 0:1ed23ab1345f | 42 | |
va009039 | 0:1ed23ab1345f | 43 | inline void BE16(u32 n, u8* d) |
va009039 | 0:1ed23ab1345f | 44 | { |
va009039 | 0:1ed23ab1345f | 45 | d[0] = (u8)(n >> 8); |
va009039 | 0:1ed23ab1345f | 46 | d[1] = (u8)n; |
va009039 | 0:1ed23ab1345f | 47 | } |
va009039 | 0:1ed23ab1345f | 48 | #endif //UTILS_H |