📄 interface_ps2.lst
字号:
C51 COMPILER V7.50 INTERFACE_PS2 12/29/2004 20:23:50 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE INTERFACE_PS2
OBJECT MODULE PLACED IN .\INTERFACE_PS2.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\Peripheric\INTERFACE_PS2.C BROWSE DEBUG OBJECTEXTEND PRINT(.\INTERFACE_P
-S2.lst) OBJECT(.\INTERFACE_PS2.obj)
line level source
1 #include"config.h"
2
3
4
5 //*******************************************************************************************************
6 //***************************** GLOBAL PERAMETER *************************************
7 //*******************************************************************************************************
8
9
10
11
12
13
14
15 /*********************************************************************************************************
16 ** 函数名称: SendCmd2KeyBoard 注意,对系统会有较大影响
17 ** 功能描述: 发送控制命令到键盘
18 **
19 ** 输 入: cmd
20 ** 输 出: test
21 ** 全局变量: 无
22 ** 调用模块:
23 **
24 ** 作 者: 龚树强
25 ** 日 期: 2004年10月15日
26 **-------------------------------------------------------------------------------------------------------
27 ** 修改人:
28 ** 日 期:
29 **------------------------------------------------------------------------------------------------------
30 ********************************************************************************************************/
31 /* uint8 SendCmd2KeyBoard(unsigned char cmd)
32 {
33 unsigned char i,temp;
34 unsigned char timer;
35 bit test;
36
37 test=1;
38 PS2_CLK=1;
39 PS2_DATA=1;
40
41 for(i=100;i--;);
42
43
44 PS2_CLK=0;
45
46 for(i=100;i--;);
47
48 PS2_DATA=0;
49 PS2_CLK=1;
50
51 temp=cmd;
52
53 for(i=0;i<8;i++)
54 {
C51 COMPILER V7.50 INTERFACE_PS2 12/29/2004 20:23:50 PAGE 2
55 for(timer=OVERTIME_THREAD;timer--;)
56 {
57 if(!PS2_CLK){break;}
58 }
59 if(!timer)return 0;
60
61 temp=cmd&0x01;
62
63 if(temp)
64 {
65 PS2_DATA=1;
66 test=!test;
67 }
68 else
69 PS2_DATA=0;
70
71 for(timer=OVERTIME_THREAD;timer--;)
72 {
73 if(PS2_CLK){break;}
74 }
75 if(!timer)return 0;
76
77
78 cmd>>=1;
79 }
80
81 for(timer=OVERTIME_THREAD;timer--;)
82 {
83 if(!PS2_CLK){break;}
84 }
85 if(!timer)return 0;
86
87 PS2_DATA=test;
88
89 for(timer=OVERTIME_THREAD;timer--;)
90 {
91 if(PS2_CLK){break;}
92 }
93 if(!timer)return 0;
94
95
96 for(timer=OVERTIME_THREAD;timer--;)
97 {
98 if(!PS2_CLK){break;}
99 }
100 if(!timer)return 0;
101
102 PS2_DATA=1;
103
104 for(timer=OVERTIME_THREAD;timer--;)
105 {
106 if(PS2_CLK){break;}
107 }
108 if(!timer)return 0;
109
110
111 PS2_CLK=1;
112 PS2_DATA=1;
113
114 return 1;
115
116 }
C51 COMPILER V7.50 INTERFACE_PS2 12/29/2004 20:23:50 PAGE 3
117 */
118 /*********************************************************************************************************
119 ** 函数名称: LedNumOn
120 ** 功能描述: 发送控制命令到键盘
121 **
122 ** 输 入: cmd
123 ** 输 出: test
124 ** 全局变量: 无
125 ** 调用模块:
126 **
127 ** 作 者: 龚树强
128 ** 日 期: 2004年10月15日
129 **-------------------------------------------------------------------------------------------------------
130 ** 修改人:
131 ** 日 期:
132 **------------------------------------------------------------------------------------------------------
133 ********************************************************************************************************/
134
135 void LedNumOn(void)
136 {
137 1 // EA=0;
138 1 // SendCmd2KeyBoard(0xed);
139 1 // SendCmd2KeyBoard(0x02);
140 1 // SendCmd2KeyBoard(0xed);
141 1 // SendCmd2KeyBoard(0x02);
142 1
143 1
144 1 // EA=1;
145 1
146 1 _Flag_StateLed=1;
147 1 Write728x(0x18,0x77);
148 1 }
149
150
151 /*********************************************************************************************************
152 ** 函数名称: LedNumOff
153 ** 功能描述: 发送控制命令到键盘
154 **
155 ** 输 入: cmd
156 ** 输 出: test
157 ** 全局变量: 无
158 ** 调用模块:
159 **
160 ** 作 者: 龚树强
161 ** 日 期: 2004年10月15日
162 **-------------------------------------------------------------------------------------------------------
163 ** 修改人:
164 ** 日 期:
165 **------------------------------------------------------------------------------------------------------
166 ********************************************************************************************************/
167
168 void LedNumOff(void)
169 {
170 1 // EA=0;
171 1 // SendCmd2KeyBoard(0xed);
172 1 // SendCmd2KeyBoard(0x00);
173 1 // SendCmd2KeyBoard(0xed);
174 1 // SendCmd2KeyBoard(0x00);
175 1
176 1 _Flag_StateLed=0;
177 1 Write728x(0x18,0x77|0x80);
178 1 // EA=1;
C51 COMPILER V7.50 INTERFACE_PS2 12/29/2004 20:23:50 PAGE 4
179 1 }
180
181
182
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 18 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
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 + -