📄 xszkzqv12.lst
字号:
263 2 Wdata++;
264 2 }
265 1 Stop();
266 1 I2cDelay(10);
267 1 }
268 /***************************************************************************/
269 unsigned char Read8Bit() {
270 1 unsigned char temp,rbyte=0;
271 1 for(temp=8;temp!=0;temp--) {
272 2 SCL=1;
273 2 rbyte=rbyte<<1;
274 2 rbyte=rbyte|((unsigned char)(SDA));
275 2 SomeNOP();
276 2 SCL=0;
277 2 }
278 1 return(rbyte);
279 1 }
280 /***************************************************************************/
281 void Read24c02(unsigned char idata *RamAddress,unsigned char RomAddress,unsigned char bytes) {
282 1 // unsigned char temp,rbyte;
283 1 Start();
284 1 Write8Bit(WriteDeviceAddress);
285 1 TestAck();
286 1 Write8Bit(RomAddress);
287 1 TestAck();
288 1 Start();
289 1 Write8Bit(ReadDviceAddress);
290 1 TestAck();
291 1 while(bytes!=1) {
292 2 *RamAddress=Read8Bit();
293 2 Ack();
294 2 RamAddress++;
295 2 bytes--;
296 2 }
297 1 *RamAddress=Read8Bit();
298 1 NoAck();
299 1 Stop();
300 1 }
301 //**************************************
302 void save(void)
303 {
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 6
304 1 uchar i;
305 1 uchar xdata *sp;
306 1 sp=&send_buf[1];
307 1 for(i=0;i<7;i++)
308 1 {
309 2 Write24c02(sp,i*16,16);
310 2 sp+=16;
311 2 }
312 1 }
313
314 //**************************
315 //七种颜色渐变
316 //*****************************
317 void col7(uchar SPEEDCOL)
318 {
319 1 uchar i;
320 1 for(i=0;i<255;i++)
321 1 {dis_red[0]=i;
322 2 televise(0);
323 2 delay(SPEEDCOL*200);
324 2 }
325 1 delay1s(SPEEDCOL);
326 1 //----------------------------
327 1 for(i=0;i<255;i++)
328 1 {dis_grn[0]=i;
329 2 televise(0);
330 2 delay(SPEEDCOL*200);
331 2 }
332 1 delay1s(SPEEDCOL);
333 1 //----------------------------
334 1 for(i=255;i>0;i--)
335 1 {dis_red[0]=i;
336 2 televise(0);
337 2 delay(SPEEDCOL*200);
338 2 }
339 1 delay1s(SPEEDCOL);
340 1 //----------------------------
341 1 for(i=0;i<255;i++)
342 1 {dis_blu[0]=i;
343 2 televise(0);
344 2 delay(SPEEDCOL*200);
345 2 }
346 1 delay1s(SPEEDCOL);
347 1 //----------------------------
348 1 for(i=255;i>0;i--)
349 1 {dis_grn[0]=i;
350 2 televise(0);
351 2 delay(SPEEDCOL*200);
352 2 }
353 1 delay1s(SPEEDCOL);
354 1 //----------------------------
355 1 for(i=0;i<255;i++)
356 1 {dis_red[0]=i;
357 2 televise(0);
358 2 delay(SPEEDCOL*200);
359 2 }
360 1 delay1s(SPEEDCOL);
361 1 //---------------------------
362 1 for(i=0;i<255;i++)
363 1 {dis_grn[0]=i;
364 2 televise(0);
365 2 delay(SPEEDCOL*200);
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 7
366 2 }
367 1 delay1s(SPEEDCOL);
368 1 }
369 //**************************
370 //将数据广播发送
371 //*****************************
372 void televise(uchar add)
373 {
374 1 TB81=1;
375 1 SBUF1=add;while(!TI1);TI1=0;
376 1 TB81=0;
377 1 send_del(20);
378 1 SBUF1=dis_red[0];
379 1 while(!TI1);TI1=0;
380 1 send_del(20);
381 1 SBUF1=dis_grn[0];
382 1 while(!TI1);TI1=0;
383 1 send_del(20);
384 1 SBUF1=dis_blu[0];
385 1 while(!TI1);TI1=0;
386 1 send_del(20);
387 1 led=!led;
388 1 }
389 //********************
390 //七彩展开
391 //********************
392 void qczk(uchar speed)
393 {
394 1 uchar i;
395 1 dis_red[0]=255;
396 1 dis_grn[0]=0;
397 1 dis_blu[0]=0;
398 1 for(i=0;i<XX+1;i++)
399 1 {
400 2 televise(i);
401 2 delay(speed*200);
402 2 }
403 1 dis_red[0]=255;
404 1 dis_grn[0]=255;
405 1 dis_blu[0]=0;
406 1 for(i=0;i<XX+1;i++)
407 1 {
408 2 televise(i);
409 2 delay(speed*200);
410 2 }
411 1 dis_red[0]=0;
412 1 dis_grn[0]=255;
413 1 dis_blu[0]=0;
414 1 for(i=0;i<XX+1;i++)
415 1 {
416 2 televise(i);
417 2 delay(speed*200);
418 2 }
419 1 dis_red[0]=0;
420 1 dis_grn[0]=255;
421 1 dis_blu[0]=255;
422 1 for(i=0;i<XX+1;i++)
423 1 {
424 2 televise(i);
425 2 delay(speed*200);
426 2 }
427 1 dis_red[0]=0;
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 8
428 1 dis_grn[0]=0;
429 1 dis_blu[0]=255;
430 1 for(i=0;i<XX+1;i++)
431 1 {
432 2 televise(i);
433 2 delay(speed*200);
434 2 }
435 1 dis_red[0]=255;
436 1 dis_grn[0]=0;
437 1 dis_blu[0]=255;
438 1 for(i=0;i<XX+1;i++)
439 1 {
440 2 televise(i);
441 2 delay(speed*200);
442 2 }
443 1 dis_red[0]=255;
444 1 dis_grn[0]=255;
445 1 dis_blu[0]=255;
446 1 for(i=0;i<XX+1;i++)
447 1 {
448 2 televise(i);
449 2 delay(speed*200);
450 2 }
451 1
452 1 }
453 //**************************
454 //加清除显示内存
455 //*****************************
456 void clear(void)
457 {
458 1 uchar i;
459 1 for(i=0;i<XX;i++)
460 1 {
461 2 dis_red[i]=0;
462 2 dis_grn[i]=0;
463 2 dis_blu[i]=0;
464 2 }
465 1 }
466 //*******************************
467 //左展开
468 //********************************
469 void duun(uchar speed)
470 {
471 1 uchar x;
472 1 for(x=0;x<XX;x++)
473 1 {
474 2 dis_red[x]=x64cr[x];
475 2 dis_grn[x]=x64cg[x];
476 2 dis_blu[x]=x64cb[x];
477 2 sendall();
478 2 delay(speed);
479 2 }
480 1 delay1s(speed);
481 1 }
482 //*******************************
483 //左百叶展开
484 //********************************
485 void zbyzk(uchar speed)
486 {
487 1 uchar x,i;
488 1 for(i=0;i<4;i++)
489 1 {for(x=0;x<XX/4;x++)
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 9
490 2 {
491 3 dis_red[x*4+i]=x64cr[x];
492 3 dis_grn[x*4+i]=x64cg[x];
493 3 dis_blu[x*4+i]=x64cb[x];
494 3 }
495 2 sendall();
496 2 delay1s(speed);
497 2 }
498 1 }
499 //*******************************
500 //左百叶闭幕
501 //********************************
502 void zbybm(uchar speed)
503 {
504 1 uchar x,i;
505 1 for(i=0;i<4;i++)
506 1 {for(x=0;x<XX/4;x++)
507 2 {
508 3 dis_red[x*4+i]=0;
509 3 dis_grn[x*4+i]=0;
510 3 dis_blu[x*4+i]=0;
511 3 }
512 2 sendall();
513 2 delay1s(speed);
514 2 }
515 1 }
516
517 //*******************************
518 //右百叶展开
519 //********************************
520 void ybyzk(uchar speed)
521 {
522 1 uchar x,i;
523 1 for(i=3;i<254;i--)
524 1 {for(x=0;x<XX/4;x++)
525 2 {
526 3 dis_red[x*4+i]=x64cr[x];
527 3 dis_grn[x*4+i]=x64cg[x];
528 3 dis_blu[x*4+i]=x64cb[x];
529 3 }
530 2 sendall();
531 2 delay1s(speed);
532 2 }
533 1 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -