gui.c

来自「DDS产生程序」· C语言 代码 · 共 1,654 行 · 第 1/5 页

C
1,654
字号
                      DigitalBuffer[0] = 0;
                      DigitalBuffer[1]++;
                      if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<1000.0))
                      {
                           DispBuffer[0] = LedTable[DigitalBuffer[0]];
                           DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                      }
                      else if ((CurrentState.Freq>=1000.0) && (CurrentState.Freq<4000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                      }
                      else
                      {
                            error();
                      }
                     
                 }
                 else if ((DigitalBuffer[0]==9) && (DigitalBuffer[1]==9) && (DigitalBuffer[2]<9))
                 {
                      DigitalBuffer[0] = 0;
                      DigitalBuffer[1] = 0;
                      DigitalBuffer[2]++;
                      
                      if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<1000.0))
                      {
                           DispBuffer[0] = LedTable[DigitalBuffer[0]];
                           DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                           DispBuffer[2] = LedTable[DigitalBuffer[2]];
                      }
                      else if ((CurrentState.Freq>=1000.0) && (CurrentState.Freq<4000000.0))
                      {
                           DispBuffer[0] = LedTable[DigitalBuffer[0]];
                           DispBuffer[1] = LedTable[DigitalBuffer[1]];
                           DispBuffer[2] = LedTable[DigitalBuffer[2]];
                      }
                      else
                      {
                          error();
                      }
                      
                 }
                 else if ((DigitalBuffer[0]==9) && (DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]<9))
                 {
                      DigitalBuffer[0] = 0;
                      DigitalBuffer[1] = 0;
                      DigitalBuffer[2] = 0;
                      DigitalBuffer[3]++;
              
                      if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<1000.0))
                      {
                           DispBuffer[0] = LedTable[DigitalBuffer[0]];
                           DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                           DispBuffer[2] = LedTable[DigitalBuffer[2]];
                           DispBuffer[3] = LedTable[DigitalBuffer[3]];
                      }
                      else if ((CurrentState.Freq>=1000.0) && (CurrentState.Freq<4000000.0))
                      {
                           DispBuffer[0] = LedTable[DigitalBuffer[0]];
                           DispBuffer[1] = LedTable[DigitalBuffer[1]];
                           DispBuffer[2] = LedTable[DigitalBuffer[2]];
                           DispBuffer[3] = LedTable[DigitalBuffer[3]];
                      }
                      else
                      {
                           error();
                      }
                      
                 }
                 else if ((DigitalBuffer[0]==9) && (DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]<9))
                 {
                      DigitalBuffer[0] = 0;
                      DigitalBuffer[1] = 0;
                      DigitalBuffer[2] = 0;
                      DigitalBuffer[3] = 0;
                      DigitalBuffer[4]++;
                      if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<1000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]] |0x02;
                            DispMark[2] |= (1 << kLed) | (1 << HzLed);
                            DispMark[1] &= ~(1 << MLed);
                      }
                      else if ((CurrentState.Freq>=1000000.0) && (CurrentState.Freq<4000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]];
                      }
                      else
                      {
                            error();
                      }
                 }
                 else if ((DigitalBuffer[0]==9) && (DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]==9) && (DigitalBuffer[5]<9))
                 {
                      DigitalBuffer[0] = 0;
                      DigitalBuffer[1] = 0;
                      DigitalBuffer[2] = 0;
                      DigitalBuffer[3] = 0;
                      DigitalBuffer[4] = 0;
                      DigitalBuffer[5]++;
                      if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<1000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]] |0x02;
                            DispBuffer[5] = LedTable[DigitalBuffer[5]];
                      }
                      else if ((CurrentState.Freq>=1000000.0) && (CurrentState.Freq<4000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]];
                            DispBuffer[5] = LedTable[DigitalBuffer[5]];
                      }
                      else
                      {
                            error();
                      }
                 }
                 else if ((DigitalBuffer[0]==9) && (DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]==9) && (DigitalBuffer[5]==9) && (DigitalBuffer[6]<9))
                 {
                      DigitalBuffer[0] = 0;
                      DigitalBuffer[1] = 0;
                      DigitalBuffer[2] = 0;
                      DigitalBuffer[3] = 0;
                      DigitalBuffer[4] = 0;
                      DigitalBuffer[5] = 0;
                      DigitalBuffer[6]++;
                      if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<1000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]] |0x02;
                            DispBuffer[5] = LedTable[DigitalBuffer[5]];
                            DispBuffer[6] = LedTable[DigitalBuffer[6]];
                      }
                      else if ((CurrentState.Freq>=1000000.0) && (CurrentState.Freq<4000000.0))
                      {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]];
                            DispBuffer[5] = LedTable[DigitalBuffer[5]];
                            DispBuffer[6] = LedTable[DigitalBuffer[6]];
                      }
                      else
                      {
                            error();
                      }
                 }
                 else if ((DigitalBuffer[0]==9) && (DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]==9) && (DigitalBuffer[5]==9) && (DigitalBuffer[6]==9) && (DigitalBuffer[7])<9)
                 {
                       DigitalBuffer[0] = 0;
                       DigitalBuffer[1] = 0;
                       DigitalBuffer[2] = 0;
                       DigitalBuffer[3] = 0;
                       DigitalBuffer[4] = 0;
                       DigitalBuffer[5] = 0;
                       DigitalBuffer[6] = 0;
                       DigitalBuffer[7]++;
                       
                       if ((CurrentState.Freq>=0.2) && (CurrentState.Freq<4000000.0))
                       {
                            DispBuffer[0] = LedTable[DigitalBuffer[0]];
                            DispBuffer[1] = LedTable[DigitalBuffer[1]];
                            DispBuffer[2] = LedTable[DigitalBuffer[2]];
                            DispBuffer[3] = LedTable[DigitalBuffer[3]];
                            DispBuffer[4] = LedTable[DigitalBuffer[4]];
                            DispBuffer[5] = LedTable[DigitalBuffer[5]];
                            DispBuffer[6] = LedTable[DigitalBuffer[6]];
                            DispBuffer[7] = LedTable[DigitalBuffer[7]] | 0x02;
                            DispMark[1] |= (1 << MLed);
                            DispMark[2] |= (1 << HzLed);
                            DispMark[2] &= ~(1 << kLed);
                       }
                      
                       else
                       {
                            error();
                       }
                 }
                 
                 else
                 {
                     error();
                 }
                  CurrentState.Freq += 0.1;
                  WriteFreq(CurrentState.Freq);
             }
             else if (EnCoderPoint==1)
             {
                  if (DigitalBuffer[1]<9)
                  {
                      DigitalBuffer[1]++;
                      if ((CurrentState.Freq>0.2) && (CurrentState.Freq<1000.0))
                      {
                         DispBuffer[1] = LedTable[DigitalBuffer[1]] |0x02;
                      }
                      else if ((CurrentState.Freq>=1000.0) && (CurrentState.Freq<4000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                      }
                      else
                      {
                          error();
                      }
                  }
                  else if ((DigitalBuffer[1]==9) && DigitalBuffer[2]<9)
                  {
                      DigitalBuffer[2]++;
                      DigitalBuffer[1]=0;
                      if ((CurrentState.Freq>0.2) && (CurrentState.Freq<1000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]] |0x02;
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                      }
                       else if ((CurrentState.Freq>=1000.0) && (CurrentState.Freq<4000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                      }
                      else
                      {
                         error();
                      } 
                  }
                  else if ((DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]<9))
                  {
                      DigitalBuffer[3]++;
                      DigitalBuffer[2]=0;
                      DigitalBuffer[1]=0;
                      if ((CurrentState.Freq>0.2) && (CurrentState.Freq<1000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]] |0x02;
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                          DispBuffer[3] = LedTable[DigitalBuffer[3]];
                      }
                       else if ((CurrentState.Freq>=1000.0) && (CurrentState.Freq<4000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                          DispBuffer[3] = LedTable[DigitalBuffer[3]];
                      }
                      else
                      {
                         error();
                      } 
                  }
                  else if ((DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]<9))
                  {
                      DigitalBuffer[4]++;
                      DigitalBuffer[3]=0;
                      DigitalBuffer[2]=0;
                      DigitalBuffer[1]=0;
                      if ((CurrentState.Freq>0.2) && (CurrentState.Freq<1000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                          DispBuffer[3] = LedTable[DigitalBuffer[3]];
                          DispBuffer[4] = LedTable[DigitalBuffer[4]] |0x02;
                          DispMark[2] |= (1 << kLed) | (1 << HzLed);
                          DispMark[1] &= ~(1 << MLed);  
                      }
                       else if ((CurrentState.Freq>=1000000.0) && (CurrentState.Freq<4000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                          DispBuffer[3] = LedTable[DigitalBuffer[3]];
                          DispBuffer[4] = LedTable[DigitalBuffer[4]];
                      }
                      else
                      {
                         error();
                      } 
                  }
                   else if ((DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]==9) && (DigitalBuffer[5]<9))
                  {
                      DigitalBuffer[5]++;
                      DigitalBuffer[4]=0;
                      DigitalBuffer[3]=0;
                      DigitalBuffer[2]=0;
                      DigitalBuffer[1]=0;
                      if ((CurrentState.Freq>0.2) && (CurrentState.Freq<1000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                          DispBuffer[3] = LedTable[DigitalBuffer[3]];
                          DispBuffer[4] = LedTable[DigitalBuffer[4]] |0x02;
                          DispBuffer[5] = LedTable[DigitalBuffer[5]];
                          DispMark[2] |= (1 << kLed) | (1 << HzLed);
                          DispMark[1] &= ~(1 << MLed);  
                      }
                       else if ((CurrentState.Freq>=1000000.0) && (CurrentState.Freq<4000000.0))
                      {
                          DispBuffer[1] = LedTable[DigitalBuffer[1]];
                          DispBuffer[2] = LedTable[DigitalBuffer[2]];
                          DispBuffer[3] = LedTable[DigitalBuffer[3]];
                          DispBuffer[4] = LedTable[DigitalBuffer[4]];
                          DispBuffer[5] = LedTable[DigitalBuffer[5]];
                      }
                      else
                      {
                         error();
                      } 
                  }
                   else if ((DigitalBuffer[1]==9) && (DigitalBuffer[2]==9) && (DigitalBuffer[3]==9) && (DigitalBuffer[4]==9) && (DigitalBuffer[5]==9) && (DigitalBuffer[6]<9))
                  {
                      DigitalBuffer[6]++;
                      DigitalBuffer[5]=0;
                      DigitalBuffer[4]=0;
                      DigitalBuffer[3]=0;
                      DigitalBuffer[2]=0;
                      DigitalBuffer[1]=0;
                      if ((CurrentState.Freq>0.2) && (CurrentState.Freq<1000000.0))
                      {
                       

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?