📄 main.lst
字号:
C51 COMPILER V7.06 MAIN 06/14/2007 11:16:17 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 code\main.c BROWSE DEBUG OBJECTEXTEND PRINT(.\main.lst) OBJEC
-T(main.obj)
stmt level source
1 #include "def.h"
2 #include "vk33.h"
3 //在各种方式中,main.c函数和vkxx.h是通用的def.h在spi和parallel方式是通用的uart
4 //的多了两个批量读写fifo的函数;底层函数不同
5
6
7 void delay (unsigned int delaydata)
8 {
9 1 unsigned int tempdata=delaydata;
10 1 while(tempdata)
11 1 {
12 2 tempdata=tempdata-1;
13 2 }
14 1 }
15 void Init_led(void)
16 {
17 1 unsigned int tempdata=0x0ffff;
18 1
19 1 CH4_LED = 0;
20 1 CH3_LED = 0;
21 1 CH2_LED = 0;
22 1 CH1_LED = 0;
23 1 PAR_LED = 0;
24 1 SPI_LED = 0;
25 1 UART_LED = 0;
26 1 IIC_LED = 0;
27 1 while(tempdata)
28 1 {
29 2 tempdata=tempdata-1;
30 2 }
31 1 CH4_LED = 1;
32 1 CH3_LED = 1;
33 1 CH2_LED = 1;
34 1 CH1_LED = 1;
35 1 PAR_LED = 1;
36 1 SPI_LED = 1;
37 1 UART_LED = 1;
38 1 IIC_LED = 1;
39 1 tempdata=0x0ffff;
40 1 while(tempdata)
41 1 {
42 2 tempdata=tempdata-1;
43 2 }
44 1 CH4_LED = 0;
45 1 CH3_LED = 0;
46 1 CH2_LED = 0;
47 1 CH1_LED = 0;
48 1 PAR_LED = 0;
49 1 SPI_LED = 0;
50 1 UART_LED = 0;
51 1 IIC_LED = 0;
52 1 tempdata=0x0ffff;
53 1 while(tempdata)
54 1 {
C51 COMPILER V7.06 MAIN 06/14/2007 11:16:17 PAGE 2
55 2 tempdata=tempdata-1;
56 2 }
57 1 CH4_LED = 1;
58 1 CH3_LED = 1;
59 1 CH2_LED = 1;
60 1 CH1_LED = 1;
61 1 PAR_LED = 1;
62 1 SPI_LED = 1;
63 1 UART_LED = 1;
64 1 IIC_LED = 1;
65 1 tempdata=0x0ffff;
66 1 while(tempdata)
67 1 {
68 2 tempdata=tempdata-1;
69 2 }
70 1 CH4_LED = 0;
71 1 CH3_LED = 0;
72 1 CH2_LED = 0;
73 1 CH1_LED = 0;
74 1 PAR_LED = 0;
75 1 SPI_LED = 0;
76 1 UART_LED = 0;
77 1 IIC_LED = 0;
78 1 tempdata=0x0ffff;
79 1 while(tempdata)
80 1 {
81 2 tempdata=tempdata-1;
82 2 }
83 1 }
84
85
86
87 main()
88 {
89 1
90 1 static unsigned char dat1,dat2,dat3,dat4,m,n;
91 1 unsigned int tmp=0xfff;
92 1 unsigned char err_fla=0,err_flb=0,err_flc=0,err_fld=0;
93 1 n=0;
94 1 m=0;
95 1 //初试化MCU
96 1 config();
97 1 //初试化LED
98 1 Init_led();
99 1 //初始化VK;
100 1 config_vkxx();
101 1 //主并口测试;亮起PAR_LED
102 1 CH4_LED = 1;
103 1 CH3_LED = 1;
104 1 CH2_LED = 1;
105 1 CH1_LED = 1;
106 1 PAR_LED = 0;
107 1 SPI_LED = 1;
108 1 UART_LED = 1;
109 1 IIC_LED = 1;
110 1
111 1 while(1)
112 1 {
113 2 //写出数据分别到4个子UART
114 2 write_reg(1,SFDR,m);
115 2 write_reg(2,SFDR,m);
116 2 write_reg(3,SFDR,m);
C51 COMPILER V7.06 MAIN 06/14/2007 11:16:17 PAGE 3
117 2 write_reg(4,SFDR,m);
118 2 //延迟后读取FIFO数据
119 2 delay(0x8ff);
120 2 delay(0x8ff);
121 2 dat1=read_reg(1,SFDR);
122 2 dat2=read_reg(2,SFDR);
123 2 dat3=read_reg(3,SFDR);
124 2 dat4=read_reg(4,SFDR);
125 2 //delay(0x8ff);
126 2 //delay(0x8ff);
127 2 //比较读回的数据是否为发出的数据后设置LED的状态。
128 2 if(dat1==m)
129 2 CH1_LED =0;
130 2 else
131 2 err_fla =1;
132 2 if(dat2==m)
133 2 CH2_LED =0;
134 2 else
135 2 err_flb =1;
136 2 if(dat3==m)
137 2 CH3_LED =0;
138 2 else
139 2 err_flc =1;
140 2 if(dat4==m)
141 2 CH4_LED =0;
142 2 else
143 2 err_fld =1;
144 2
145 2 //*********************************************
146 2 //如果有一次不等将熄灭灯
147 2
148 2 if(err_fla==1)
149 2 CH1_LED =1;
150 2 if(err_flb==1)
151 2 CH2_LED =1;
152 2 if(err_flc==1)
153 2 CH3_LED =1;
154 2 if(err_fld==1)
155 2 CH4_LED =1;
156 2 m=m+1;
157 2 if(m==255)
158 2 m=0;
159 2 }
160 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 379 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 6 6
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 + -