| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | #ifndef __TOUCH_H
 | 
					
						
							|  |  |  |  | #define __TOUCH_H
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | #include "stdint.h"
 | 
					
						
							|  |  |  |  | #include "touch_iic.h"
 | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | #include "usart.h"
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | /*------------------------------------ <20><><EFBFBD>ض<EFBFBD><D8B6><EFBFBD>
 | 
					
						
							|  |  |  |  |  * -----------------------------------*/ | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | #define TOUCH_MAX 5 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | typedef struct { | 
					
						
							|  |  |  |  |   uint8_t flag;          //	<09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־λ<D6BE><CEBB>Ϊ1ʱ<31><CAB1>ʾ<EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					
						
							|  |  |  |  |   uint8_t num;           //	<09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					
						
							|  |  |  |  |   uint16_t x[TOUCH_MAX]; //	x<><78><EFBFBD><EFBFBD>
 | 
					
						
							|  |  |  |  |   uint16_t y[TOUCH_MAX]; //	y<><79><EFBFBD><EFBFBD>
 | 
					
						
							|  |  |  |  | } TouchStructure; | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | extern TouchStructure touchInfo; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | /*------------------------------------ <20>Ĵ涨<C4B4><E6B6A8>
 | 
					
						
							|  |  |  |  |  * -----------------------------------*/ | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | #define GT9XX_IIC_RADDR 0xBB // IIC<49><43>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ַ
 | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | #define GT9XX_IIC_WADDR 0xBA
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | #define GT9XX_CFG_ADDR 0x8047  // <20>̼<EFBFBD><CCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ַ
 | 
					
						
							|  |  |  |  | #define GT9XX_READ_ADDR 0x814E // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>
 | 
					
						
							|  |  |  |  | #define GT9XX_ID_ADDR 0x8140   // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49>Ĵ<EFBFBD><C4B4><EFBFBD>
 | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | /*------------------------------------ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					
						
							|  |  |  |  |  * -----------------------------------*/ | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-18 13:58:40 +08:00
										 |  |  |  | uint8_t Touch_Init(void); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
 | 
					
						
							|  |  |  |  | void Touch_Scan(void);    // <20><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>
 | 
					
						
							|  |  |  |  | void GT9XX_Reset(void);   // ִ<>и<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
 | 
					
						
							|  |  |  |  | void GT9XX_SendCfg(void); // <20><><EFBFBD><EFBFBD>GT9147<34><37><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
 | 
					
						
							|  |  |  |  | void GT9XX_ReadCfg(void); // <20><>ȡGT9147<34><37><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
 | 
					
						
							| 
									
										
										
										
											2025-06-27 00:32:57 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | TouchStructure *Touch_GetState(void); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | #endif
 |