📄 main.c
字号:
TimeSec2[Counter][1] = 8888;
}
for(i=0; i<25; i++)
{
if(((TimeSec1[i][0] !=0) && (TimeSec1[i][0] !=2359))
||((TimeSec1[i][1] !=0) &&(TimeSec1[i][1] !=2359)))
{
break;
}
ScaleClock = TimeSec1[i][1]; //回退时钟标尺操作
}
}
DisplayFlg |= TimeIndexFlg;
Key = 0X0E; //进入取消操作处理
}
{
if((KeyCode[Key] <= 9)) //数据设定操作
{
if((DisplayFlg & TimeIndexFlg) == TimeIndexFlg)
{
DisplayFlg &= ~TimeIndexFlg; //数据设定条件下,不对时间段进行索引显示
}
if((DisplayFlg & TimeSection1SetFlg) == TimeSection1SetFlg)
{ //时间段数据输入,停止闪烁
DisplayFlg &= ~DShrinkFlg;
DisplayFlg &= ~DShrSetFlg;
Counter++;
if(Counter >=5)
Counter = 0;
}
else if((DisplayFlg & TimeSection2SetFlg) == TimeSection2SetFlg)
{ //时间段数据输入,停止闪烁
DisplayFlg &= ~DShrinkFlg;
DisplayFlg &= ~DShrSetFlg;
Counter++;
if(Counter >=5)
Counter = 0;
}
ConvertCode =ConvertCode*10 + KeyCode[Key];
if(((DisplayFlg & ClockSetFlg) == ClockSetFlg)
||((DisplayFlg & TimeSection2SetFlg) ==TimeSection2SetFlg)
||((DisplayFlg & TimeSection1SetFlg) ==TimeSection1SetFlg))
{
if(ConvertCode >240) //校验时间数据正确性
if((ConvertCode >= 2400) ||(ConvertCode %100) >= 60)
{
ConvertCode =0;
Counter = 0;
}
}
else if((DisplayFlg & AddressSetFlg) == AddressSetFlg)
{
if(ConvertCode > 52) //校验地址数据的正确性
ConvertCode = 0;
}
else
{
if(ConvertCode > 9999) //校验其他数据的正确性
{
ConvertCode =0;
}
}
if((DisplayFlg & PlanSetFlg) == PlanSetFlg) //转化当前数据为显示数据
{
for(i=0; i<8; i++)
{
DisplayKeyCode[i] =LedCode[10];
}
temp1 =ConvertCode %10;
DisplayKeyCode[8] =LedCode[temp1];
temp1 =(ConvertCode/10)%10;
DisplayKeyCode[9] =LedCode[temp1];
temp1 =(ConvertCode/100)%10;
DisplayKeyCode[10] =LedCode[temp1];
temp1 =(ConvertCode/1000)%10;
DisplayKeyCode[11] =LedCode[temp1];
}
if((DisplayFlg & NumSetFlg) == NumSetFlg)
{
for(i=0; i<8; i++)
{
DisplayKeyCode[i] =LedCode[10];
}
temp1 =ConvertCode %10;
DisplayKeyCode[8] =LedCode[temp1];
temp1 =(ConvertCode/10)%10;
DisplayKeyCode[9] =LedCode[temp1];
temp1 =(ConvertCode/100)%10;
DisplayKeyCode[10] =LedCode[temp1];
temp1 =(ConvertCode/1000)%10;
DisplayKeyCode[11] =LedCode[temp1];
if((DisplayFlg & NumSetFlg) == NumSetFlg)
{
DisplayKeyCode[9] += 0X80;
}
}
if((DisplayFlg & ClockSetFlg) == ClockSetFlg)
{
for(i=0; i<8; i++)
{
DisplayKeyCode[i] =LedCode[10];
}
temp1 =ConvertCode %10;
DisplayKeyCode[8] =LedCode[temp1];
temp1 =(ConvertCode/10)%10;
DisplayKeyCode[9] =LedCode[temp1];
temp1 =(ConvertCode/100)%10;
DisplayKeyCode[10] =LedCode[temp1];
temp1 =(ConvertCode/1000)%10;
DisplayKeyCode[11] =LedCode[temp1];
}
if((DisplayFlg & AddressSetFlg) == AddressSetFlg)
{
for(i=0; i<8; i++)
{
DisplayKeyCode[i] =LedCode[10];
}
temp1 =ConvertCode %10;
DisplayKeyCode[8] =LedCode[temp1];
temp1 =(ConvertCode/10)%10;
DisplayKeyCode[9] =LedCode[temp1];
temp1 =(ConvertCode/100)%10;
DisplayKeyCode[10] =LedCode[temp1];
temp1 =(ConvertCode/1000)%10;
DisplayKeyCode[11] =LedCode[temp1];
}
TimerCount =0;
DisplayFlg &= ~FirstFlg;
DisplayFlg &= ~StartShrinkFlg;
}
}
}
if((Key == ENT) &&((DisplayFlg & ErrFlg) !=ErrFlg)) //确认按键
{
if((Flag & ResetFlg) ==ResetFlg) //确认键处理
{
if(((DisplayFlg & NumSetFlg) == NumSetFlg) && (ConvertCode > 0))
{ //工数设定确认
#ifdef _Project1
Target =0;
#else
#ifdef _Project2
Target = Target;
#endif
#endif
Real =0;
Number = ConvertCode;
}
else if(((DisplayFlg & PlanSetFlg) == PlanSetFlg) && (ConvertCode > 0))
Plan = ConvertCode; //计划设定确认
else if(((DisplayFlg & ClockSetFlg) == ClockSetFlg) && (ConvertCode > 0))
{ //时钟设定确认
Hour = ConvertCode/100;
Min = ConvertCode%100;
Second =0;
ClockCount=0;
CounterForNumber=0;
}
else if(((DisplayFlg & AddressSetFlg) == AddressSetFlg) && (ConvertCode > 0))
{ //地址设定确认
SelfAddress = ConvertCode;
}
}
if((DisplayFlg & TimeSection1SetFlg) == TimeSection1SetFlg)
{ //时间段的数据组校验处理
if(((DisplayFlg & CheckTimeFlg) ==CheckTimeFlg)
&& ((DisplayFlg & TimeFirstFlg) == TimeFirstFlg))
{
TimeSectionIndex = SearchIndex*2+1;
DisplayFlg &= ~TimeFirstFlg;
}
else
TimeSectionIndex++;
if(TimeSectionIndex >50)
{
DisplayFlg &= ~TimeSection1SetFlg;
}
else
{
SecIndex = (TimeSectionIndex-1)/2; //时间段索引
TimeIndex = (TimeSectionIndex+1)%2; //开始、结束时间索引
{
{
if(TimeIndex ==0)
{
DisplayFlg &= ~DShrinkFlg;
}
else if(TimeIndex ==1)
{
DisplayFlg &= ~DShrSetFlg;
}
ConvertCode = TimeSec1[SecIndex][TimeIndex];
}
else
{
if(((DisplayFlg & CheckTimeFlg) ==CheckTimeFlg))
{
temp = TimeSec1[SecIndex][TimeIndex];
TimeSec1[SecIndex][TimeIndex] = ConvertCode;
ConvertCode = temp;
}
else
TimeSec1[SecIndex][TimeIndex] = ConvertCode;
}
}
if((TimeIndex == 0))
{
DisplayFlg |= DShrSetFlg; //第二行闪烁标志
DisplayFlg &= ~DShrinkFlg; //第一行停止闪烁
}
else if((TimeIndex != 0))
{
DisplayFlg &= ~DShrSetFlg; //第二行闪烁标志
DisplayFlg |= DShrinkFlg; //第一行停止闪烁
}
if((TimeSectionIndex != 1)
&& ((DisplayFlg & CheckTimeFlg) != CheckTimeFlg)
ConfirmData(); //数据确认函数
}
if(((DisplayFlg & CheckTimeFlg) == CheckTimeFlg)) //修改时的数据确认处理
{
if(TimeIndex == 0)
{
if((SecIndex >0)
&& ((TimeSec1[SecIndex-1][1] >= TimeSec1[0][0])
&& (TimeSec1[SecIndex-1][1] <= 2359))
&& ((ConvertCode >= TimeSec1[0][0])
&& (ConvertCode <= 2359)))
{
if((TimeSec1[SecIndex][1] > TimeSec1[0][0])
&& (TimeSec1[SecIndex][1] <= 2359))
{
if((ConvertCode >= TimeSec1[SecIndex-1][1])
&&(ConvertCode < TimeSec1[SecIndex][1]))
{
DisplayFlg |= DShrSetFlg; //第二行闪烁标志
DisplayFlg &= ~DShrinkFlg; //第一行停止闪
}
else if(SecIndex >0)
{
DisplayFlg &= ~DShrSetFlg; //第二行停止闪烁标志
DisplayFlg |= DShrinkFlg; //第一行闪烁
TimeSec1[SecIndex][TimeIndex] = 0; //还原被修改的数据
TimeSectionIndex--;
SecIndex =(TimeSectionIndex-1)/2;
TimeIndex =(TimeSectionIndex+1)%2;
}
}
else if((TimeSec1[SecIndex][1] >=0)
&&(TimeSec1[SecIndex][1] < TimeSec1[0][0]))
{
if(((ConvertCode >= TimeSec1[SecIndex-1][1])
&&(ConvertCode <=2359))
|| ((ConvertCode >=0) && (ConvertCode < TimeSec1[SecIndex][1])))
{
DisplayFlg |= DShrSetFlg; //第二行闪烁标志
DisplayFlg &= ~DShrinkFlg; //第一行停止闪烁
}
else if(SecIndex >0)
{
DisplayFlg &= ~DShrSetFlg; //第二行停止闪烁标志
DisplayFlg |= DShrinkFlg; //第一行闪烁
TimeSec1[SecIndex][TimeIndex] = 0; //还原被修改的数据
TimeSectionIndex--;
SecIndex =(TimeSectionIndex-1)/2;
TimeIndex =(TimeSectionIndex+1)%2;
}
}
}
else if((SecIndex >0)
&& ((TimeSec1[SecIndex-1][1] >= 0)
&& (TimeSec1[SecIndex-1][1] < TimeSec1[0][0]))
&& ((ConvertCode >= 0)
&& (ConvertCode < TimeSec1[0][0])))
{
if((ConvertCode >= TimeSec1[SecIndex-1][1])
&&(
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -