?? key.lst
字號:
C51 COMPILER V7.09 KEY 08/24/2007 09:37:37 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN Key.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE Key.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"Key.h"
6
7
8 //函數:SPI_WriteOneByte()
9 //功能:向SPI總線寫數據
10 //說明:寫入的數據長度為1字節
11 void SPI_WriteOneByte(INT8U Wdata)
12 {
13 1 INT8U i;
14 1 for(i=0;i<8;i++)
15 1 {
16 2 ZLG7289DIO = (bit)(Wdata&0x80);
17 2 ZLG7289CLK = 1;
18 2 Wdata <<= 1;
19 2 nNop(1);
20 2 ZLG7289CLK = 0;
21 2 nNop(1);
22 2 }
23 1 }
24
25
26 //函數:SPI_ReadOneByte()
27 //功能:從SPI總線讀數據
28 //說明:返回1字節數據
29 INT8U SPI_ReadOneByte()
30 {
31 1 INT8U i,temp;
32 1 ZLG7289DIO = 1; //將I/O切換到輸入狀態
33 1 for(i=0;i<8;i++)
34 1 {
35 2 ZLG7289CLK = 1;
36 2 nNop(5);
37 2 temp <<= 1;
38 2 if(ZLG7289DIO) temp++;
39 2 ZLG7289CLK = 0;
40 2 nNop(5);
41 2 }
42 1 return temp;
43 1 }
44
45 //函數:ZLG7289_Instruc()
46 //功能:執行ZLG7289純指令
47 //說明:指令長度為1字節
48 void ZLG7289_Instruc(INT8U Instruc)
49 {
50 1 INT8U i;
51 1 i = IE;
52 1 IE &= 0xfa; // Disable external interrupt;
53 1 ZLG7289CS = 0;
54 1 nNop(5);
55 1 SPI_WriteOneByte(Instruc);
C51 COMPILER V7.09 KEY 08/24/2007 09:37:37 PAGE 2
56 1 ZLG7289CS = 1;
57 1 nNop(5);
58 1 IE = i;
59 1 }
60
61
62 //函數:ZLG7289_Instruc_Data
63 //功能:執行ZLG7289帶數據指令
64 //說明:指令長度以及數據長度均為1字節
65 void ZLG7289_Instruc_Data(INT8U Instruc,INT8U Data)
66 {
67 1 INT8U i;
68 1 i = IE;
69 1 IE &= 0xfa;
70 1 ZLG7289CS = 0;
71 1 nNop(5);
72 1 SPI_WriteOneByte(Instruc);
73 1 nNop(5);
74 1 SPI_WriteOneByte(Data);
75 1 ZLG7289CS = 1;
76 1 nNop(5);
77 1 IE = i;
78 1 }
79
80
81
82 //函數:ZLG7289_ReadKey()
83 //功能:執行ZLG7289讀鍵盤指令
84 //說明:返回1字節的按鍵號
85 // 按鍵號的范圍為:0 ~ 63(即0x0 ~ 0x3f)
86 // 若沒有按按鍵被按下了,返回255(即0xff)
87 INT8U ZLG7289_ReadKey()
88 {
89 1 INT8U Key;
90 1 ZLG7289CS = 0;
91 1 nNop(10);
92 1 SPI_WriteOneByte(0x15);
93 1 nNop(5);
94 1 Key = SPI_ReadOneByte();
95 1 nNop(1);
96 1 ZLG7289CS = 1;
97 1 nNop(5);
98 1 return Key;
99 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 193 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 10
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 + -