找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5668|回复: 1
收起左侧

单片机控制发光二极管状态反转的proteus仿真与代码

[复制链接]
ID:417749 发表于 2018-10-30 09:57 | 显示全部楼层 |阅读模式
通过proteus画出硬件图,编写C51语言程序并调试:
在单片机P2.0引脚处接有一个发光二极管(低电平驱动)。采用外中断1中断方式设计实现按键压下一次,发光二极管状态反转一次的功能。


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

单片机源程序如下:
  1. #include<reg51.h>
  2. sbit P10=P1^0;
  3. sbit P11=P1^1;
  4. sbit P12=P1^2;
  5. sbit P13=P1^3;
  6. sbit P14=P1^4;
  7. sbit P15=P1^5;
  8. sbit P16=P1^6;
  9. sbit P17=P1^7;
  10. sbit P20=P2^0;
  11. sbit P21=P2^1;
  12. sbit P22=P2^2;
  13. sbit P23=P2^3;
  14. sbit P24=P2^4;
  15. sbit P25=P2^5;
  16. sbit P26=P2^6;
  17. sbit P27=P2^7;
  18. void delay(unsigned int t)
  19. {
  20. unsigned int i;
  21. for(;t>0;t--)
  22. {
  23. for(i=0;i<124;i++);
  24. }
  25. }
  26. void main()
  27. {
  28.         while(1)
  29.         {
  30.                 if(P10==0)
  31.                 {
  32.                   delay(100);
  33.                   if(P10==0)
  34.                   {
  35.                     P20=!P20;
  36.                   delay(100);
  37.                   }
  38.                 }
  39.             if(P11==0)
  40.                 {
  41.                   delay(100);
  42.                   if(P11==0)
  43.                   {
  44.                     P21=!P21;
  45.                     delay(100);
  46.                   }
  47.                 }
  48.                 if(P12==0)
  49.                 {
  50.                   delay(100);
  51.                   if(P12==0)
  52.                   {
  53.                     P22=!P22;
  54.                     delay(100);
  55.                   }
  56.                 }
  57.                 if(P13==0)
  58.                 {
  59.                   delay(100);
  60.                   if(P13==0)
  61.                   {
  62.                     P23=!P23;
  63.                     delay(100);
  64.                   }
  65.                 }
  66.                 if(P14==0)
  67.                 {
  68.                   delay(100);
  69.                   if(P14==0)
  70.                   {
  71.                     P24=!P24;
  72.                     delay(100);
  73.                   }
  74.                 }
  75.                 if(P15==0)
  76.                 {
  77.                   delay(100);
  78.                   if(P15==0)
  79.                   {
  80.                     P25=!P25;
  81.                     delay(100);
  82.                   }
  83.                 }
  84.                 if(P16==0)
  85.                 {
  86.                   delay(100);
  87.                   if(P16==0)
  88.                   {
  89.                     P26=!P26;
  90.                     delay(100);
  91.                   }
  92.                 }
  93.                 if(P17==0)
  94.                 {
  95.                   delay(100);
  96.                   if(P17==0)
  97.                   {
  98.                     P27=!P27;
  99.                     delay(100);
  100.                   }
  101.                 }

  102.         }
  103. }
复制代码

所有资料51hei提供下载:
JIAO4.rar (48.4 KB, 下载次数: 14)
回复

使用道具 举报

ID:836962 发表于 2020-12-17 19:57 | 显示全部楼层
最上面那个三角形是“电源”还是“地”啊?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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