📄 epmain.lst
字号:
C51 COMPILER V7.20 EPMAIN 09/11/2008 22:15:07 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE EPMAIN
OBJECT MODULE PLACED IN epmain.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE epmain.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include"mytype.h"
2 #include"d12_command.h"
3 #include"regx51.h"
4 #include"uar.h"
5 #include"key.h"
6
7 uint8 idata buffer[16];
8 uint8 idata InBuffer[16];
9 extern volatile uint8 idata KeyCurrent,KeyOld,KeyNoChangedTime;
10 extern volatile uint8 idata KeyPress;
11 extern volatile uint8 idata KeyDown,KeyUp,KeyLast;
12 extern volatile uint8 KeyCanChange;
13
14
15 void dma_eot(void)
16 {;
17 1 }
18 void ep1_in(void)
19 {}
20 void ep1_out(void)
21 {}
22 void ep2_in(void)
23 {uint8 i;
24 1
25 1 // Prints("端点2输入.\r\n");
26 1 for(i=0;i<4;i++)
27 1 {
28 2 InBuffer[i]=0;
29 2 }
30 1 KeyCanChange=0; //禁止修改按键值
31 1
32 1 if((KeyPress&(~0xC0))||(KeyUp&0xC0)||KeyDown&0xC0) //如果有按键按住或者有按键值变化
33 1 {
34 2 KeyUp=0;
35 2 KeyDown=0;
36 2 if(KeyPress&KEY1) //往左移(X减小)
37 2 {
38 3 InBuffer[1]=-1;
39 3 }
40 2 else
41 2 {
42 3 }
43 2
44 2 if(KeyPress&KEY2) //往右移(X轴增加)
45 2 {
46 3 InBuffer[1]=1;
47 3 }
48 2 else
49 2 {
50 3 }
51 2
52 2 if(KeyPress&KEY3) //往上移(Y减小)
53 2 {
54 3 InBuffer[2]=-1;
55 3 }
C51 COMPILER V7.20 EPMAIN 09/11/2008 22:15:07 PAGE 2
56 2 else
57 2 {
58 3 }
59 2
60 2 if(KeyPress&KEY4) //向下移(Y轴增加)
61 2 {
62 3 InBuffer[2]=1;
63 3 }
64 2 else
65 2 {
66 3 }
67 2
68 2 if(KeyPress&KEY5) //滚轮下滚
69 2 {
70 3 InBuffer[3]=-1;
71 3 }
72 2 else
73 2 {
74 3 }
75 2
76 2 if(KeyPress&KEY6) //滚轮上滚
77 2 {
78 3 InBuffer[3]=1;
79 3 }
80 2 else
81 2 {
82 3 }
83 2
84 2 if(KeyPress&KEY7) //左键
85 2 {
86 3 InBuffer[0]|=0x01;
87 3 }
88 2 else
89 2 {
90 3 }
91 2
92 2 if(KeyPress&KEY8)
93 2 {
94 3 InBuffer[0]|=0x02; //右键
95 3 }
96 2 else
97 2 {
98 3 }
99 2 /*
100 2 //EDN USB板键盘不够,没有中键
101 2 if(KeyMapOk&(1<<1)) //中键
102 2 {
103 2 InBuffer[0]|=0x04;
104 2 }
105 2 else
106 2 {
107 2 }
108 2 */
109 2
110 2 //返回4个字节数据
111 2 write_endpoint_buff(5,4,InBuffer);
112 2 }
113 1 else //如果无按键按下或者按键动作,则不返回数据
114 1 {
115 2 }
116 1 KeyCanChange=1; //允许修改按键值
117 1
C51 COMPILER V7.20 EPMAIN 09/11/2008 22:15:07 PAGE 3
118 1
119 1 }
120 void ep2_out(void)
121 { uint8 i,j;
122 1
123 1 j=read_endpoint_buff(4,16,buffer);
124 1 P2=~buffer[0];
125 1 Prints("端点2输出.\r\n");
126 1 Prints(" 端点2的数据是 ");
127 1 for(i=0;i<j;i++)
128 1 {
129 2 PrintHex(buffer[i]);
130 2 if(i==16)Prints("\r\n");
131 2 }
132 1 Prints("\r\n");
133 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 230 ----
CONSTANT SIZE = 36 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
IDATA SIZE = 32 ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -