找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2896|回复: 7
打印 上一主题 下一主题
收起左侧

单片机心形流水灯制作视频与源码 希望能激发青年对电子的兴趣!

[复制链接]
跳转到指定楼层
楼主
新手!刚接触单片机,望大神不要拍砖!希望能激发青年对电子的兴趣!不是很完美,见笑

单片机心形流水灯视频:





单片机源程序:
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. void delayms(uint ms)
  4. {
  5.         uint i;
  6.            while(ms--)
  7.                  {
  8.                          for(i=0;i<120;i++);
  9.      }
  10. }
  11. unsigned char code tab0[]={0x3f,0x9f,0xcf,0xe7,0xf3,0xf9,0xfc};
  12. unsigned char code tab1[]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f};
  13. unsigned char code tab2[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};  
  14. unsigned char code tab3[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
  15. unsigned char code tab4[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
  16. unsigned char code tab5[]={0xfa,0xf6,0xee,0xde,0xbe,0x7e};
  17. unsigned char code tab6[]={0x5f,0x6f,0x77,0x7b,0x7d,0x7e};
  18. unsigned char code tab7[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
  19. unsigned char code tab8[]={0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};
  20. unsigned char code tab9[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
  21. unsigned char code tab10[]={0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff};
  22. void main(void)
  23. {
  24.         unsigned char j;unsigned char a;
  25.         /***************************************
  26.         ****************************************/
  27.         for(a=0;a<2;a++)
  28.         {
  29.          for(j=0;j<7;j++)
  30.          {
  31.     P2=tab0[j];
  32.                 delayms(50);
  33.    }
  34.           P2=0xff;
  35.          for(j=0;j<7;j++)
  36.          {
  37.     P3=tab0[j];
  38.                 delayms(50);
  39.    }
  40.           P3=0xff;
  41.          for(j=0;j<7;j++)
  42.          {
  43.     P1=tab0[j];
  44.                 delayms(50);
  45.    }
  46.           P1=0xff;
  47.         
  48.          for(j=0;j<7;j++)
  49.          {
  50.     P0=tab1[j];
  51.                 delayms(50);
  52.    }
  53.          P0=P1=P2=P3=0xff;
  54. }
  55.         /**********************************
  56.         ***********************************/
  57.         for(j=0;j<8;j++)
  58.         {
  59.                 P2=tab3[j];
  60.                 delayms(50);
  61.   }
  62.         for(j=0;j<8;j++)
  63.         {
  64.                 P3=tab3[j];
  65.                 delayms(50);
  66.   }
  67.         for(j=0;j<8;j++)
  68.         {
  69.                 P1=tab3[j];
  70.                 delayms(50);
  71.   }
  72.         for(j=0;j<8;j++)
  73.         {
  74.                 P0=tab2[j];
  75.                 delayms(50);
  76.   }
  77.         
  78.         for(j=0;j<8;j++)
  79.         {
  80.                 P2=tab8[j];
  81.                 delayms(50);
  82.   }
  83.         for(j=0;j<8;j++)
  84.         {
  85.                 P3=tab8[j];
  86.                 delayms(50);
  87.   }
  88.         for(j=0;j<8;j++)
  89.         {
  90.                 P1=tab8[j];
  91.                 delayms(50);
  92.   }
  93.         for(j=0;j<8;j++)
  94.         {
  95.                 P0=tab9[j];
  96.                 delayms(50);
  97.   }
  98.         P0=P1=P2=P3=0xff;delayms(70);
  99.         P0=P1=P2=P3=0;delayms(70);
  100.         P0=P1=P2=P3=0xff;delayms(70);
  101.         P0=P1=P2=P3=0;delayms(70);
  102.         P0=P1=P2=P3=0xff;
  103.         /***********************************
  104.         ************************************/
  105.         for(a=0;a<3;a++)
  106.         {
  107.          for(j=0;j<7;j++)
  108.          {
  109.                 P1=P2=P3=tab0[j];
  110.                 delayms(50);
  111.                 P0=tab1[j];
  112.                 delayms(50);
  113.    }
  114.   }
  115.         for(a=0;a<3;a++)
  116.         {
  117.          for(j=0;j<7;j++)
  118.          {
  119.                 P1=P2=P3=tab1[j];
  120.                 delayms(50);
  121.                 P0=tab0[j];
  122.                 delayms(50);
  123.    }
  124.   }
  125.         /************************************
  126.         ************************************/
  127.          for(j=0;j<8;j++)
  128.          {
  129.                 P1=P2=P3=tab3[j];
  130.                 delayms(50);
  131.                 P0=tab2[j];
  132.                 delayms(50);
  133.    }
  134.          for(j=0;j<8;j++)
  135.          {
  136.                 P1=P2=P3=tab2[j];
  137.                 delayms(50);
  138.                 P0=tab3[j];
  139.                 delayms(50);
  140.          }
  141.          P0=P1=P2=P3=0xff;
  142.          /**********************************
  143.          ************************************/
  144.          for(j=0;j<7;j++)
  145.          {
  146.           P2=P0=tab0[j];
  147.                 delayms(50);
  148.                 P2=P0=0xff;
  149.    }
  150.          
  151.           for(j=0;j<7;j++)
  152.          {
  153.           P3=tab0[j];
  154.                 P1=tab1[j];
  155.                 delayms(50);
  156.          }
  157.          
  158.          for(j=0;j<6;j++)
  159.          {
  160.           P3=tab5[j];
  161.                 P1=tab6[j];
  162.                 delayms(50);
  163.          }
  164.          P1=0x7f;
  165.          P3=0xfe;
  166.           for(j=0;j<8;j++)
  167.          {
  168.           P2=P0=tab7[j];
  169.                 delayms(50);
  170.    }
  171.          P0=P1=P2=P3=0xff;
  172.          delayms(50);
  173. /**********************************
  174. ***********************************/         
  175.          for(j=0;j<8;j++)
  176.          {
  177.                  P2=P0=tab3[j];
  178.                  delayms(50);
  179.    }
  180.          P0=P2=0;
  181.          for(j=0;j<8;j++)
  182.          {
  183.                  P3=tab3[j];P1=tab2[j];
  184.                  delayms(50);
  185.    }
  186.           P0=P1=P2=P3=0xff;
  187. /**************************************
  188. ***************************************/
  189.          for(a=0;a<10;a++)
  190.          {
  191.                  P2=P3=P1=0x55;P0=0xaa;
  192.                  delayms(100);
  193.                  P2=P3=P1=0xaa;P0=0x55;
  194.                  delayms(100);
  195.    }
  196.          P0=P1=P2=P3=0xff;
  197.          /****************************************
  198.          *****************************************/
  199.          for(a=0;a<5;a++)
  200.          {
  201.          P0=P1=P2=P3=0;delayms(80);
  202.          P0=P1=P2=P3=0xff;delayms(80);
  203.          }
  204.          /********************************************
  205.          ********************************************/
  206.          for(j=0;j<8;j++)
  207.         {
  208.                 P2=tab2[j];P3=tab3[j];
  209.                 delayms(50);
  210.   }
  211.         for(j=0;j<8;j++)
  212.         {
  213.                 P0=P1=tab3[j];
  214.                 delayms(50);
  215.   }
  216.         P0=P1=P2=P3=0xff;
  217.         /***********************************************
  218.         ***********************************************/
  219.         for(j=0;j<8;j++)
  220.         {
  221.                 P0=P2=tab10[j];P1=tab3[j];P3=tab2[j];
  222.                 delayms(200);
  223.   }
  224.         for(j=0;j<8;j++)
  225.         {
  226.                 P0=P2=tab3[j];
  227.                 delayms(50);
  228.   }
  229.         P0=P1=P2=P3=0xff;
  230.         for(a=0;a<3;a++)
  231.         {
  232.   P1=P3=0;delayms(100);P1=P3=0xff;P0=P2=0;delayms(100);P0=P2=0xff;delayms(100);
  233.         }
  234.         /************************************************
  235.         *************************************************/
  236.         for(a=0;a<5;a++)
  237.         {
  238.          for(j=0;j<7;j++)
  239.          {
  240.                 P0=tab0[j];P2=tab0[j];
  241.                 delayms(20);
  242.    }
  243.          P0=P2=0xff;
  244.          for(j=0;j<7;j++)
  245.          {
  246.                 P1=tab1[j];P3=tab0[j];
  247.                 delayms(20);
  248.    }
  249.   }
  250.         
  251.         for(a=0;a<5;a++)
  252.         {
  253.          for(j=0;j<7;j++)
  254.          {
  255.                 P0=tab0[j];P2=tab0[j];
  256.                 delayms(10);
  257.    }
  258.          P0=P2=0xff;
  259.          for(j=0;j<7;j++)
  260.          {
  261.                 P1=tab1[j];P3=tab0[j];
  262.                 delayms(10);
  263.    }
  264.   }
  265.         
  266.         for(a=0;a<10;a++)
  267.         {
  268.          for(j=0;j<7;j++)
  269.          {
  270.                 P0=tab0[j];P2=tab0[j];
  271.                 delayms(8);
  272.    }
  273.          P0=P2=0xff;
  274.          for(j=0;j<7;j++)
  275.          {
  276.                 P1=tab1[j];P3=tab0[j];
  277.                 delayms(8);
  278.    }
  279.   }
  280.         
  281.         for(a=0;a<5;a++)
  282.         {
  283.          for(j=0;j<7;j++)
  284.          {
  285.                 P0=tab0[j];P2=tab0[j];
  286.                 delayms(30);
  287.    }
  288.          P0=P2=0xff;
  289.          for(j=0;j<7;j++)
  290.          {
  291.                 P1=tab1[j];P3=tab0[j];
  292.                 delayms(30);
  293.    }
  294.   }
  295.   P1=P3=0xff;
  296. }
复制代码

评分

参与人数 2黑币 +58 收起 理由
ko44 + 8 延伸出来的创意,还行.
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:310567 发表于 2018-4-29 16:52 | 只看该作者
非常喜欢这种设计,但是现在看不懂
回复

使用道具 举报

板凳
ID:310567 发表于 2018-4-29 16:52 | 只看该作者
认真学习,希望几天后自己能看懂
回复

使用道具 举报

地板
ID:318985 发表于 2018-4-29 20:53 | 只看该作者
哇  我可以借鉴你的帖子去完成实习论文吗?
回复

使用道具 举报

5#
ID:319663 发表于 2018-5-1 06:48 | 只看该作者
有去買了套件,回來製作,再好好的來研究
回复

使用道具 举报

6#
ID:112386 发表于 2018-5-3 16:43 | 只看该作者
创意很不错啊,花样很多。
回复

使用道具 举报

7#
ID:272613 发表于 2018-5-14 14:43 | 只看该作者
了解了解
回复

使用道具 举报

8#
ID:353235 发表于 2018-7-1 01:44 来自手机 | 只看该作者
图纸呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表