📄 clock.c
字号:
/*********************************************************************************************************
* clock test
* QZhao,2007
* All Rights Reserved
* File : clock.c
* By : QZhao
* Contact : zq1987731@163.com
*********************************************************************************************************/
/*★★★可调用函数:clock(时,分,秒)->指针式时钟显示函数*/
/*********************************************************************************************************
*
* 指针式时钟绘图函数
* 人口参数:clock(时,分,秒)
* 返回值:成功则TRUE
* 功能:在LCD屏上画出时分秒针
*
*********************************************************************************************************/
bool INDEX(uchar x,uchar y,uchar z)
{
uchar a,b,c;
CLEAR_HALF(); //清除之前指针
a=(x>>4)*10;
a+=x&0x0F;
b=(y>>4)*10;
b+=y&0x0F;
c=(z>>4)*10;
c+=z&0x0F;
if(a>12)
a=(a-12)*5;
else
a*=5;
if(a>=30) a-=30;
else a+=30;
if(b>=30) b-=30;
else b+=30;
if(c>=30) c-=30;
else c+=30;
switch(c)
{
case 59:LCDLineXy(31,31,31,2); break;
case 58:LCDLineXy(31,31,33,2); break;
case 57:LCDLineXy(31,31,36,2); break;
case 56:LCDLineXy(31,31,39,3); break;
case 55:LCDLineXy(31,31,42,4); break;
case 54:LCDLineXy(31,31,45,6); break;
case 53:LCDLineXy(31,31,48,8); break;
case 52:LCDLineXy(31,31,50,10); break;
case 51:LCDLineXy(31,31,52,12); break;
case 50:LCDLineXy(31,31,54,14); break;
case 49:LCDLineXy(31,31,56,17); break;
case 48:LCDLineXy(31,31,58,20); break;
case 47:LCDLineXy(31,31,59,23); break;
case 46:LCDLineXy(31,31,60,26); break;
case 45:LCDLineXy(31,31,60,29); break;
case 44:LCDLineXy(31,31,60,31); break;
case 43:LCDLineXy(31,31,60,33); break;
case 42:LCDLineXy(31,31,60,36); break;
case 41:LCDLineXy(31,31,59,39); break;
case 40:LCDLineXy(31,31,58,42); break;
case 39:LCDLineXy(31,31,56,45); break;
case 38:LCDLineXy(31,31,54,48); break;
case 37:LCDLineXy(31,31,52,50); break;
case 36:LCDLineXy(31,31,50,52); break;
case 35:LCDLineXy(31,31,48,54); break;
case 34:LCDLineXy(31,31,45,56); break;
case 33:LCDLineXy(31,31,42,58); break;
case 32:LCDLineXy(31,31,39,58); break;
case 31:LCDLineXy(31,31,36,60); break;
case 30:LCDLineXy(31,31,33,60); break;
case 29:LCDLineXy(31,31,31,60); break;
case 28:LCDLineXy(31,31,29,60); break;
case 27:LCDLineXy(31,31,26,60); break;
case 26:LCDLineXy(31,31,23,59); break;
case 25:LCDLineXy(31,31,20,58); break;
case 24:LCDLineXy(31,31,17,56); break;
case 23:LCDLineXy(31,31,14,54); break;
case 22:LCDLineXy(31,31,12,52); break;
case 21:LCDLineXy(31,31,10,50); break;
case 20:LCDLineXy(31,31,8,48); break;
case 19:LCDLineXy(31,31,6,45); break;
case 18:LCDLineXy(31,31,4,42); break;
case 17:LCDLineXy(31,31,3,39); break;
case 16:LCDLineXy(31,31,2,36); break;
case 15:LCDLineXy(31,31,2,33); break;
case 14:LCDLineXy(31,31,2,31); break;
case 13:LCDLineXy(31,31,2,29); break;
case 12:LCDLineXy(31,31,2,26); break;
case 11:LCDLineXy(31,31,3,23); break;
case 10:LCDLineXy(31,31,4,20); break;
case 9:LCDLineXy(31,31,6,17); break;
case 8:LCDLineXy(31,31,8,14); break;
case 7:LCDLineXy(31,31,10,12); break;
case 6:LCDLineXy(31,31,12,10); break;
case 5:LCDLineXy(31,31,14,8); break;
case 4:LCDLineXy(31,31,17,6); break;
case 3:LCDLineXy(31,31,20,4); break;
case 2:LCDLineXy(31,31,23,3); break;
case 1:LCDLineXy(31,31,26,2); break;
case 0:LCDLineXy(31,31,29,2); break;
}
switch(b)
{
case 59:LCDLineXy(31,31,31,6); break;
case 58:LCDLineXy(31,31,33,6); break;
case 57:LCDLineXy(31,31,35,6); break;
case 56:LCDLineXy(31,31,37,7); break;
case 55:LCDLineXy(31,31,40,8); break;
case 54:LCDLineXy(31,31,43,10); break;
case 53:LCDLineXy(31,31,46,13); break;
case 52:LCDLineXy(31,31,48,15); break;
case 51:LCDLineXy(31,31,49,16); break;
case 50:LCDLineXy(31,31,51,18); break;
case 49:LCDLineXy(31,31,52,19); break;
case 48:LCDLineXy(31,31,54,22); break;
case 47:LCDLineXy(31,31,55,25); break;
case 46:LCDLineXy(31,31,56,27); break;
case 45:LCDLineXy(31,31,56,29); break;
case 44:LCDLineXy(31,31,56,31); break;
case 43:LCDLineXy(31,31,56,33); break;
case 42:LCDLineXy(31,31,56,35); break;
case 41:LCDLineXy(31,31,55,37); break;
case 40:LCDLineXy(31,31,54,40); break;
case 39:LCDLineXy(31,31,52,43); break;
case 38:LCDLineXy(31,31,51,44); break;
case 37:LCDLineXy(31,31,49,46); break;
case 36:LCDLineXy(31,31,46,49); break;
case 35:LCDLineXy(31,31,44,51); break;
case 34:LCDLineXy(31,31,43,52); break;
case 33:LCDLineXy(31,31,40,54); break;
case 32:LCDLineXy(31,31,37,55); break;
case 31:LCDLineXy(31,31,35,56); break;
case 30:LCDLineXy(31,31,33,56); break;
case 29:LCDLineXy(31,31,31,56); break;
case 28:LCDLineXy(31,31,29,56); break;
case 27:LCDLineXy(31,31,27,56); break;
case 26:LCDLineXy(31,31,25,55); break;
case 25:LCDLineXy(31,31,25,54); break;
case 24:LCDLineXy(31,31,19,52); break;
case 23:LCDLineXy(31,31,18,51); break;
case 22:LCDLineXy(31,31,16,49); break;
case 21:LCDLineXy(31,31,13,46); break;
case 20:LCDLineXy(31,31,11,44); break;
case 19:LCDLineXy(31,31,10,43); break;
case 18:LCDLineXy(31,31,8,40); break;
case 17:LCDLineXy(31,31,7,37); break;
case 16:LCDLineXy(31,31,6,35); break;
case 15:LCDLineXy(31,31,6,33); break;
case 14:LCDLineXy(31,31,6,31); break;
case 13:LCDLineXy(31,31,6,29); break;
case 12:LCDLineXy(31,31,6,27); break;
case 11:LCDLineXy(31,31,7,25); break;
case 10:LCDLineXy(31,31,8,22); break;
case 9:LCDLineXy(31,31,10,19); break;
case 8:LCDLineXy(31,31,11,18); break;
case 7:LCDLineXy(31,31,13,16); break;
case 6:LCDLineXy(31,31,16,13); break;
case 5:LCDLineXy(31,31,18,11); break;
case 4:LCDLineXy(31,31,19,10); break;
case 3:LCDLineXy(31,31,22,8); break;
case 2:LCDLineXy(31,31,25,7); break;
case 1:LCDLineXy(31,31,27,6); break;
case 0:LCDLineXy(31,31,29,6); break;
}
switch(a)
{
case 59:LCDLineXy(31,31,31,11); break;
case 58:LCDLineXy(31,31,33,11); break;
case 57:LCDLineXy(31,31,35,12); break;
case 56:LCDLineXy(31,31,37,13); break;
case 55:LCDLineXy(31,31,39,14); break;
case 54:LCDLineXy(31,31,41,15); break;
case 53:LCDLineXy(31,31,43,17); break;
case 52:LCDLineXy(31,31,44,18); break;
case 51:LCDLineXy(31,31,45,19); break;
case 50:LCDLineXy(31,31,46,20); break;
case 49:LCDLineXy(31,31,47,21); break;
case 48:LCDLineXy(31,31,48,23); break;
case 47:LCDLineXy(31,31,49,25); break;
case 46:LCDLineXy(31,31,50,27); break;
case 45:LCDLineXy(31,31,51,29); break;
case 44:LCDLineXy(31,31,51,31); break;
case 43:LCDLineXy(31,31,51,33); break;
case 42:LCDLineXy(31,31,50,35); break;
case 41:LCDLineXy(31,31,49,37); break;
case 40:LCDLineXy(31,31,48,39); break;
case 39:LCDLineXy(31,31,47,41); break;
case 38:LCDLineXy(31,31,46,42); break;
case 37:LCDLineXy(31,31,45,43); break;
case 36:LCDLineXy(31,31,43,45); break;
case 35:LCDLineXy(31,31,42,46); break;
case 34:LCDLineXy(31,31,41,47); break;
case 33:LCDLineXy(31,31,39,48); break;
case 32:LCDLineXy(31,31,37,49); break;
case 31:LCDLineXy(31,31,35,50); break;
case 30:LCDLineXy(31,31,33,51); break;
case 29:LCDLineXy(31,31,31,51); break;
case 28:LCDLineXy(31,31,29,51); break;
case 27:LCDLineXy(31,31,27,50); break;
case 26:LCDLineXy(31,31,25,49); break;
case 25:LCDLineXy(31,31,23,48); break;
case 24:LCDLineXy(31,31,21,47); break;
case 23:LCDLineXy(31,31,20,46); break;
case 22:LCDLineXy(31,31,19,45); break;
case 21:LCDLineXy(31,31,17,43); break;
case 20:LCDLineXy(31,31,16,42); break;
case 19:LCDLineXy(31,31,15,41); break;
case 18:LCDLineXy(31,31,14,39); break;
case 17:LCDLineXy(31,31,13,37); break;
case 16:LCDLineXy(31,31,12,35); break;
case 15:LCDLineXy(31,31,11,33); break;
case 14:LCDLineXy(31,31,11,31); break;
case 13:LCDLineXy(31,31,11,29); break;
case 12:LCDLineXy(31,31,12,27); break;
case 11:LCDLineXy(31,31,13,25); break;
case 10:LCDLineXy(31,31,14,23); break;
case 9:LCDLineXy(31,31,15,21); break;
case 8:LCDLineXy(31,31,16,20); break;
case 7:LCDLineXy(31,31,17,19); break;
case 6:LCDLineXy(31,31,19,17); break;
case 5:LCDLineXy(31,31,20,16); break;
case 4:LCDLineXy(31,31,21,15); break;
case 3:LCDLineXy(31,31,23,14); break;
case 2:LCDLineXy(31,31,25,13); break;
case 1:LCDLineXy(31,31,27,12); break;
case 0:LCDLineXy(31,31,29,11); break;
}
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -