📄 isd1700.lst
字号:
190 break;
191 case 7:
192 spio(0x80);spio(0x00); spio(0x81);spio(0x00);spio(0x9e);spio(0x00);SS=1;
193 break;
194 case 8:
195 spio(0x80);spio(0x00); spio(0x9F);spio(0x00);spio(0xaf);spio(0x00);SS=1;
196 break;
197 case 9:
198 spio(0x80);spio(0x00); spio(0xB0);spio(0x00);spio(0xBc);spio(0x00);SS=1;
199 break;
200 case 10:
201 spio(0x80);spio(0x00); spio(0xBD);spio(0x00);spio(0xCB);spio(0x00);SS=1;
202 break;
203 default:
204 spio(0x80);spio(0x00); spio(0x10);spio(0x00);spio(0x2a);spio(0x00);SS=1;
205 break;
206 }
207 }*/
208
209 void setplay(uchar segment)
210 {
211 1 stop();
212 1 clrint();
213 1 chk_mem();
214 1 switch (segment)
215 1 {
216 2 case 0: //播放4元
217 2 spio(0x80);spio(0x00); spio(0x10);spio(0x00);spio(0x1a);spio(0x00);SS=1;
218 2 break;
219 2 case 1: //卡片无效 //播放4元
220 2 spio(0x80);spio(0x00); spio(0x1b);spio(0x00);spio(0x27);spio(0x00);SS=1;
221 2 break;
222 2 case 2: //学生卡 //卡片无效
C51 COMPILER V8.02 ISD1700 02/20/2008 15:45:24 PAGE 5
223 2 spio(0x80);spio(0x00); spio(0x28);spio(0x00);spio(0x32);spio(0x00);SS=1;
224 2 break;
225 2 case 3: //新高职 //学生卡
226 2 spio(0x80);spio(0x00); spio(0x33);spio(0x00);spio(0x3d/*0x3D*/);spio(0x00);SS=1;
227 2 break;
228 2 case 4: //记名卡 //新高职
229 2 spio(0x80);spio(0x00); spio(0x3e);spio(0x00);spio(0x49);spio(0x00);SS=1;
230 2 break;
231 2 case 5: //家属卡 //记名卡
232 2 spio(0x80);spio(0x00); spio(0x49);spio(0x00);spio(0x53);spio(0x00);SS=1;
233 2 break;
234 2 case 6: //教工卡 //家属卡
235 2 spio(0x80);spio(0x00); spio(0x54);spio(0x00);spio(0x5D);spio(0x00);SS=1;
236 2 break;
237 2 case 7: //临时卡 //教工卡
238 2 spio(0x80);spio(0x00); spio(0x5E);spio(0x00);spio(0x67);spio(0x00);SS=1;
239 2 break;
240 2 case 8: //无效卡 //临时卡
241 2 spio(0x80);spio(0x00); spio(0x68);spio(0x00);spio(0x71);spio(0x00);SS=1;
242 2 case 9: //1 //无效卡
243 2 spio(0x80);spio(0x00); spio(0x72);spio(0x00);spio(0x76);spio(0x00);SS=1;
244 2 break;
245 2
246 2 //case 10:
247 2 // spio(0x80);spio(0x00); spio(0xBD);spio(0x00);spio(0xCB);spio(0x00);SS=1;
248 2 // break;
249 2 default:
250 2 //spio(0x80);spio(0x00); spio(0x10);spio(0x00);spio(0x2a);spio(0x00);SS=1;
251 2 break;
252 2 }
253 1 }
254
255 void wr_nvcfg()
256 {
257 1
258 1 spio(0x46);spio(0x00); SS=1;
259 1
260 1 }
261
262 unsigned char initisd1700()
263 {
264 1
265 1 unsigned char data ISDEvent=0,SR0_L;
266 1
267 1
268 1
269 1 dd: pu(); //上电
270 1
271 1 //rdstatus();
272 1 spio(0x05);
273 1 spio(0x00);
274 1 spio(0x00);
275 1 SS=1;
276 1 SR0_L=0;
277 1 //delay(100); //延迟100ms
278 1 SR0_L=spio(0x05);
279 1 //SR0_H=spio(0x00);
280 1
281 1 if((((SR0_L&0x04)==0x00)||((SR0_L&0x01)==0x01)) &&ISDEvent!=1)
282 1 {
283 2 ISDEvent++;
284 2 reset();
C51 COMPILER V8.02 ISD1700 02/20/2008 15:45:24 PAGE 6
285 2 pd();
286 2 goto dd;
287 2 }
288 1
289 1 chk_mem();
290 1 wr_apc1();
291 1 wr_nvcfg();
292 1 if(ISDEvent==1) return 1;
293 1 else return 0;
294 1 //ISDEvent=0;
295 1
296 1
297 1 }
298 /*
299 void isdmain()
300 {
301
302 uchar serial=0;
303 uint aa=0;
304 delay(1000);
305 TMOD=0x20;
306 TL1=0xfd;TH1=0xfd; //波特率9600 8数据 1停止
307 SCON=0xd8;PCON=0x00;
308 TR1=1;
309 P0=0xFF;P2=0xFF; MOSI=0;
310 LED1=0;
311 SBUF=0x55;while(TI==0); TI=0;
312 SBUF=0xAA;while(TI==0); TI=0;
313
314 dd: pu(); //上电
315 rdstatus();
316 senddata();
317 // SBUF=SR0_L; while(TI==0); TI=0; //////////////////
318 if(PU_1700==0||CMD_ERR==1)
319 {
320 reset();
321 pd();
322 SBUF=0xAB; while(TI==0); TI=0; //
323 goto dd;
324 }
325 clrint();
326 rdstatus();
327 senddata();
328
329 devid();
330 SBUF=0xDD; while(TI==0); TI=0; //////////////////
331 SBUF=ID; while(TI==0); TI=0;
332
333 // wr_apc1();
334 rd_apc();
335 SBUF=0xAC; while(TI==0); TI=0;
336 SBUF=APCH; while(TI==0); TI=0;
337 SBUF=APCL; while(TI==0); TI=0;
338
339
340
341 aa: setplay(1);
342
343 rdstatus();
344 senddata(); //////////////////
345 if(CMD_ERR==1)
346 {
C51 COMPILER V8.02 ISD1700 02/20/2008 15:45:24 PAGE 7
347 clrint();
348 SBUF=0xBC; while(TI==0); TI=0;
349 goto aa;
350 }
351
352
353 while(1)
354 {
355 if(key3==0)delay(20);
356 {
357 if(key3==0)
358 {
359 clrint();
360 chk_mem();
361 while(key3==0)
362 {
363 rec();
364 rdstatus();
365 while(REC_1700)
366 {
367 delay(50);
368 LED1=!LED1;
369 SBUF=0xCD; while(TI==0); TI=0;
370 }
371 }
372 clrint();
373 stop();
374 //delay(50);LED1=!LED1;
375 }
376 }
377
378 if(key1==0) delay(20) ;
379 {
380 if(key1==0)
381 {
382 // stop();
383 cc: chk_mem();
384 playall();
385 clrint();
386 rdstatus();
387 senddata();
388 if(CMD_ERR)
389 {
390 SBUF=0xBC; while(TI==0); TI=0;
391 goto cc;
392 }
393 while(key1==0);
394
395 }
396
397 }
398 LED2=!LED2; delay(50);//SBUF=0x1a;while(TI==0); TI=0;
399 }
400 }
401
402 */
C51 COMPILATION COMPLETE. 2 WARNING(S), 17 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -