算数闹钟
Yanglibin@microduino.cc(讨论 | 贡献)2015年11月16日 (一) 09:18的版本 (Created page with "{| style="width: 800px;" |- | ==目的== 搭建的是一个闹钟,通过摇杆来设置闹钟时间,按键用来设置系统时间和做算数选择题。 File: MusicBox...")
目的搭建的是一个闹钟,通过摇杆来设置闹钟时间,按键用来设置系统时间和做算数选择题。 工作方式检测Joystick摇杆方向,Y轴方向:往上短按闹钟的时增加,长按控制闹钟开启或关闭,往下短按闹钟的时减少。X轴方向:做摇动分钟加,右摇动,分钟减。 在闹钟关闭情况下,按键1设置系统时间的小时增加,按键2设置系统时间的小时减小;按键3设置系统时间的分钟增加,键4设置系统时间的分钟减小。 在闹钟开启情况下则作为A,B,C,D四个选择题的按钮。 设备
搭建硬件
代码下载文件:Music clock-Calculation.zip 代码说明
int alarm_hour = 19;
int alarm_minute = 45;
if (alarm)
{
if (alarm_switch == true)
audio_play();
else
audio_pause();
}
if (!down && alarm_switch)
{
num_one = random(0, 100);
num_two = random(0, 100);
data_choose = random(0, 4);
if (data_choose == 0)
{
num_data[0] = num_one + num_two;
num_data[1] = num_one + num_two - 10;
num_data[2] = num_one + num_two + 10;
num_data[3] = num_one + num_two + 1;
}
if (data_choose == 1)
{
num_data[0] = num_one + num_two - 10;
num_data[1] = num_one + num_two;
num_data[2] = num_one + num_two + 10;
num_data[3] = num_one + num_two - 1;
}
if (data_choose == 2)
{
num_data[0] = num_one + num_two + 10;
num_data[1] = num_one + num_two - 10;
num_data[2] = num_one + num_two ;
num_data[3] = num_one + num_two - 1;
}
if (data_choose == 3)
{
num_data[0] = num_one + num_two + 10;
num_data[1] = num_one + num_two - 10;
num_data[2] = num_one + num_two + 1;
num_data[3] = num_one + num_two;
}
down = true;
}
if (key_num > 0)
{
if (key_num == data_choose + 1 )
{
onec_change -= 1;
down = false;
}
else
onec_change += 1;
}
结果通过触碰开关来设置时间,摇杆来设置闹钟时间及闹钟开关状态。你也可以通过乐高搭建一个漂亮的外观。 视频 |