📄 main.lst
字号:
C51 COMPILER V7.50 MAIN 04/17/2007 10:39:19 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN .\Output\Main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Main.c LARGE OPTIMIZE(SIZE) BROWSE INCDIR(.\Include) DEBUG OBJECTEXTEND PRI
-NT(.\Output\Main.lst) OBJECT(.\Output\Main.obj)
line level source
1 /*
2 *********************************************************************************************************
3 * File : Main.C
4 * Contents :
5 *
6 * $Date : 09/18/06 Kimi v0.1
7 * $Date : 10/18/06 Kimi v0.2
8 * $Date : 11/02/06 Kimi v1.0
9 *
10 * Copyright (c) 2006 Fameg, Inc. All rights reserved
11 *********************************************************************************************************
12 */
13
14 #define ALLOCATE_EXTERN // Declare GLOBAL variables and functions
15
16 #include "main.h"
17
18 //----------------------------------------------------------------------------
19 // Description:
20 //
21 //----------------------------------------------------------------------------
22 void Timer0 (void) interrupt 1 using 2
23 {
24 1 // Restore the counter to 10 ms
25 1 TH0 = 0x3C; // 0x3CB0, CPU 60MHz, 10ms
26 1 TL0 = 0xB0;
27 1
28 1 if (DelayTimer)
29 1 {
30 2 DelayTimer--;
31 2 }
32 1
33 1 if (SmFlushTimer)
34 1 {
35 2 SmFlushTimer--;
36 2 if (SmFlushTimer == 0)
37 2 {
38 3 SmFlushFlag = true;
39 3 }
40 2 }
41 1 }
42
43 //----------------------------------------------------------------------------
44 // Description:
45 //
46 //----------------------------------------------------------------------------
47 void SPI_INT_ISR (void) interrupt 7 using 3
48 {
49 1 if (CHIPINT & bmSPI_INT)
50 1 {
51 2 if (SPI_ST & bmRFFINT)
52 2 {
53 3 // receive data from SPI
54 3 }
C51 COMPILER V7.50 MAIN 04/17/2007 10:39:19 PAGE 2
55 2 if (SPI_ST & bmTEFINT)
56 2 {
57 3 // send data to SPI
58 3 }
59 2 }
60 1 }
61
62 //----------------------------------------------------------------------------
63 // Description:
64 // Read Operation
65 //----------------------------------------------------------------------------
66 void Read (void)
67 {
68 1 UINT16 i;
69 1 BYTE j;
70 1
71 1 for (i = 0; i < SectorCount; i++)
72 1 {
73 2 for (j = 0; j < 4; j++)
74 2 {
75 3 if (j == 0)
76 3 {
77 4 SmReadSector();
78 4 }
79 3 else
80 3 {
81 4 SmReadNextSector();
82 4 }
83 3 // you should add code here to send the 512 byte data of IN FIFO to SPI
84 3 SFI_SKIP = 0x82; // Skip Data Packet in order to Read Next 512 Data
-Packet
85 3 }
86 2 }
87 1 }
88
89 //----------------------------------------------------------------------------
90 // Description:
91 // Write Operation
92 //----------------------------------------------------------------------------
93 void Write (void)
94 {
95 1 UINT16 i;
96 1 BYTE j;
97 1
98 1 for (i = 0; i < SectorCount; i++)
99 1 {
100 2 for (j = 0; j < 4; j++)
101 2 {
102 3 // you should add code here to receive data from SPI and then copy this data to OUT FIFO
103 3 // start APLIF,send data to NAND FLASH
104 3 if (j == 0)
105 3 {
106 4 SmWriteSector();
107 4 }
108 3 else
109 3 {
110 4 SmWriteNextSector();
111 4 }
112 3 }
113 2 }
114 1 }
115
C51 COMPILER V7.50 MAIN 04/17/2007 10:39:19 PAGE 3
116 //----------------------------------------------------------------------------
117 // Description:
118 //
119 //----------------------------------------------------------------------------
120 void main (void)
121 {
122 1 TdInit();
123 1
124 1 SmEraseAll();
125 1
126 1 while (true)
127 1 {
128 2 SectorStart = 0;
129 2 SectorCount = 1;
130 2 Write();
131 2
132 2 SectorStart = 0;
133 2 SectorCount = 1;
134 2 Read();
135 2
136 2 if (SmFlushFlag)
137 2 {
138 3 SmFlushBlock();
139 3 }
140 2 }
141 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 311 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 9 6
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = 20 ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -