⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gui.c

📁 DDS产生程序
💻 C
📖 第 1 页 / 共 5 页
字号:
      }
           
       else if (KeyInputPoint == 7)
       {
            if ((DigitalBuffer[0] < 4) && (Dot == 7))
            {
                CurrentState.Freq = (DigitalBuffer[0]*1000000.0 + DigitalBuffer[1]*100000.0 + DigitalBuffer[2] * 10000.0 + DigitalBuffer[3]*1000.0 + DigitalBuffer[4]*100.0 + DigitalBuffer[5]*10.0 + DigitalBuffer[6]*1.0 + DigitalBuffer[7]*0.1);
                WriteFreq(CurrentState.Freq);
                DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                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]];
                DispMark[1] |= (1 << MLed);
                DispMark[2] |= (1 << HzLed);
                DispMark[2] &= ~(1 << kLed);
           }
           
           else
           {
               error();
           }
        }
    }
    
    else if (CurrentState.CurrentMode == DUTYMODE)
    {
         CurrentState.Duty = (DigitalBuffer[0]*10 + DigitalBuffer[1]);
         if ((CurrentState.Duty >= 20) && (CurrentState.Duty <= 80))
         {
             OCR1B = (1232 - (CurrentState.Duty - 20)*8);
         }
         else
         {
             error();
         }
    }
    else
    {
         error();
    }
       UpDataCH451();
       KeyInputPoint = 0;
       Dot = 0;
}

void KeykHzFun(void)
{
       if (KeyInputPoint == 0)
       {
             CurrentState.Freq = DigitalBuffer[0]*1000.0;
             WriteFreq(CurrentState.Freq);
             DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
             DispBuffer[1] = LedTable[0];
             DispBuffer[2] = LedTable[0];
             DispBuffer[3] = LedTable[0];
             DispBuffer[4] = LedTable[0];
             DispMark[1] |= (1 << kLed) | (1 << HzLed);
             DispMark[1] &= ~(1 << MLed);
             //UpDataCH451();
       }
       
       else if (KeyInputPoint == 1)
       {
            if (Dot == 0)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*10000.0 + DigitalBuffer[1]*1000.0);
                    //SignalInit();
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]];
                 DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                 DispBuffer[2] = LedTable[0];
                 DispBuffer[3] = LedTable[0];
                 DispBuffer[4] = LedTable[0];
                 DispBuffer[5] = LedTable[0];
                 DispMark[1] |= (1 << kLed) | (1 << HzLed);
                 DispMark[1] &= ~(1 << MLed);
                 // UpDataCH451(); 
                
            }
            
            else if (Dot == 1)
            {
                 CurrentState.Freq = (DigitalBuffer[0]*1000.0 + DigitalBuffer[1]*100.0);
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                 DispBuffer[1] = LedTable[DigitalBuffer[1]];
                 DispBuffer[2] = LedTable[0];
                 DispBuffer[3] = LedTable[0];
                 DispBuffer[4] = LedTable[0];
                 DispMark[1] |= (1 << kLed) | (1 << HzLed);
                 DispMark[1] &= ~(1 << MLed);
            }
            
            else
            {
                error();
            }
             
       }
       
       else if (KeyInputPoint == 2)
       {
            if (Dot == 0)
            {
                 CurrentState.Freq = (DigitalBuffer[0]*100000.0 + DigitalBuffer[1]*10000.0 + DigitalBuffer[2]*1000.0);
                 //SignalInit();
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]];
                 DispBuffer[1] = LedTable[DigitalBuffer[1]];
                 DispBuffer[2] = LedTable[DigitalBuffer[2]] | 0x02;
                 DispBuffer[3] = LedTable[0];
                 DispBuffer[4] = LedTable[0];
                 DispBuffer[5] = LedTable[0];
                 DispBuffer[6] = LedTable[0];
                 DispMark[2] |= (1 << kLed) | (1 << HzLed);
                 DispMark[1] &= ~(1 << MLed);
                // UpDataCH451();
            }
            else if (Dot == 1)
            {
                 CurrentState.Freq = (DigitalBuffer[0]*1000.0 + DigitalBuffer[1]*100.0 + DigitalBuffer[2]*10.0);
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                 DispBuffer[1] = LedTable[DigitalBuffer[1]];
                 DispBuffer[2] = LedTable[DigitalBuffer[2]];
                 DispBuffer[3] = LedTable[0];
                 DispBuffer[4] = LedTable[0];
                 DispMark[2] |= (1 << kLed) | (1 << HzLed);
                 DispMark[1] &= ~(1 << MLed);
            }
            else if (Dot == 2)
            {
                 CurrentState.Freq = (DigitalBuffer[0]*10000.0 + DigitalBuffer[1]*1000.0 + DigitalBuffer[2]*100.0);
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]];
                 DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                 DispBuffer[2] = LedTable[DigitalBuffer[2]];
                 DispBuffer[3] = LedTable[0];
                 DispBuffer[4] = LedTable[0];
                 DispBuffer[5] = LedTable[0];
                 DispMark[2] |= (1 << kLed) | (1 << HzLed);
                 DispMark[1] &= ~(1 << MLed);
            }
            
            else
            {
                 error();
            }
       }
       
       else if (KeyInputPoint == 3)
       {
             if ((DigitalBuffer[0] < 4) && (Dot == 0))
             {
                 CurrentState.Freq = (DigitalBuffer[0]*1000000.0 + DigitalBuffer[1]*100000.0 + DigitalBuffer[2]*10000.0 + DigitalBuffer[3]*1000.0);
                 //SignalInit();
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                 DispBuffer[1] = LedTable[DigitalBuffer[1]];
                 DispBuffer[2] = LedTable[DigitalBuffer[2]];
                 DispBuffer[3] = LedTable[DigitalBuffer[3]];
                 DispBuffer[4] = LedTable[0];
                 DispBuffer[5] = LedTable[0];
                 DispBuffer[6] = LedTable[0];
                 DispBuffer[7] = LedTable[0];
                 DispMark[1] |= (1 << MLed);
                 DispMark[2] |= (1 << HzLed);
                 DispMark[2] &= ~(1 << kLed);
                      // UpDataCH451();
             }  
                  
            else if (Dot == 1)
            {
                 CurrentState.Freq = (DigitalBuffer[0]*1000.0 + DigitalBuffer[1]*100.0 + DigitalBuffer[2] * 10.0 + DigitalBuffer[3]*1.0);
                 WriteFreq(CurrentState.Freq);
                 DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                 DispBuffer[1] = LedTable[DigitalBuffer[1]];
                 DispBuffer[2] = LedTable[DigitalBuffer[2]];
                 DispBuffer[3] = LedTable[DigitalBuffer[3]];
                 DispBuffer[4] = LedTable[0];
                 DispMark[1] &= ~(1 << MLed);
                 DispMark[2] |= (1 << HzLed);
                 DispMark[2] |= (1 << kLed);
            }
            
            else if (Dot == 2)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*10000.0 + DigitalBuffer[1]*1000.0 + DigitalBuffer[2]*100.0 + DigitalBuffer[3]*10.0);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]];
                  DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                  DispBuffer[2] = LedTable[DigitalBuffer[2]];
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[0];
                  DispBuffer[5] = LedTable[0];
                  DispMark[1] &= ~(1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] |= (1 << kLed);
             }
            
            else if (Dot == 3)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*100000.0 + DigitalBuffer[1]*10000.0 + DigitalBuffer[2]*1000.0 + DigitalBuffer[3]*100.0);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]];
                  DispBuffer[1] = LedTable[DigitalBuffer[1]];
                  DispBuffer[2] = LedTable[DigitalBuffer[2]] | 0x02;
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[0];
                  DispBuffer[5] = LedTable[0];
                  DispBuffer[6] = LedTable[0];
                  DispMark[1] &= ~(1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] |= (1 << kLed);
            }
       
            else
            {
                  error();
            }
       }
       
       else if (KeyInputPoint == 4)
       {
            if (Dot == 1)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*1000.0 + DigitalBuffer[1]*100.0 + DigitalBuffer[2]*10.0 + DigitalBuffer[3]*1.0 + DigitalBuffer[4]*0.1);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                  DispBuffer[1] = LedTable[DigitalBuffer[1]];
                  DispBuffer[2] = LedTable[DigitalBuffer[2]];
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[DigitalBuffer[4]];
                  DispMark[1] &= ~(1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] |= (1 << kLed);
            }
            
            else if (Dot == 2)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*10000.0 + DigitalBuffer[1]*1000.0 + DigitalBuffer[2]*100.0 + DigitalBuffer[3]*10.0 + DigitalBuffer[4]*1.0);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]];
                  DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                  DispBuffer[2] = LedTable[DigitalBuffer[2]];
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[DigitalBuffer[4]];
                  DispBuffer[5] = LedTable[0];
                  DispMark[1] &= ~(1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] |= (1 << kLed);
            }
            
            else if (Dot == 3)
            {
                  CurrentState.Freq = (DigitalBuffer[0] * 100000.0 + DigitalBuffer[1] * 10000.0 + DigitalBuffer[2] * 1000.0 + DigitalBuffer[3] * 100.0 + DigitalBuffer[4] * 10.0);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]];
                  DispBuffer[1] = LedTable[DigitalBuffer[1]];
                  DispBuffer[2] = LedTable[DigitalBuffer[2]] | 0x02;
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[DigitalBuffer[4]];
                  DispBuffer[5] = LedTable[0];
                  DispBuffer[6] = LedTable[0];
                  DispMark[1] &= ~(1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] |= (1 << kLed);
            }
            
             else if ((Dot == 4) && (DigitalBuffer[0] < 4))
            {
                  CurrentState.Freq = (DigitalBuffer[0] * 1000000.0 + DigitalBuffer[1] * 100000.0 + DigitalBuffer[2] * 10000.0 + DigitalBuffer[3] * 1000.0);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]] | 0x02;
                  DispBuffer[1] = LedTable[DigitalBuffer[1]];
                  DispBuffer[2] = LedTable[DigitalBuffer[2]];
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[0];
                  DispBuffer[5] = LedTable[0];
                  DispBuffer[6] = LedTable[0];
                  DispBuffer[7] = LedTable[0];
                  DispMark[1] |= (1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] &= ~(1 << kLed);
            }
            
            else
            {
                  error();
            }
       }
       
       else if (KeyInputPoint == 5)
       {
            if (Dot == 2)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*10000.0 + DigitalBuffer[1]*1000.0 + DigitalBuffer[2]*100.0 + DigitalBuffer[3]*10.0 + DigitalBuffer[4]*1.0 + DigitalBuffer[5]*0.1);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]];
                  DispBuffer[1] = LedTable[DigitalBuffer[1]] | 0x02;
                  DispBuffer[2] = LedTable[DigitalBuffer[2]];
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[DigitalBuffer[4]];
                  DispBuffer[5] = LedTable[DigitalBuffer[5]];
                  DispMark[1] |= (1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] &= ~(1 << kLed);
            }
            
            else if (Dot == 3)
            {
                  CurrentState.Freq = (DigitalBuffer[0]*100000.0 + DigitalBuffer[1]*10000.0 + DigitalBuffer[2]*1000.0 + DigitalBuffer[3]*100.0 + DigitalBuffer[4]*10.0 + DigitalBuffer[5]*1.0);
                  WriteFreq(CurrentState.Freq);
                  DispBuffer[0] = LedTable[DigitalBuffer[0]];
                  DispBuffer[1] = LedTable[DigitalBuffer[1]];
                  DispBuffer[2] = LedTable[DigitalBuffer[2]] | 0x02;
                  DispBuffer[3] = LedTable[DigitalBuffer[3]];
                  DispBuffer[4] = LedTable[DigitalBuffer[4]];
                  DispBuffer[5] = LedTable[DigitalBuffer[5]];
                  DispBuffer[6] = LedTable[0];
                  DispMark[1] &= ~(1 << MLed);
                  DispMark[2] |= (1 << HzLed);
                  DispMark[2] |= (1 << kLed);
            }
            
            else if ((Dot == 4) && (DigitalBuffer[0] < 4))
            {

⌨️ 快捷键说明

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