📄 main.lst
字号:
C51 COMPILER V7.06 MAIN 03/02/2009 16:29:21 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "HAL.H"
2 #include "SMC162.h"
3 #include "tlc5620.h"
4 #include "main.h"
5
6
7 #define TIMERH 0xff
8 #define TIMERL 0xa3
9 #define ADDR 0x00050200
10 sbit SDCS1=P0^4;
11 sbit SDCS2=P0^5; //1的时候开启 0的时候关闭
12
13 unsigned char idata SdReadBuf;
14 unsigned char idata PreSdReadBuf;
15 unsigned long Addr=ADDR;
16 void Beep(void);
17 void InitPort(void);
18 void DelayNTime(unsigned char);
19 unsigned char check=0;
20 void Timer0Init(void);
21 unsigned short jishu=0;
22 void Ex1Init(void);
23 void Ex0Init(void);
24
25 void main()
26 {
27 1 Beep();
28 1 InitPort();
29 1 SdInit();
30 1 TLC5620_Init();
31 1 Timer0Init();
32 1 TR0=1;
33 1 EX0=1;
34 1 EX1=1;
35 1 while(1)
36 1 {
37 2 if(SDCS1==0)
38 2 {
39 3 while(SDCS2==0);
40 3 }
41 2 else if(SDCS2==0)
42 2 {
43 3 while(SDCS1==0);
44 3 }
45 2 if (jishu==0)
46 2 {
47 3 ET0=0;
48 3 SD_CS=0;
49 3 SdWrite(0x11|0x40);
50 3 SdWrite(((unsigned char *)&Addr)[0]);
51 3 SdWrite(((unsigned char *)&Addr)[1]);
52 3 SdWrite(((unsigned char *)&Addr)[2]);
53 3 SdWrite(((unsigned char *)&Addr)[3]);
54 3 SdWrite(0x95);
55 3 SdResponse();
C51 COMPILER V7.06 MAIN 03/02/2009 16:29:21 PAGE 2
56 3 SdRead();
57 3 jishu++;
58 3 ET0=1;
59 3 }
60 2 else if(jishu==513)
61 2 {
62 3 ET0=0;
63 3 SdRead();
64 3 SdRead();
65 3 SD_CS=1;
66 3 SdRead();
67 3 jishu=0;
68 3 Addr+=512;
69 3 ET0=1;
70 3 }
71 2 }
72 1 }
73
74 void Timer0ISR(void) interrupt 1
75 {
76 1 TH0=TIMERH;
77 1 TL0=TIMERL;
78 1 PreSdReadBuf=SdReadBuf;
79 1 if(jishu>0&&jishu<513)
80 1 {
81 2 SdReadBuf=SdRead();
82 2 jishu++;
83 2 }
84 1 if (SdReadBuf>253||SdReadBuf<2)
85 1 SdReadBuf=PreSdReadBuf;
86 1 TLC5620_SetOutput(CHL0,SdReadBuf);
87 1 }
88
89 void Beep()
90 {
91 1 unsigned char i,m;
92 1 for (i=0;i<50;i++)
93 1 {
94 2 P14=0;
95 2 DelayNTime(1);
96 2 P14=1;
97 2 DelayNTime(1);
98 2 }
99 1 for (m=0;m<10;m++)
100 1 DelayNTime(10);
101 1 }
102 void DelayNTime(unsigned char dly)
103 {
104 1 unsigned char j;
105 1 unsigned char i;
106 1 for (i=0;i<2*dly;i++)
107 1 for (j=219;j>0;j--);
108 1 }
109
110 void InitPort()
111 {
112 1 SD_CS=0;
113 1 SD_DI=0;
114 1 SD_DO=0;
115 1 SD_CLK=0;
116 1 }
117
C51 COMPILER V7.06 MAIN 03/02/2009 16:29:21 PAGE 3
118 void Timer0Init()
119 {
120 1 TMOD=0X00;
121 1 TH0=TIMERH;
122 1 TL0=TIMERL;
123 1 EA=1;
124 1 ET0=1;
125 1 P30=1;
126 1 P31=1;
127 1 SDCS2=0;
128 1 SDCS1=0;
129 1 }
130
131
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 383 ----
CONSTANT SIZE = 1024 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 7 2
IDATA SIZE = 2 ----
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 + -