📄 dianzishizhong.txt
字号:
dip[0] = hour / 10;
dip[1] = hour % 10;
dip[2] = minute / 10;
dip[3] = minute % 10;
dip[4] = second / 10;
dip[5] = second % 10;
}
set_sec = 0;
set_min = 0;
set_hour = 0;
run = 1;
}
}
else if(!inc) // “ + ”
{
if(run)
{
if(ring0_see) ring0_lock = 1; // 关闭闹铃1
if(ring1_see) ring1_lock = 1; // 关闭闹铃2
if(ring2_see) ring2_lock = 1; // 关闭闹铃3
}
else
{
if(set_sec)
{
if(++dip[5] > 9)
{
dip[5] = 0;
if(++dip[4] > 5)
dip[4] = 0;
}
}
else if(set_min)
{
if(++dip[3] > 9)
{
dip[3] = 0;
if(++dip[2] > 5)
dip[2] = 0;
}
}
else if(set_hour)
{
if(dip[0] < 2)
{
if(++dip[1] > 9)
{
dip[1] = 0;
++dip[0];
}
}
else if(dip[0] == 2)
{
if(++dip[1] > 3)
{
dip[1] = 0;
dip[0] = 0;
}
}
}
hour_before = dip[0]*10 + dip[1];
minute_before = dip[2]*10 + dip[3];
second_before = dip[4]*10 + dip[5];
}
}
else if(!ring) // 闹铃键
{
if(run)
{
hour_ring_before = hour;
minute_ring_before = minute;
second_ring_before = second;
if(time_recall)
{
ring0_see = 1;
ring1_see = 0;
ring2_see = 0;
time_recall = 0;
ring_see = 1;
set_ring0 = 1;
set_ring1 = 0;
set_ring2 = 0;
}
else if(ring0_see)
{
ring0_see = 0;
ring1_see = 1;
ring2_see = 0;
time_recall = 0;
ring_see = 1;
set_ring0 = 0;
set_ring1 = 1;
set_ring2 = 0;
}
else if(ring1_see)
{
ring0_see = 0;
ring1_see = 0;
ring2_see = 1;
time_recall = 0;
ring_see = 1;
set_ring0 = 0;
set_ring1 = 0;
set_ring2 = 1;
}
else if(ring2_see)
{
hour = hour_set_before;
minute = minute_set_before;
second = second_set_before;
if(count_second < 60)
second = second + count_second % 60;
if(second > 60);
{
second = second % 60;
minute = minute + second / 60;
}
if(count_second > 60)
{
minute = minute + count_second / 60;
second = second + count_second % 60;
}
dip[0] = hour / 10;
dip[1] = hour % 10;
dip[2] = minute / 10;
dip[3] = minute % 10;
dip[4] = second / 10;
dip[5] = second % 10;
ring0_see = 0;
ring1_see = 0;
ring2_see = 0;
set_ring0 = 0;
set_ring1 = 0;
set_ring2 = 0;
time_recall = 1;
ring_see = 0;
count_second = 0;
}
}
else
{
if(!store_ring || (set_ring0 && !set_ring1 && !set_ring2)) // 存储闹铃1
{
ring0 = hour_before*100 + minute_before;
store_ring0 = 1;
store_ring1 = 0;
store_ring2 = 0;
store_ring = 1;
hour = hour_set_before;
minute = minute_set_before;
second = second_set_before;
if(count_second < 60)
second = second + count_second % 60;
if(second > 60);
{
second = second % 60;
minute = minute + second / 60;
}
if(count_second > 60)
{
minute = minute + count_second / 60;
second = second + count_second % 60;
}
dip[0] = hour / 10;
dip[1] = hour % 10;
dip[2] = minute / 10;
dip[3] = minute % 10;
dip[4] = second / 10;
dip[5] = second % 10;
set_sec = 0;
set_min = 0;
set_hour = 0;
set_ring = 0;
count_second = 0;
run = 1;
}
else if(store_ring0 || (!set_ring0 && set_ring1 && !set_ring2)) // 存储闹铃2
{
ring1 = hour_before*100 + minute_before;
store_ring0 = 0;
store_ring1 = 1;
store_ring2 = 0;
store_ring = 1;
hour = hour_set_before;
minute = minute_set_before;
second = second_set_before;
if(count_second < 60)
second = second + count_second % 60;
if(second > 60);
{
second = second % 60;
minute = minute + second / 60;
}
if(count_second > 60)
{
minute = minute + count_second / 60;
second = second + count_second % 60;
}
dip[0] = hour / 10;
dip[1] = hour % 10;
dip[2] = minute / 10;
dip[3] = minute % 10;
dip[4] = second / 10;
dip[5] = second % 10;
set_sec = 0;
set_min = 0;
set_hour = 0;
set_ring = 0;
count_second = 0;
run = 1;
}
else if(store_ring1 || (!set_ring0 && !set_ring1 && set_ring2)) // 存储闹铃3
{
ring2 = hour_before*100 + minute_before;
store_ring0 = 0;
store_ring1 = 0;
store_ring2 = 1;
hour = hour_set_before;
minute = minute_set_before;
second = second_set_before;
if(count_second < 60)
second = second + count_second % 60;
if(second > 60);
{
second = second % 60;
minute = minute + second / 60;
}
if(count_second > 60)
{
minute = minute + count_second / 60;
second = second + count_second % 60;
}
dip[0] = hour / 10;
dip[1] = hour % 10;
dip[2] = minute / 10;
dip[3] = minute % 10;
dip[4] = second / 10;
dip[5] = second % 10;
set_sec = 0;
set_min = 0;
set_hour = 0;
set_ring = 0;
count_second = 0;
run = 1;
}
else if(store_ring2 || (!ring_full && !store_ring2))
{
store_ring0 = 0;
store_ring1 = 0;
store_ring2 = 0;
dip[0] = 14;
dip[1] = 25;
dip[2] = 25;
dip[3] = 21;
dip[4] = 25;
dip[5] = 0;
hour = dip[0]*10 + dip[1];
minute = dip[2]*10 + dip[3];
second = dip[4]*10 + dip[5];
ring_full = 1;
}
else
{
hour = hour_set_before;
minute = minute_set_before;
second = second_set_before;
if(count_second < 60)
second = second + count_second % 60;
if(second > 60);
{
second = second % 60;
minute = minute + second / 60;
}
if(count_second > 60)
{
minute = minute + count_second / 60;
second = second + count_second % 60;
}
dip[0] = hour / 10;
dip[1] = hour % 10;
dip[2] = minute / 10;
dip[3] = minute % 10;
dip[4] = second / 10;
dip[5] = second % 10;
count_second = 0;
run = 1;
ring_full = 0;
}
}
}
dspplay();
}
void delay()
{
int i;
for(i = 0; i < 30000; i++)
{
;
;
}
}
void change()
{
if(++status > 1)
status = 0;
if(status == 0)
led0 = 1;
if(status == 1)
led0 = 0;
}
PUBLIC _DSP
AA SEGMENT CODE
RSEG AA
_DSP: MOV A,R7
MOV R2,#8
DSP1: CLR P0.0
RRC A
MOV P0.1,C
SETB P0.0
DJNZ R2,DSP1
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -