找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4822|回复: 6
收起左侧

51单片机 用按键按1次亮1个灯 不能通过Keil输出生成代码劳烦各位看看那里出问题

[复制链接]
回帖奖励 5 黑币 回复本帖可获得 5 黑币奖励! 每人限 1 次
ID:17109 发表于 2019-2-27 11:16 | 显示全部楼层 |阅读模式
本帖最后由 ll13536121668 于 2019-2-27 11:18 编辑

按1次亮1个灯.rar (581 Bytes, 下载次数: 11)
回复

使用道具 举报

ID:330198 发表于 2019-2-27 11:52 | 显示全部楼层
30190225124250160.png 就这里的问题。
回复

使用道具 举报

ID:478943 发表于 2019-2-27 12:15 | 显示全部楼层
软件设置有没有设置正确呢?
回复

使用道具 举报

ID:213173 发表于 2019-2-27 12:30 | 显示全部楼层
错误:sbit led1  3^6;     // LED1接P1.7脚
正确:sbit led1 = P3^6;     // LED1接P3.6脚
回复

使用道具 举报

ID:382826 发表于 2019-2-27 12:32 | 显示全部楼层
#在sbit led1  3^6;     // LED1接P1.7脚  应该是P3^6
回复

使用道具 举报

ID:432823 发表于 2019-2-27 14:27 | 显示全部楼层
#include<reg52.h>   
sbit led1 =P3^6;     // LED1接P1.7脚
sbit led2  = P3^5;     // LED2接P1.6脚
sbit led3  = P3^4;     // LED3接P1.5脚
sbit led4  = P3^3;     // LED4接P1.4脚
sbit button = P1^3;     // 按钮接P1.0脚
void delay(unsigned char ms)// 延时函数
{
unsigned char i,j;
for(i=ms;i>0;i--)
  for(j=110;j>0;j--);
}  


void main(void)
{
unsigned  char key=0;        //按钮状态判断变量

//led1=led2=led3=led4=1;          //led初始均为关闭

button=1;          //按钮初始化为按下
while(1){

        if(button==0)
        {
          delay(30);

          if(button==0)
          {   
        key+=1;
          while(button==1);
          if(key==6)
          key=0;
          }
  }
  switch(key){         //根据key值开关相应引脚的led灯
   case 1:
    led1=0;
    break;
   case 2:
    led2=0;
    break;
   case 3:
    led3=0;
    break;
   case 4:
    led4=0;
    break;
        case 5:
    led1=1;
led2=1;
led3=1;
led4=1;
    break;
   default:
    break;
  }

}
}
回复

使用道具 举报

ID:481945 发表于 2019-2-28 09:40 | 显示全部楼层
错误:sbit led1  3^6;     // LED1接P1.7脚
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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