Files
moyuhai 02f1638ef2 V1.0
2026-06-12 09:12:35 +08:00

158 lines
6.0 KiB
Plaintext

C51 COMPILER V9.60.0.0 DEBUG 03/28/2026 16:50:48 PAGE 1
C51 COMPILER V9.60.0.0, COMPILATION OF MODULE DEBUG
OBJECT MODULE PLACED IN .\hex\debug.obj
COMPILER INVOKED BY: C:\keil5\C51\BIN\C51.EXE TS_Lib\Sources\debug.c OMF2 OPTIMIZE(9,SIZE) BROWSE DEBUG PRINT(.\lst\debu
-g.lst) TABS(2) OBJECT(.\hex\debug.obj)
line level source
1 #ifndef _I2C_C_
2 #define _I2C_C_
3
4 /*********************************************************************************************************
-************/
5 #include "ca51f5_config.h"
6 #include "includes\ca51f5sfr.h"
7 #include "includes\ca51f5xsfr.h"
8 #include "includes\gpiodef_f5.h"
9 #include "Library\Includes\system_clock.h"
10 #include "Library\Includes\i2c.h"
11 /*********************************************************************************************************
-************/
12 #include "TS_Lib\Includes\ts_configuration.h"
13 #include "TS_Lib\Includes\ts_def.h"
14 #include "TS_Lib\Includes\ts_api.h"
15 #include "TS_Lib\Includes\ts_service.h"
16 /*********************************************************************************************************
-************/
17 #if DEBUG
#define I2C_ADDR 0xCA
unsigned char xdata TouchDebugID = '5';
unsigned char rxOffset;
unsigned char regAddr;
bit iicReadMode;
extern TSState_T xdata TS_State_Debug;
extern unsigned char xdata Key_Cnt_Debug;
extern unsigned char xdata TS_CH_Debug[OPENED_TS_COUNT];
extern unsigned int xdata TS_RefChBaseLineData;
extern unsigned int xdata TS_RefPostData;
extern unsigned int xdata KeysFlagSN_Debug;
code unsigned char *TS_INFO[]=
{
&TouchDebugID,
&TS_State_Debug,
&Key_Cnt_Debug,
&TS_RefChBaseLineData,
&TS_RefPostData,
&KeysFlagSN_Debug,
&TS_BaseLineData[0],
&TS_PostData[0],
&TSKey_FingerThd[0],
&TS_CH_Debug[0],
};
unsigned char *pTS_Info;
void I2C_ISR(void)
{
unsigned char Sta_Temp;
TouchDebugID = '5';
Sta_Temp = I2CSTA;
if(Sta_Temp == 0x60) //接收到从机地址+写位
{
rxOffset = 0xff;
C51 COMPILER V9.60.0.0 DEBUG 03/28/2026 16:50:48 PAGE 2
iicReadMode = 0;
I2CCON |= AAK(1);
}
else if(Sta_Temp == 0x80)
{
if(iicReadMode) //发送一字节数据
{
rxOffset++;
I2CDAT = *(pTS_Info+rxOffset);
}
else //接收到一字节数据
{
if(rxOffset == 0xff) //地址
{
regAddr=I2CDAT;
pTS_Info = TS_INFO[regAddr];
rxOffset=0;
I2CCON |= AAK(1);
}
else //数据
{
*(pTS_Info+rxOffset) = I2CDAT;
rxOffset++;
I2CCON |= AAK(1);
}
}
}
else if(Sta_Temp==0xA8) //接收到从机地址+读位,发送ACK信号
{
I2CDAT = *(pTS_Info+rxOffset);
iicReadMode = 1;
}
else if(Sta_Temp == 0x88)
{
}
I2CFLG |= I2CF;
}
void Debug_init(void)
{
#ifdef I2C_SELECT_P30_P31
I2CIOS = 0;
GPIO_Init(P30F,P30_I2C_SDA_SETTING);
GPIO_Init(P31F,P31_I2C_SCL_SETTING);
#elif defined I2C_SELECT_P02_P03
I2CIOS = 1;
GPIO_Init(P03F,P03_I2C_SDA_SETTING);
GPIO_Init(P02F,P02_I2C_SCL_SETTING);
#endif
I2CCON = I2CE(1) | I2CIE(1) | STA(0) | STP(0)| CKHD(0) | AAK(1)| CBSE(0) | STFE(0);
I2CADR = (I2C_ADDR>>1);
INT4EN = 1;
PS1 = 1;
}
void Debug_ParamLoad(void)
{
unsigned char i;
KeysFlagSN_Debug = (unsigned int)KeysFlagSN;
TS_State_Debug = TS_State;
Key_Cnt_Debug = KEY_CH_COUNT;
for(i = 0; i < KEY_CH_COUNT; i++)
C51 COMPILER V9.60.0.0 DEBUG 03/28/2026 16:50:48 PAGE 3
{
TS_CH_Debug[i] = TS_CH[i];
}
TS_RefPostData = TS_PostData[OPENED_TS_COUNT];
TS_RefChBaseLineData = TS_RefPostData;
}
#endif
122 #endif
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = ---- ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
EDATA SIZE = ---- ----
HDATA SIZE = ---- ----
XDATA CONST SIZE = ---- ----
FAR CONST SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)