?? touch.lst
字號:
C51 COMPILER V7.09 TOUCH 08/24/2007 09:37:40 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE TOUCH
OBJECT MODULE PLACED IN Touch.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE Touch.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg51.h>
2 #include"Config.h"
3 #include"IOCfg.c"
4 #include"TimeDLY.h"
5 #include"IIC_PCA8574.h"
6 #include"Touch.h"
7
8 //判斷觸發其處理函數:Touch_Sample()
9 bit Touch_Sample(INT8U tmode,INT32U tword,INT8U n,INT16U freq)
10 {
11 1 bit x;
12 1 INT16U addr=0;
13 1 INT8U singl;
14 1 INT8U temp,i,j;
15 1 INT8U temp1,temp2,temp3,k,m;
16 1 INT32U trig;
17 1 INT8U Flag[8]={1,1,1,1,1,1,1,1};
18 1 bit Touch_EN=1;
19 1 INT8U sel=0x01;
20 1 if(tmode==SINGLE)
21 1 {
22 2 do
23 2 {
24 3 singl = tword & 0xff;
25 3 x=PCA8574_GetOne(0x43,temp);
26 3 for(i=0;i<8;i++)
27 3 {
28 4 if(n&sel) Flag[i]=(bit)((temp&0x01)^(singl&0x01));
29 4 sel = sel<<1;
30 4 singl >>= 1;
31 4 }
32 3 for(j=0;j<8;j++) Touch_EN=Touch_EN | Flag[i];
33 3 Touch_EN &= n;
34 3 }
35 2 while(Touch_EN);
36 2 do
37 2 {
38 3 RAM_CS = 1;
39 3 RAM_WE = 1;
40 3 RAM_ADDR_L = addr&0xff;
41 3 RAM_ADDR_L = (addr>>8)&0xff;
42 3 RAM_CS = 0;
43 3 RAM_WE = 0;
44 3 T0_Delay(freq);
45 3 addr += 1;
46 3 }
47 2 while(addr<400);
48 2 return 1;
49 2 }
50 1 else if(tmode==TRI_T)
51 1 {
52 2 do
53 2 {
54 3 trig = (tword >> 8)&0xfff;
55 3 x=PCA8574_GetOne(0x43,temp1);
C51 COMPILER V7.09 TOUCH 08/24/2007 09:37:40 PAGE 2
56 3 T0_Delay(freq);
57 3 x=PCA8574_GetOne(0x43,temp2);
58 3 T0_Delay(freq);
59 3 x=PCA8574_GetOne(0x43,temp3);
60 3 for(k=0;k<8;k++)
61 3 {
62 4 if(n&sel)
63 4 Flag[k]=(bit)((((temp1&0x01)<<2)|((temp2&0x01)<<1)|(temp3&0x01))^(trig&0x03));
64 4 sel = sel<<1;
65 4 trig >>= 3;
66 4 }
67 3 for(m=0;m<8;m++) Touch_EN=Touch_EN | Flag[m];
68 3 Touch_EN &= n;
69 3 }
70 2 while(Touch_EN);
71 2 do
72 2 {
73 3 RAM_CS = 1;
74 3 RAM_WE = 1;
75 3 RAM_ADDR_L = addr&0xff;
76 3 RAM_ADDR_L = (addr>>8)&0xff;
77 3 RAM_CS = 0;
78 3 RAM_WE = 0;
79 3 T0_Delay(freq);
80 3 addr += 1;
81 3 }
82 2 while(addr<400);
83 2 return 1;
84 2 }
85 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 432 ----
CONSTANT SIZE = 8 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 29
IDATA SIZE = ---- ----
BIT SIZE = ---- 2
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -