Arduino 数字骰子
组件和用品
 | | × | 1 | |
 | | × | 1 | |
 | Adafruit 标准 LCD - 16x2 蓝底白字 | | × | 1 | |
 | | × | 1 | |
 | | × | 1 | |
 | | × | 1 | |
 | | × | 1 | |
关于这个项目
构思
这个项目是基于我已经厌倦了我的普通标准游戏骰子的想法。所以,为了解决我的无聊问题,我决定使用我的 Arduino LCD 和标准按钮(带有一个分线板),我让 Arduino 读取按钮板上信号引脚的状态为高或低(如果按钮没有按下则为高) )(如果不是,则为低)。根据状态,它要么停留在主屏幕上,要么显示骰子正在滚动,然后打印出 1-6 中的两个随机数(就像骰子一样)。
代码
代码Arduino
#include long randNumber;int Led =13; //定义 LED portint Shock =2; //定义冲击portint val;//定义数字变量val//用接口引脚的编号初始化库LiquidCrystal lcd(7, 8, 9, 10, 11, 12 );byte customChar[] ={ B00000, B00000, B11111, B11001, B10101, B10011, B11111, B00000};void setup(){ lcd.begin(16, 2); lcd.createChar(0, customChar);液晶显示器(); pinMode(LED,输出); //定义LED为输出端口randomSeed(analogRead(0)); pinMode(冲击,输入); //定义震动传感器为输出端口lcd.write(byte(0)); lcd.print("数字骰子");液晶显示器(字节(0));延迟(1000);}void loop(){ val =digitalRead(Shock); //读取分配给val的数字接口3的值 if (val ==LOW) //当震动传感器有信号时执行以下操作 { lcd.clear(); lcd.print("掷骰子...");延迟(4000);液晶显示器(); lcd.setCursor(0, 0); randNumber =随机(1,7); lcd.print("骰子 1 ="); lcd.print(randNumber); lcd.setCursor(0, 1); randNumber =随机(1,7); lcd.print("骰子2 ="); lcd.print(randNumber); }延迟(150);}
示意图