📄 ps2.lst
字号:
C51 COMPILER V7.06 PS2 10/08/2006 16:54:52 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE PS2
OBJECT MODULE PLACED IN ps2.OBJ
COMPILER INVOKED BY: D:\keil 7.06\C51\BIN\C51.EXE ps2.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*==================================================
2 由于每次键盘上电或复位后都会自检,然后发出0xAA到PC
3 若每次采集33次中断数据则会出现一点小问题,我的解决
4 办法是只利用收集到的中间11位数据
5 =================================================*/
6 #include<reg51.h>
7
8 #define uchar unsigned char
9
10 sbit Clk=P3^2; //时钟线接在P32
11 sbit Dat=P1^0; //数据线接在P10
12
13 uchar Degree=0;
14 uchar Data=0;
15
16 void Get_data(void) interrupt 0 using 1
17 {
18 1 if((Degree>11)&&(Degree<20))
19 1 {
20 2 Data=Data>>1;
21 2 if(Dat){Data|=0x80;};
22 2 } //只用采集到的中间11位的八位数据
23 1
24 1 Degree++;
25 1 if(Degree>=33)
26 1 {Degree=0;
27 2 P2=Data;
28 2 } //32次后重新计数
29 1 }
30
31
32 void main(void)
33 {
34 1 IT0=1;
35 1 EA=1;
36 1 EX0=1;
37 1 while(1);
38 1
39 1 }
40
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 57 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
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 + -