找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机流水灯P0~P3口32位VD闪动实验仿真源码

[复制链接]
跳转到指定楼层
楼主
流水灯全套资料分享

仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. /******************************************************/
  2. /*P0~P3口32位VD闪动实验                                                          */
  3. /*目标器件:AT89S51                                                              */
  4. /*晶振:12MHZ                                                                          */
  5. /*编译环境:Keil 7.06                                                          */
  6. /*****************************************************/

  7. #include <reg51.h>

  8. sbit VD9  = P0^0;
  9. sbit VD10 = P0^1;
  10. sbit VD11 = P0^2;
  11. sbit VD12 = P0^3;
  12. sbit VD13 = P0^4;
  13. sbit VD14 = P0^5;
  14. sbit VD15 = P0^6;
  15. sbit VD16 = P0^7;

  16. sbit VD1  = P1^0;
  17. sbit VD2  = P1^1;
  18. sbit VD3  = P1^2;
  19. sbit VD4  = P1^3;
  20. sbit VD5  = P1^4;
  21. sbit VD6  = P1^5;
  22. sbit VD7  = P1^6;
  23. sbit VD8  = P1^7;

  24. sbit VD17 = P3^0;
  25. sbit VD18 = P3^1;
  26. sbit VD19 = P3^2;
  27. sbit VD20 = P3^3;
  28. sbit VD21 = P3^4;
  29. sbit VD22 = P3^5;
  30. sbit VD23 = P3^6;
  31. sbit VD24 = P3^7;

  32. sbit VD25  = P2^0;
  33. sbit VD26  = P2^1;
  34. sbit VD27  = P2^2;
  35. sbit VD28  = P2^3;
  36. sbit VD29  = P2^4;
  37. sbit VD30  = P2^5;
  38. sbit VD31  = P2^6;
  39. sbit VD32  = P2^7;

  40. void delay()
  41. {
  42.         unsigned char i,j;
  43.         for(i=0;i<255;i++)
  44.           for(j=0;j<255;j++);
  45. }

  46. void main()
  47. {
  48.         while(1)
  49.         {
  50. //P1口循环亮
  51. /*                VD32= 1; VD1=0;// VD32灭 VD1亮
  52.                 delay();
  53.                 VD1 = 1; VD2=0;// VD1灭 VD2亮
  54.                 delay();
  55.         VD2= 1; VD3=0;// VD2灭 VD3亮
  56.                 delay();
  57.                 VD3 = 1; VD4=0;// VD3灭 VD4亮
  58.                 delay();               
  59.                 VD4 = 1; VD5=0;// VD4灭 VD5亮
  60.                 delay();
  61.                 VD5= 1; VD6=0;// VD5灭 VD6亮
  62.                 delay();
  63.                 VD6 = 1; VD7=0;// VD6灭 VD7亮
  64.                 delay();               
  65.                 VD7= 1; VD8=0;// VD7灭 VD8亮
  66.                 delay();
  67.                 */
  68. //P0口循环亮
  69.                 VD8 = 1; VD9=0;// VD8灭 VD9亮
  70.                 delay();
  71.                 VD9= 1; VD10=0;// VD9灭 VD10亮
  72.                 delay();
  73.                 VD10= 1; VD11=0;// VD10灭 VD11亮
  74.                 delay();               
  75.                 VD11 = 1; VD12=0;// VD11灭 VD12亮
  76.                 delay();
  77.                 VD12= 1; VD13=0;// VD12灭 VD13亮
  78.                 delay();
  79.                 VD13 = 1; VD14=0;// VD13灭 VD14亮
  80.                 delay();               
  81.                 VD14= 1; VD15=0;// VD14灭 VD15亮
  82.                 delay();
  83.                 VD15 = 1; VD16=0;// VD15灭 VD16亮
  84.                 delay();
  85. //P3口循环亮
  86. /*
  87.                 VD16 = 1; VD17=0;// VD16灭 VD17亮
  88.                 delay();
  89.                 VD17= 1; VD18=0; // VD17灭 VD18亮
  90.                 delay();
  91.                 VD18 = 1; VD19=0; // VD18灭 VD19亮
  92.                 delay();
  93.         VD19= 1; VD20=0; // VD19灭 VD20亮
  94.                 delay();
  95.                 VD20 = 1; VD21=0; // VD20灭 VD21亮
  96.                 delay();               
  97.                 VD21 = 1; VD22=0; // VD21灭 VD22亮
  98.                 delay();
  99.                 VD22= 1; VD23=0; // VD22灭 VD23亮
  100.                 delay();
  101.                 VD23 = 1; VD24=0; // VD23灭 VD24亮
  102.                 delay();               
  103.        
  104. //P2口循环亮
  105.                 VD24= 1; VD25=0; // VD24灭 VD25亮
  106.                 delay();
  107.                 VD25 = 1; VD26=0;// VD25灭 VD26亮
  108.                 delay();
  109.                 VD26= 1; VD27=0;// VD26灭 VD27亮
  110.                 delay();
  111.                 VD27= 1; VD28=0;// VD27灭 VD28亮
  112.                 delay();               
  113.                 VD28 = 1; VD29=0;// VD28灭 VD29亮
  114.                 delay();
  115.                 VD29= 1; VD30=0;// VD29灭 VD30亮
  116.                 delay();
  117.                 VD30 = 1; VD31=0;// VD30灭 VD31亮
  118.                 delay();               
  119.                 VD31= 1; VD32=0;// VD31灭 VD32亮
  120.                 delay();        */
  121.         }       
  122. }
复制代码

所有资料51hei提供下载:
流水灯.zip (66.16 KB, 下载次数: 16)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

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

使用道具 举报

沙发
ID:758035 发表于 2020-5-22 10:05 | 只看该作者
为什么不用循环来写啊,这么写太长了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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