使用Arduino时,方便的串口函数使串口解析过程非常简单,通过Serial.parseInt()或Serial.parseFloat()结合Switch() Case 分支语句可以完成串口控制。主程序中使用:

void loop() 
{
  Serial_analysis();
}



void Serial_analysis()//串口控制程序
{
    if (Serial.available() > 0) 
 {
   cmd = Serial.read(); 
   Sim= Serial.parseInt();
   if (Serial.read() == '\r');//回车符
      {
        Serial.print(cmd);
        Command_transfer();
        }
 }
} 

串口解析方法使用Switch Case

void  Command_transfer()//串口解析程序
{ 
  Serial.print(cmd); 
  switch(cmd)
  { 
    case 'V':
      velocity0=Sim;
      Serial.print(velocity0); 
      break; //0号泵运行速度控制
      
    case 'v':
      velocity1=Sim;
      Serial.print(velocity1); 
      break; //运行速度控制
      }
    

使用者这种方法比较简单易用,只是通讯设计时通常使用一个字母加有效数字的方法,例如V100,D35等等。
另外在使用时注意,不要在case 语句中定义临时变量,会导致无法进入其后面的case语句。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐