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

📄 sx.c

📁 用vhdl编写的程序
💻 C
📖 第 1 页 / 共 3 页
字号:
   L_CSB=0;
   L_CSA=1;
    for(j=0;j<=7;j++)
    {
        p=c[j];
        dis_number(2,j,p);
    }
           L_CSB=1;
    L_CSA=1;
    P1=0XFF;
}



    /*------------------------左屏幕显示----------------------*/


   void main_menu_left (void)
 {

    unsigned char code *p;

    L_CSB=1;
    L_CSA=0;
    P1=0XFF;
    p=X1;
    dis_one_zi(0,0,p);

    p=X2;
    dis_one_zi(0,1,p);

    p=X3;
    dis_one_zi(0,2,p);

    p=X4;
    dis_one_zi(1,0,p);

    p=X5;
    dis_one_zi(1,1,p);

    p=X3;
    dis_one_zi(1,2,p);

    p=X7;
    dis_one_zi(2,0,p);

    p=X8;
    dis_one_zi(2,1,p);

    p=X3;
    dis_one_zi(2,2,p);

       L_CSB=1;
    L_CSA=1;
    P1=0XFF;
}


 //---------------------------------- "正弦波"显示 -------------------------------------

void dis_sin()
{

    unsigned char code *p;
     P1=0XFF;
       L_CSB=0;
       L_CSA=1;
    p=X10;
    dis_one_zi(0,0,p);

    p=X11;
    dis_one_zi(0,1,p);

    p=X12;
    dis_one_zi(0,2,p);
           L_CSB=1;
    L_CSA=1;
    P1=0XFF;

}



 //-------------------------------    " 三角波"显示     ------------------------------------
void dis_sanjiao()
{

    unsigned char code *p;
    P1=0XFF;
   L_CSB=0;
   L_CSA=1;

    p=X14;
    dis_one_zi(0,0,p);

    p=X15;
    dis_one_zi(0,1,p);

    p=X12;
    dis_one_zi(0,2,p);
           L_CSB=1;
    L_CSA=1;
   P1=0XFF;

}

 //-------------------------------    "方波"显示     ------------------------------------
void dis_fangbo()
{

    unsigned char code *p;
    L_CSB=0;
    L_CSA=1;

    p=X13;
    dis_one_zi(0,0,p);

    p=X44;
    dis_one_zi(0,1,p);

    p=X12;
    dis_one_zi(0,2,p);
        L_CSB=1;
    L_CSA=1;
    P1=0XFF;
}
/*--------------------------------------------------------------------*/
     add_m()
     {   unsigned int i;
         for(i=0;i<=12000;i++);
          m++;
         if(m>=8)
          m=0;
          for(i=0;i<=12000;i++);
      }


 /*-----------------------   sin 函数 控制 显示----------------------------*/


      void goto_sin()
    {
      unsigned int i,j,c;
      unsigned long v,f;
      unsigned char add_v,add[8];
      unsigned char a1,a2,b1,b2;
      unsigned long num,k;
     for(j=0;j<=10;j++)
     { while(P1_0==0)
         for(i=0;i<=10000;i++);

       for(i=0;i<=1000;i++) ;
      }

        P1=0xff;
        clearlcd();
      for(i=0;i<=1000;i++);

      main_menu_left();
      dis_sin();
      dis_fudu(v);
      dis_freq(f);
      for(;;)
      {

       if(P1_0==0)
        {   for(j=0;j<=10;j++)
          {
            while(P1_0 ==0)
            for(i=0;i<=13000;i++);

            for(i=0;i<=1000;i++);
           }

        add[m]++;

        if(add[m]>=10)
           add[m]=0;

           num =0;
           k = 1;
        for(j=0;j<8;j++)
           {
            num  += add[j]*k;
            k *= 10;
            }
        for(i=0;i<=10000;i++);

        f=num;
        dis_fudu(v);
        dis_freq(f);
        num=num*bd;
        c=num/65536;
        a1=c/256;a2=c%256;
        c=num%65536;
        b1=c/256;b2=c%256;
        num=f;
        song_0=0; song_1=0;  P0=b2; for(i=0;i<=10;i++);
        song_0=1; song_1=0;  P0=b1; for(i=0;i<=10;i++);
        song_0=0; song_1=1;  P0=a2; for(i=0;i<=10;i++);
        song_0=1; song_1=1;  P0=a1; for(i=0;i<=10;i++);


        }

      if(P1_2==0)
      {  for(j=0;j<=10;j++)
          { while(P1_2 ==0)
              for(i=0;i<=12000;i++);
           }
         add_m();

         for(i=0;i<=10000;i++);


       }


    if(P1_1==0)
      {
         for(j=0;j<=10;j++)
         {
           while(P1_1 ==0)
             for(i=0;i<=13000;i++);

           for(i=0;i<=1000;i++);
          }


         add_v++;

         if(add_v>=51)add_v=0;

         v=add_v;

         AV=0;
         for(i=0;i<100;i++);
         AV=1;

         dis_fudu(v);

         dis_freq(f);


         for(i=0;i<=1000;i++);
        }


     if(P1_5==0) break;

    }
 }

 /*-----------------------   sanjiao 函数 控制 显示----------------------------*/


      void goto_sanjiao()
    {
      unsigned int i,j,c;
      unsigned long v,f;
      unsigned char add_v,add[8];
      unsigned long num,k;
      unsigned char code *p;

      unsigned char a1,a2,b1,b2;

      for(j=0;j<=10;j++)
      { while(P1_1==0)
          for(i=0;i<=10000;i++);

        for(i=0;i<=1000;i++);
       }
       P1=0xff;

        clearlcd();

         main_menu_left();
        dis_sanjiao();
        dis_fudu(v);
        dis_freq(f);
       for(;;)
    {
       if(P1_0==0)
     {
     for(j=0;j<=10;j++)
      {
          while(P1_0 ==0)
          {
                for(i=0;i<=13000;i++);
          }
          for(i=0;i<=1000;i++);
      }

      add[m]++;

      if(add[m]>=10)
         add[m]=0;

             num =0;
             k = 1;
         for(j=0;j<8;j++)
         {
           num  += add[j]*k;
            k *= 10;
            }
      for(i=0;i<=12000;i++);
        f=num;
        dis_fudu(v);
        dis_freq(f);

        num=num*bd;
        c=num/65536;
        a1=c/256;a2=c%256;
        c=num%65536;
        b1=c/256;b2=c%256;
        num=f;
        song_0=0; song_1=0;  P0=b2; for(i=0;i<=10;i++);
        song_0=1; song_1=0;  P0=b1; for(i=0;i<=10;i++);
        song_0=0; song_1=1;  P0=a2; for(i=0;i<=10;i++);
        song_0=1; song_1=1;  P0=a1; for(i=0;i<=10;i++);

        for(i=0;i<=10000;i++);
     }

      if(P1_2==0)
     {   for(j=0;j<=10;j++)
        {
           while(P1_2 ==0)
             for(i=0;i<=13000;i++);

           for(i=0;i<=1000;i++);
         }
         add_m();
         for(i=0;i<=10000;i++);}


       if(P1_1==0)
      {
        for(j=0;j<=10;j++)
        {
           while(P1_1 ==0)
             for(i=0;i<=13000;i++);

           for(i=0;i<=1000;i++);
         }

        add_v++;

        if(add_v>=51)add_v=0;

        v=add_v;

        dis_fudu(v);

        dis_freq(f);

         AV=0;
         for(i=0;i<100;i++);
         AV=1;

        for(i=0;i<=10000;i++);
     }


     if(P1_5==0) break;

    }
   }


 /*-----------------------   fangbo 函数 控制 显示----------------------------*/


      void goto_fangbo()
    {
      unsigned int i,j,c;
      unsigned long v,f;
      unsigned char add_v,add[8];
      unsigned long num,k;
      unsigned char code *p;
      unsigned char a1,a2,b1,b2;


    for(j=0;j<=10;j++)
    {while(P1_2==0)
       for(i=0;i<=10000;i++);
     for(i=0;i<=100;i++);
     }
         clearlcd();
         main_menu_left();
         dis_fangbo();
         dis_fudu(v);
         dis_freq(f);

       for(;;)
    {
       if(P1_0==0)
     {
          for(j=0;j<=10;j++)
        {
           while(P1_0 ==0)
             for(i=0;i<=13000;i++);

           for(i=0;i<=1000;i++);
         }

       add[m]++;

      if(add[m]>=10)
         add[m]=0;

             num =0;
             k = 1;
         for(j=0;j<8;j++)
         {
           num  += add[j]*k;
            k *= 10;
            }
      for(i=0;i<=120;i++);

        f=num;
        dis_fudu(v);
        dis_freq(f);
        num=num*bd;
        c=num/65536;
        a1=c/256;a2=c%256;
        c=num%65536;
        b1=c/256;b2=c%256;
        num=f;
        song_0=0; song_1=0;  P0=b2; for(i=0;i<=10;i++);
        song_0=1; song_1=0;  P0=b1; for(i=0;i<=10;i++);
        song_0=0; song_1=1;  P0=a2; for(i=0;i<=10;i++);
        song_0=1; song_1=1;  P0=a1; for(i=0;i<=10;i++);

       for(i=0;i<=10000;i++);
     }

      if(P1_2==0)
     {   for(j=0;j<=10;j++)
        {
           while(P1_2 ==0)
             for(i=0;i<=13000;i++);

           for(i=0;i<=1000;i++);
         }
       add_m();
      for(i=0;i<=10000;i++);}


       if(P1_1==0)
     {  for(j=0;j<=10;j++)
        {
           while(P1_1 ==0)
             for(i=0;i<=13000;i++);

           for(i=0;i<=1000;i++);
         }

        add_v++;

        if(add_v>=51)add_v=0;

        v=add_v;



        dis_fudu(v);

        dis_freq(f);

         AV=0;
         for(i=0;i<100;i++);
         AV=1;

        for(i=0;i<=10000;i++);
     }


     if(P1_5==0)
    { for(j=0;j<=10;j++)
      {
         while (P1_5 ==0)
           for (i=0;i<10000;i++);

         for(i=0;i<=100;i++);
       }

      break;
    }
   }
  }
 /*---------------------------组合--------------------------------------*/


  void dis_main_zuhe()                    //组合波形主界面
   {
      unsigned char a;
      unsigned char code *p;
      unsigned int i;
     P1=0XFF;

    clearlcd();
    for(i=0;i<=1000;i++);

    L_CSB=1;
    L_CSA=0;

    p=X41;
    dis_one_zi(0,0,p);

    p=X44;
    dis_one_zi(0,1,p);

    p=X44;
    dis_one_zi(0,2,p);

    p=X42;
    dis_one_zi(0,3,p);

    a=1;
    dis_number(1,4,a);

    p=X3;
    dis_one_zi(1,3,p);

    a=2;
    dis_number(2,4,a);

    p=X3;
    dis_one_zi(2,3,p);


    L_CSB=0;
    L_CSA=1;

     p=X18;

    dis_one_zi(1,0,p);

⌨️ 快捷键说明

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