This is the David Smart RA8875 Library with mods for working with FRDM-K64F
Diff: RA8875_Touch_FT5206.cpp
- Revision:
- 197:853d08e2fb53
- Parent:
- 181:0032d1b8f5d4
--- a/RA8875_Touch_FT5206.cpp Tue Feb 11 21:26:59 2020 +0000 +++ b/RA8875_Touch_FT5206.cpp Tue Feb 11 21:51:42 2020 +0000 @@ -7,9 +7,9 @@ // INFO("Stuff to show %d", var); // new-line is automatically appended // #if (defined(DEBUG) && !defined(TARGET_LPC11U24)) -#define INFO(x, ...) std::printf("[INF %s %4d] "x"\r\n", DEBUG, __LINE__, ##__VA_ARGS__); -#define WARN(x, ...) std::printf("[WRN %s %4d] "x"\r\n", DEBUG, __LINE__, ##__VA_ARGS__); -#define ERR(x, ...) std::printf("[ERR %s %4d] "x"\r\n", DEBUG, __LINE__, ##__VA_ARGS__); +#define INFO(x, ...) std::printf("[INF %s %4d] " x "\r\n", DEBUG, __LINE__, ##__VA_ARGS__); +#define WARN(x, ...) std::printf("[WRN %s %4d] " x "\r\n", DEBUG, __LINE__, ##__VA_ARGS__); +#define ERR(x, ...) std::printf("[ERR %s %4d] " x "\r\n", DEBUG, __LINE__, ##__VA_ARGS__); static void HexDump(const char * title, const uint8_t * p, int count) { int i; @@ -64,7 +64,8 @@ } INFO("%d devices found", count); #endif - + + INFO("FT5206_Init: Addr %02X", m_addr); HexDump("FT5206 Init", (uint8_t *)data, sizeof(data)/sizeof(data[0])); int err = m_i2c->write(m_addr, data, sizeof(data)/sizeof(data[0]), true); @@ -83,7 +84,8 @@ INFO(" numOfTouchPoints %d", numberOfTouchPoints); gesture = FT5206_ReadRegU8(FT5206_GEST_ID); INFO(" gesture %d", gesture); - + + valXH = FT5206_ReadRegU8(FT5206_TOUCH5_XH); valYH = FT5206_ReadRegU8(FT5206_TOUCH5_YH); touchInfo[4].touchCode = FT5206_EventFlagToTouchCode[valXH >> 6]; @@ -91,7 +93,8 @@ touchInfo[4].touchID = (valYH >> 4); touchInfo[4].coordinates.x = (valXH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH5_XL); touchInfo[4].coordinates.y = (valYH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH5_YL); - + + valXH = FT5206_ReadRegU8(FT5206_TOUCH4_XH); valYH = FT5206_ReadRegU8(FT5206_TOUCH4_YH); touchInfo[3].touchCode = FT5206_EventFlagToTouchCode[valXH >> 6]; @@ -99,7 +102,8 @@ touchInfo[3].touchID = (valYH >> 4); touchInfo[3].coordinates.x = (valXH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH4_XL); touchInfo[3].coordinates.y = (valYH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH4_YL); - + + valXH = FT5206_ReadRegU8(FT5206_TOUCH3_XH); valYH = FT5206_ReadRegU8(FT5206_TOUCH3_YH); touchInfo[2].touchCode = FT5206_EventFlagToTouchCode[valXH >> 6]; @@ -107,7 +111,8 @@ touchInfo[2].touchID = (valYH >> 4); touchInfo[2].coordinates.x = (valXH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH3_XL); touchInfo[2].coordinates.y = (valYH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH3_YL); - + + valXH = FT5206_ReadRegU8(FT5206_TOUCH2_XH); valYH = FT5206_ReadRegU8(FT5206_TOUCH2_YH); touchInfo[1].touchCode = FT5206_EventFlagToTouchCode[valXH >> 6]; @@ -115,7 +120,8 @@ touchInfo[1].touchID = (valYH >> 4); touchInfo[1].coordinates.x = (valXH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH2_XL); touchInfo[1].coordinates.y = (valYH & 0x0f)*256 + FT5206_ReadRegU8(FT5206_TOUCH2_YL); - + + valXH = FT5206_ReadRegU8(FT5206_TOUCH1_XH); valYH = FT5206_ReadRegU8(FT5206_TOUCH1_YH); touchInfo[0].touchCode = FT5206_EventFlagToTouchCode[valXH >> 6];