Arduino搭建盲猜数字小游戏

编程入门 行业动态 更新时间:2024-10-08 02:21:08

Arduino搭建盲猜数字<a href=https://www.elefans.com/category/jswz/34/1769974.html style=小游戏"/>

Arduino搭建盲猜数字小游戏

1.本文整理自视频 太极创客 零基础入门学用Arduino 第一部分 合辑.
需要的硬件:一个Arduino Uno开发板、一个200-500欧姆电阻、一个共阴极数码管、一个按键、数条杜邦线、跳线

2.显示数字其实就是显示各个数码管,注意需要在点亮led后进行要给清理显示内容的操作,下面介绍了显示1.2.3的四路。先在setup()里面设置IO为输出模式,然后在loop()里面设置显示。

void setup()
{
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
}void loop()
{
//显示数字1digitalWrite(4,HIGH)digitalWrite(7,HIGH)delay(500)
//清理显示内容digitalWrite(3,LOW)digitalWrite(4,LOW)digitalWrite(5,LOW)digitalWrite(6,LOW)digitalWrite(7,LOW)digitalWrite(8,LOW)digitalWrite(9,LOW)delay(500)
//显示数字2digitalWrite(3,HIGH)digitalWrite(4,HIGH)digitalWrite(5,HIGH)digitalWrite(8,HIGH)digitalWrite(9,HIGH)delay(500)
//清理显示内容digitalWrite(3,LOW)digitalWrite(4,LOW)digitalWrite(5,LOW)digitalWrite(6,LOW)digitalWrite(7,LOW)digitalWrite(8,LOW)digitalWrite(9,LOW)delay(500)
//显示数字3
//…………
//清理显示内容digitalWrite(3,LOW)digitalWrite(4,LOW)digitalWrite(5,LOW)digitalWrite(6,LOW)digitalWrite(7,LOW)digitalWrite(8,LOW)digitalWrite(9,LOW)delay(500)
}
//用while语句来替换掉一些重复的代码
void setup()
{int pinNumber=3;while(pinNumber<=9){pinMode(pinNumber,OUTPUT);pinNumber=pinNumber+1;}
}
//替换掉如下代码
void setup()
{
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
}

3.if和if……else和switch case的区别



4.自定义函数。清除显示函数

void setup()
{int pinNumber=3;while(pinNumber<=9){pinMode(pinNumber,OUTPUT);pinNumber=pinNumber+1;}  randomSeed(analogRead(A0));//产生真的随机数 
}void loop()
{int myNumber;if(!digitalRead(2))//如果2脚为低电平,即按下
{myNumber=getRandomNumber(0,10);//产生随机数字0-9
}  displayNumber(myNumber);//显示数字delay(500);displayClear();//清除显示delay(500);
}
//下面都是自定义的三个函数
int getRandomNumber(int minNumber,int maxNumber)//定义一个返回值是整型的函数
{int randomNumber;//定义整型变量randomNumberrandomNumber=random(minNumber,maxNumber);//运用Arduino自带的函数random取随机值Serial.print("randomNumber = ");//串口打印字符串"randomNumber ="Serial.println(randomNumber);//串口打印randomNumber的值,并换行Serial.println("");//串口打印空白,并换行return randomNumber;//将变量randomNumber的值返回函数
}void displayClear()//定义清除显示的函数
{//清理显示内容digitalWrite(3,LOW);digitalWrite(4,LOW);digitalWrite(5,LOW);digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,LOW);digitalWrite(9,LOW);
}void displayNumber(int ledNumber)//定义通过判断显示0-9
{
switch (ledNumber){case 1://显示数字1digitalWrite(4,HIGH);digitalWrite(7,HIGH);break;case 2://显示数字2digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,HIGH);digitalWrite(8,HIGH);break;    case 3://显示数字3digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);break; ///case 4://显示数字4digitalWrite(4,HIGH);digitalWrite(5,HIGH);digitalWrite(6,HIGH);digitalWrite(7,HIGH);break; case 5://显示数字5digitalWrite(3,HIGH);digitalWrite(5,HIGH);digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);break;case 6://显示数字6digitalWrite(3,HIGH);digitalWrite(5,HIGH);digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);break;case 7://显示数字7digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(7,HIGH);break;case 8://显示数字8digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,HIGH);digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);break;case 9://显示数字9digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,HIGH);digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);break;case 0://显示数字0digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);break;default:digitalWrite(4,HIGH);digitalWrite(5,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH); }   
}

更多推荐

Arduino搭建盲猜数字小游戏

本文发布于:2024-03-07 21:45:46,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1718986.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:小游戏   数字   Arduino

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!