📄 pro.lst
字号:
C51 COMPILER V7.06 PRO 03/07/2008 15:27:45 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE PRO
OBJECT MODULE PLACED IN pro.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE pro.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <general.h>
2 sbit clflag=ACC^7;
3 bit int_flag=0; /*中断标志位*/
4 uchar key_value;/*中断返回键值*/
5
6 sbit adf4113_sclk=P3^0;
7 sbit adf4113_sdata=P3^1;
8 sbit adf4113_le=P3^2;
9 sbit adf4113_out=P3^3;
10 //uchar spll[]={0x07,0x87,0x0b,0x30,0x00,0xc8,0x15,0xcc,0xa1};
11 //uchar spll[]={0x1f,0x82,0xc3,0x02,0x00,0xc8,0x22,0x71,0x01};1GHz
12 uchar spll[]={0x1f,0x98,0x43,0x62,0x00,0xc8,0x01,0xb5,0x11};//700MHz 0xb3 changed to 0xe3 enable the muxou
-t to be serial data
13 // 0x43 will use the other PD polarity and R divder output
14 void ADF4113(void);
15 void AD9858_init(void);
16
17 void main()
18
19 {
20 1 ulong i,j,k;
21 1 AUXR = 0x02;/*STC单片机关内部RAM和开ALE*/
22 1 for(i=0;i<5;i++)
23 1 {
24 2 for(j=0;j<100;j++)
25 2 {
26 3 for(k=0;k<100;k++);
27 3 }
28 2 }
29 1
30 1 COM=0xd1;//1101 0001b 清除所有显示
31 1 do{ACC=COM;}
32 1 while(clflag==1); //清除起来比较慢,所以一条指令执行的时间不足以完成所有清除,故需等待
33 1 COM=0x01;COM=0x0a; /*分频次数10*/
34 1 IE=0x81;TCON=0x01;
35 1
36 1
37 1 timer1_init();
38 1
39 1 for(i=0;i<7;i++)
40 1 {
41 2 COM=0xd1; /*总清除命令*/
42 2 do{ACC=COM;}
43 2 while(clflag==1); /*等待清除结束*/
44 2 COM=0x80+i;
45 2 DAT=0x3f;
46 2 COM=0x80+i+1;
47 2 DAT=0x67;
48 2 for(j=0;j<20000;j++);
49 2 }
50 1 // while(1)
51 1 ADF4113();
52 1 delay(100);
53 1 AD9858_init();
54 1 // */
C51 COMPILER V7.06 PRO 03/07/2008 15:27:45 PAGE 2
55 1
56 1
57 1
58 1 while(1)
59 1 {
60 2 while(int_flag==0);/*等待中断*/
61 2 int_flag=0;
62 2
63 2 switch(key_value)
64 2 {
65 3 case 0x40:
66 3 {
67 4 key0();
68 4 fre_order[ftw-1]=0;
69 4 break;}
70 3
71 3 case 0x41:
72 3 {
73 4 key1();
74 4 fre_order[ftw-1]=1;
75 4 break;
76 4 }
77 3 case 0x42:
78 3 {
79 4 key2();
80 4 fre_order[ftw-1]=2;
81 4 break;
82 4 }
83 3 case 0x43:
84 3 {
85 4 key3();
86 4 fre_order[ftw-1]=3;
87 4 break;
88 4 }
89 3 case 0x48:
90 3 {
91 4 key4();
92 4 fre_order[ftw-1]=4;
93 4 break;
94 4 }
95 3 case 0x49:
96 3 {
97 4 key5();
98 4 fre_order[ftw-1]=5;
99 4 break;
100 4 }
101 3 case 0x4a:
102 3 {
103 4 key6();
104 4 fre_order[ftw-1]=6;
105 4 break;
106 4 }
107 3 case 0x4b:
108 3 {
109 4 key7();
110 4 fre_order[ftw-1]=7;
111 4 break;}
112 3 case 0x50:
113 3 {
114 4 key8();
115 4 fre_order[ftw-1]=8;
116 4 break;
C51 COMPILER V7.06 PRO 03/07/2008 15:27:45 PAGE 3
117 4 }
118 3 case 0x51:
119 3 {
120 4 key9();
121 4 fre_order[ftw-1]=9;
122 4 break;
123 4 }
124 3 case 0x52:key10();break;
125 3 case 0x53:key11();break;
126 3 case 0x58:key12();break;
127 3 case 0x59:key13();break;
128 3 case 0x5a:key14();break;
129 3 case 0x5b:
130 3 {
131 4 key15();
132 4
133 4 break;
134 4 }
135 3
136 3 case 0x00:
137 3 {
138 4 skey0();
139 4 // ADF4113();
140 4 break;
141 4 }
142 3 case 0x01:
143 3 {
144 4 skey1();
145 4 AD9858_init();
146 4 break;
147 4 }
148 3 case 0x02:
149 3 {
150 4 skey2();
151 4 break;
152 4 }
153 3 case 0x03:skey3();break;
154 3 case 0x08:skey4();break;
155 3 case 0x09:skey5();break;
156 3 case 0x0a:skey6();break;
157 3 case 0x0b:skey7();break;
158 3 case 0x10:skey8();break;
159 3 case 0x11:skey9();break;
160 3 case 0x12:skey10();break;
161 3 case 0x13:skey11();break;
162 3 case 0x18:skey12();break;
163 3 case 0x19:skey13();break;
164 3 case 0x1a:skey14();break;
165 3 case 0x1b:skey15();break;
166 3 default:break;
167 3 }
168 2
169 2 }
170 1 }
171
172
173 void ADF4113(void)
174 {
175 1 uint i,j;
176 1 uchar temp;
177 1 //EA=1;
178 1 //adf4113_out=1;
C51 COMPILER V7.06 PRO 03/07/2008 15:27:45 PAGE 4
179 1 for(i=0;i < 9; i++)
180 1 {
181 2 adf4113_le=0;
182 2 for(j=0;j < 8;j++)
183 2 {
184 3 temp = spll[i];
185 3 adf4113_sclk = 0;
186 3 delay(10);
187 3 adf4113_sdata = temp&0x80?1:0;
188 3 adf4113_sclk = 1;
189 3 delay(10);
190 3 temp<<=1;
191 3 }
192 2 if((i+1)%3==0)
193 2 {
194 3 adf4113_le=1;
195 3 delay(5);
196 3 adf4113_le=0;
197 3 }
198 2 }
199 1 delay(5);
200 1 /* if(adf4113_out==1)
201 1 {////.............
202 1 COM=0xd1;//1101 0001b 清除所有显示
203 1 do{ACC=COM;}
204 1 while(clflag==1);
205 1
206 1 }
207 1 */
208 1 }
209
210 void AD9858_init(void)
211 {
212 1 uint i,j;
213 1 uchar temp;
214 1 ad9858_reset=0;
215 1 ad9858_fud=0;
216 1 ad9858_cs=0;
217 1 for(i=0;i<40;i++)
218 1 {
219 2 j = 0;
220 2 temp = ad9858_cfrdata[j];
221 2
222 2 ad9858_sclk=0;
223 2 delay(1);
224 2 ad9858_sdata = temp&0x80==0?0:1;
225 2 ad9858_sclk=1;
226 2 delay(1);
227 2 temp<<=1;
228 2 if(!i%8) j++;
229 2 }
230 1 ad9858_cs=1;
231 1 //
232 1 /* ad9858_cs=0;
233 1 for(i=0;i<40;i++)
234 1 {
235 1 j=0;
236 1 temp = ad9858_ftw0data[j];
237 1 ad9858_sclk=0;
238 1 delay(1);
239 1 ad9858_sdata = temp&0x80==0?0:1;
240 1 ad9858_sclk=1;
C51 COMPILER V7.06 PRO 03/07/2008 15:27:45 PAGE 5
241 1 delay(1);
242 1 temp<<=1;
243 1 if(!i%8) j++;
244 1 }
245 1 ad9858_cs=1;
246 1
247 1 ad9858_fud=1;
248 1
249 1 ad9858_cs=0;
250 1 for(i=0;i<40;i++)
251 1 {
252 1 temp = ad9858_ftw1[j];
253 1 j=0;
254 1 ad9858_sclk=0;
255 1 delay(1);
256 1 ad9858_sdata = temp&0x80==0?0:1;
257 1 ad9858_sclk=1;
258 1 delay(1);
259 1 temp<<=1;
260 1 if(!i%8) j++;
261 1 }
262 1 ad9858_cs=1;
263 1 */
264 1 }
265
266 void int_int0() interrupt 0 using 0
267 {
268 1 int_flag=1;
269 1 ftw++;
270 1 key_value=keyin();
271 1 }
272
273
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2297 ----
CONSTANT SIZE = 32 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 69 36
IDATA SIZE = ---- ----
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 + -