完善猜数字代码

两个函数区别

Serial.println() 和Serial.print()

Serial.print();
Serial.println();

后者多一个换行符 (?


 每点击一次打开一次串口监视器,都会进行一次复位的操作。但是random的每一次数字都是一样的,并不表现出“随机”。


void setup() {
  Serial.begin(9600); 
 int pinNumber = 3 ;
      while(pinNumber <10 )
      {
        pinMode(pinNumber,OUTPUT);
      }   //设置引脚;
}

//主函数
void loop() {
    int RadomNumber=GetNumber(0,10);
    displayNumber(RadomNumber);
    delay(10);
    displayClear();
    delay(10);
}

int GetNumber(int min, int max)//产生随机数字,并通过串口通信进行检查
{
  int randomNumber;
  int i =1;

  while(i<6)//总共取五组数,每次在串口显示次数和应该显示的数字。
  {
     i++;
    randomNumber = random(min,max);
    displayNumber(randomNumber);
    delay(100);
    displayClear();
    delay(100);  
     
      Serial.print("i =");
      Serial.println(i);
      Serial.print("randomNumber =");//输出字符串
      Serial.println(randomNumber);
      Serial.println("") ; 
  }
  return randomNumber ; 
}

void displayClear()//清屏函数
{
        digitalWrite(3,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(6,HIGH);
        digitalWrite(7,HIGH);
        digitalWrite(8,HIGH);
        digitalWrite(9,HIGH);
}

void displayNumber(int LedNumber)//输出图案。
{

    switch(LedNumber)
    {
      case 1 :
        digitalWrite(4,HIGH);
        digitalWrite(7,HIGH);
        break; 
      case 2 :
        digitalWrite(3,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(9,HIGH);
        digitalWrite(8,HIGH);
        break;
      case 3 :
        digitalWrite(3,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(7,HIGH);
        digitalWrite(8,HIGH);
        break;
      case 4 :
        digitalWrite(6,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(7,HIGH);
        break;
      case 5 :
        digitalWrite(3,HIGH);
        digitalWrite(6,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(7,HIGH);
        digitalWrite(8,HIGH);
        break;
      case 6 :
        digitalWrite(3,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(6,HIGH);
        digitalWrite(9,HIGH);
        digitalWrite(7,HIGH);
        digitalWrite(8,HIGH);
        break;
      case 7 :
        digitalWrite(3,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(6,HIGH);
        break;
      case 8 :
        digitalWrite(3,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(6,HIGH);
        digitalWrite(7,HIGH);
        digitalWrite(8,HIGH);
        digitalWrite(9,HIGH);
        break;
      case 9 :
        digitalWrite(3,HIGH);
        digitalWrite(5,HIGH);
        digitalWrite(6,HIGH);
        break;
      case 0 :
        digitalWrite(3,HIGH);
        digitalWrite(4,HIGH);
        digitalWrite(6,HIGH);
        digitalWrite(7,HIGH);
        digitalWrite(8,HIGH);
        digitalWrite(9,HIGH);
      break;
      defult :
        digitalWrite(5,HIGH);
        break;
    }
}

有关于RandomSeed()函数;

此处读取A0引脚的模拟输入


总结收获 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值