找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机k1按键两个红灯交替点亮的源代码

[复制链接]
跳转到指定楼层
楼主
ID:455664 发表于 2019-3-8 10:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机源程序如下:
  1. /*****************************************************************
  2. *文件名称:        main.c
  3. *说 明:          按下且释放K1,2个红灯亮交替
  4. *单片机:STC89C52,晶振频率:11.0592MHz
  5. *版 本:V1.0  
  6. *作 者:lxs
  7. *时 间:2018-10-31
  8. *****************************************************************/
  9. #include <reg52.h>
  10. #include "c51type.h"
  11. #include "delay.h"

  12. #define  ON   0
  13. #define  OFF  1

  14. sbit LED1 = P1^0;
  15. sbit LED2 = P1^1;

  16. sbit KEY1 = P3^4;


  17. u8 flag=0;   
  18. u8 light=0;   

  19. void main()
  20. {       
  21.     P1 = 0xFF;       //将所用LED熄灭
  22.     while (1)                  //主循环程序无限循环执行该循环体语句
  23.     {
  24.                         if(flag==0)
  25.                         {       
  26.                                 if(KEY1==0)
  27.                                 {
  28.                                         DelayXms(10);
  29.                                         if(KEY1==0)
  30.                                         {
  31.                                                 flag=1;              //按键按下标志
  32.                                         }
  33.                                 }
  34.                         }       
  35.                         else
  36.                         {
  37.                                 if(KEY1==1)
  38.                                 {
  39.                                         DelayXms(10);
  40.                                         if(KEY1==1)
  41.                                         {
  42.                                                 flag=0;         //按键弹起标志
  43.                                                 if(light==0)
  44.                                                 {
  45.                                                         while(1)
  46.                                                         {
  47.                                                         LED1=ON;
  48.                                                         DelayXms(1000);
  49.                                                         LED1=OFF;
  50.                                                         LED2=ON;
  51.                                                         DelayXms(1000);
  52.                                                         LED2=OFF;
  53.                                                         light=1;   //点亮标志
  54.                                                         }                                                               
  55.                                                 }
  56.                                                 else
  57.                                                 {
  58.                                                         LED1=OFF;
  59.                                                         LED2=OFF;
  60.                                                         light=0;        //熄灭标志
  61.                                                 }
  62.                                         }
  63.                                 }
  64.                         }       
  65.         }
  66. }
复制代码

所有资料51hei提供下载:
7.k1按键两个红灯交替点亮.rar (26.83 KB, 下载次数: 5)


评分

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

查看全部评分

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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