首页 > 其他 > 详细

流水灯

时间:2019-09-29 20:15:23      阅读:89      评论:0      收藏:0      [点我收藏+]

关于流水灯,下面有我用过的三种方法,供参考。

C语言

方法一:

 1 #include <at89x51.h>  //head file
 2 #include<stdio.h>
 3 unsigned long a;
 4 
 5 void delay(void) //延时函数
 6 
 7 {
 8 
 9 unsigned char h,i,j,k;
10 
11 for(h=5;h>0;h--)
12     for(i=4;i>0;i--)
13         for(j=116;j>0;j--)
14             for(k=50;k>0;k--);
15 
16 }
17 
18 void main()
19 {    
20     int c[8]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
21     int i;
22     while(1){
23     i=0;
24     while(i<=7)
25     {
26         P2=c[i];        
27         i++;
28         delay();    
29     }        
30     }
31   
32 }

方法二:

 1 #include<at89x51.h>
 2 #include<intrins.h>
 3 
 4 
 5 void delay(void)
 6 {
 7 
 8 unsigned char h,i,j,k;
 9 
10 for(h=5;h>0;h--)
11     for(i=4;i>0;i--)
12         for(j=116;j>0;j--)
13             for(k=50;k>0;k--);
14 }
15 void main(){
16     int i;
17     i=0;
18     P2=0xFE;
19     while(1)
20     {
21           P2=0xFE;
22           i=0;
23             while(i<8)
24             {
25                 delay();
26                 P2=_crol_(P2,1);
27                 i++;
28             }
29         }
30 }
31     

汇编语言:

 1 ORG 0000H
 2     MAIN:MOV P2,#0xFE
 3     MOV A,P2
 4     LOOP:    RL A
 5             MOV P2,A
 6     DELAY: MOV R7,#250 ;
 7     D1: MOV R6,#250 
 8     D2: DJNZ R6,D2 ;
 9     DJNZ R7,D1 ;        
10     JMP LOOP
11     END

 

流水灯

原文:https://www.cnblogs.com/xxmrecord/p/11609252.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!