pumpkin_lion 2021-10-06 10:57 采纳率: 80%
浏览 145
已结题

arduino中case判断不能用


int color;
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  pinMode(4,OUTPUT);
  pinMode(8,OUTPUT);
  pinMode(12,OUTPUT);

}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("which color led you want to light?");

  while(Serial.available()==0){
    
  }
  color = Serial.parseInt();
  switch(color){
    case 1:
    digitalWrite(4,1);
    digitalWrite(8,0);
    digitalWrite(12,0);

    case 2:
    digitalWrite(4,0);
    digitalWrite(8,1);
    digitalWrite(12,0);

    case 3:
    digitalWrite(4,0);
    digitalWrite(8,0);
    digitalWrite(12,1);

    default:
    digitalWrite(4,1);
    digitalWrite(8,1);
    digitalWrite(12,1);
    Serial.println("wrong input!");
    
    
  }
}

arduino的一个小程序,输入不同数字亮不同的灯,为什么case判断不能用?
不管输入1或2或3都只执行默认。

img

  • 写回答

2条回答 默认 最新

  • qfl_sdu 2021-10-06 11:01
    关注

    case 后面要加break语句
    case 1:
    //你的代码
    break; //加这句话
    case 2:
    //你的代码
    break;//加这句话
    case 3:
    //你的代码
    break;//加这句话
    default:
    //你的代码
    break;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月14日
  • 已采纳回答 10月6日
  • 创建了问题 10月6日

悬赏问题

  • ¥15 在误装Windows server2019 后如何利用Windows.old恢复?
  • ¥20 代码实现状态连接包过滤防火墙的设计与实现
  • ¥15 vscode的红色箭头爆红和has no default export报错
  • ¥15 关于#sql#的问题:#情况描述 在用vs对项目进行调试时,出现找不到网络路径,然后查看SQL配置工具,发现SQL服务显示远程调用过程失败(相关搜索:防火墙)
  • ¥15 eNSP中基于默认路由及浮动路由的公司与分部互联和校园网综合项目
  • ¥15 主要进行描述泥浆在管路不同区段泥浆的密度不相同,泥浆的密度有高有低,此时管路的摩阻分布需要怎么计算,(标签-matlab)
  • ¥40 通过编制程序计算圆管内层流充分发展对流换热,参数如图5-4,以及公式5-16所示,要求用表5-6对程序计算准确性进行验证
  • ¥20 该学习哪个编程语言? AI会取代程序员吗?
  • ¥15 ensp如何拼通IP地址
  • ¥15 saber软件导入Ibis模型报错