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

📄 ss_sweep.lst

📁 DDS-320-func: 在采用 320x240 屏的设计实验箱上运行
💻 LST
📖 第 1 页 / 共 4 页
字号:
 632   3                              Set_Display_Add(428);
 633   3                              printf("SETUP");
 634   3                                      SetFSM=0;
 635   3                                      aa=0;
 636   3                                      switch(SetupSM)
 637   3                                      {
 638   4                                              case  enter_num:        value[0]=0;
 639   4                                                                      value[1]=0;
 640   4                                                                      value[2]=0;
 641   4                                                                      value[3]=0;
 642   4                                                                      value[4]=0;
 643   4                                                                      Set_Display_Add(560);
 644   4                                                                      putchar(value[0]+0x30);
 645   4                                                                      putchar(value[1]+0x30);
 646   4                                                                      putchar(value[2]+0x30);
 647   4                                                                      putchar(value[3]+0x30);
 648   4                                                                      putchar(value[4]+0x30);
 649   4                                                                      value_index=0;
 650   4                                                                      SetupSM=wait_key;
 651   4                                                                      break;
 652   4                                              case  wait_key:         if(key_pressed==ON)
 653   4                                                                      {
 654   5                                                                      switch(key_no)
 655   5                                                                              {
 656   6                                                                              case key0:
 657   6                                                                              case key1: 
 658   6                                                                              case key2: 
 659   6                                                                              case key3: 
 660   6                                                                              case key4: 
 661   6                                                                              case key5:
 662   6                                                                              case key6:
 663   6                                                                              case key7:
 664   6                                                                              case key8:
 665   6                                                                              case key9:
 666   6                                                                                      if(value_index<5)
 667   6                                                                                      {
 668   7                                                                                      value[value_index]=key_no;
 669   7                                                                                      value_index++;
 670   7                                                                                      }
 671   6                                                                                      
 672   6                                                                                      break;
 673   6                                                                              case key_enter:SetupSM=exit_setup;
 674   6                                                                                      break;
 675   6                                                                              case key_mod: SetCMD((++mod)&0x03);
C51 COMPILER V7.06   SS_SWEEP                                                              02/25/2007 16:14:28 PAGE 12  

 676   6                                                                                            display_mod((mod)&0x03);
 677   6                                                                                            refresh_led();
 678   6                                                                                      break;
 679   6                                                                              default:  break;                                
 680   6                                                                              }
 681   5                                                                      Set_Display_Add(560);
 682   5                                                                      putchar(value[0]+0x30);
 683   5                                                                      putchar(value[1]+0x30);
 684   5                                                                      putchar(value[2]+0x30);
 685   5                                                                      putchar(value[3]+0x30);
 686   5                                                                      putchar(value[4]+0x30);
 687   5                                                                      refresh_led();
 688   5                                                                      key_pressed=OFF;
 689   5                                                                      }
 690   4                                                                                                                              
 691   4                                                                      break;
 692   4                                              case  exit_setup:       Freq_temp=value[0];
 693   4                                                                      Freq=Freq_temp*10000;
 694   4                                                                      Freq_temp=value[1];
 695   4                                                                      Freq=Freq+Freq_temp*1000;
 696   4                                                                      Freq_temp=value[2];
 697   4                                                                      Freq=Freq+Freq_temp*100;
 698   4                                                                      Freq_temp=value[3];
 699   4                                                                      Freq=Freq+Freq_temp*10;
 700   4                                                                      Freq=Freq+value[4];
 701   4                                                                      SetPhase(Freq);
 702   4                                                                      Set_Display_Add(560);
 703   4                                                                      putchar(value[0]+0x30);
 704   4                                                                      putchar(value[1]+0x30);
 705   4                                                                      putchar(value[2]+0x30);
 706   4                                                                      putchar(value[3]+0x30);
 707   4                                                                      putchar(value[4]+0x30);
 708   4                                                                      refresh_led();
 709   4                                                                      Set_Display_Add(428);
 710   4                                                                      printf("     ");
 711   4                                                                      refresh_led();
 712   4                                                                      SetupSM=enter_num;
 713   4                                                                      MainSM=Screen;
 714   4                                                                      break;
 715   4                                      }
 716   3                      break;
 717   3      ////////////////////////////////////////////////////////////
 718   3             case TiaoFu:      //调幅状态
 719   3                                      SetCMD(2);
 720   3                          display_mod(2);
 721   3                                      aa=0;
 722   3                                      SetFSM=0;
 723   3                                      switch(SetupSM)
 724   3                                      {
 725   4                                              case  enter_num:        value[0]=0;//调制波频率初始值为前一个状态所设置的值
 726   4                                                                      value[1]=0;
 727   4                                                                      value[2]=0;
 728   4                                                                      value[3]=0;
 729   4                                                                      value[4]=0;
 730   4                                                                      Set_Display_Add(560);
 731   4                                                                      putchar(value[0]+0x30);
 732   4                                                                      putchar(value[1]+0x30);
 733   4                                                                      putchar(value[2]+0x30);
 734   4                                                                      putchar(value[3]+0x30);
 735   4                                                                      putchar(value[4]+0x30);
 736   4                                                                      value_index=0;
 737   4                                                                      SetupSM=wait_key;
C51 COMPILER V7.06   SS_SWEEP                                                              02/25/2007 16:14:28 PAGE 13  

 738   4                                                                      break;
 739   4                                              case  wait_key:         if(key_pressed==ON)//提取按键值,进行状态的处理
 740   4                                                                      {
 741   5                                                                      switch(key_no)
 742   5                                                                              {
 743   6                                                                              case key0:
 744   6                                                                              case key1: 
 745   6                                                                              case key2: 
 746   6                                                                              case key3: 
 747   6                                                                              case key4: 
 748   6                                                                              case key5:
 749   6                                                                              case key6:
 750   6                                                                              case key7:
 751   6                                                                              case key8:
 752   6                                                                              case key9:
 753   6                                                                                      if(value_index<5)
 754   6                                                                                      {
 755   7                                                                                      value[value_index]=key_no;
 756   7                                                                                      value_index++;
 757   7                                                                                      }
 758   6                                                                                      
 759   6                                                                                      break;
 760   6                                                                              case key_enter:SetupSM=exit_setup;//按下setup,进行载波调制波频率的设置
 761   6                                                                                      break;
 762   6                                                                                      case key_tiao: //若再按下调幅键,则进入DDS的最初状态,即screen状态,可以进行正常频率的设置
 763   6                                                     SetupSM=enter_num;
 764   6                                                                                 MainSM=Screen;
 765   6                                                                                 SetCMD(0);
 766   6                                                     display_mod(0);
 767   6                                                                                               break;
 768   6                                                                              default:  break;                                
 769   6                                                                              }
 770   5                                                                      Set_Display_Add(560);
 771   5                                                                      putchar(value[0]+0x30);
 772   5                                                                      putchar(value[1]+0x30);
 773   5                                                                      putchar(value[2]+0x30);
 774   5                                                                      putchar(value[3]+0x30);
 775   5                                                                      putchar(value[4]+0x30);
 776   5                                                                      refresh_led();
 777   5                                                                      key_pressed=OFF;
 778   5                                                                      }
 779   4                                                                                                                              
 780   4                                                                      break;
 781   4                                              case  exit_setup:       Freq_temp=value[0];
 782   4                                                                      Freq=Freq_temp*10000;
 783   4                                                                      Freq_temp=value[1];
 784   4                                                                      Freq=Freq+Freq_temp*1000;
 785   4                                                                      Freq_temp=value[2];
 786   4                                                                      Freq=Freq+Freq_temp*100;
 787   4                                                                      Freq_temp=value[3];
 788   4                                                                      Freq=Freq+Freq_temp*10;
 789   4                                                                      Freq=Freq+value[4];
 790   4                                                                      SetPhase(Freq);//设置调制波频率
 791   4                                                                      Set_Display_Add(560);
 792   4                                                                      putchar(value[0]+0x30);
 793   4                                                                      putchar(value[1]+0x30);
 794   4                                                                      putchar(value[2]+0x30);
 795   4                                                                      putchar(value[3]+0x30);
 796   4                                                                      putchar(value[4]+0x30);
 797   4                                                                      refresh_led();
 798   4                                                                      Set_Display_Add(428);
 799   4                                                                      printf("     ");
C51 COMPILER V7.06   SS_SWEEP                                                              02/25/2007 16:14:28 PAGE 14  

 800   4                                                                      refresh_led();
 801   4                                                                      SetupSM=enter_num;
 802   4                                                                      MainSM=Screen;
 803   4      
 804   4                                                                      break;
 805   4                                      }
 806   3                      break;
 807   3      ////////////////////////////////////////////////////////////
 808   3              default:
 809   3                      break;
 810   3              }
 811   2              
 812   2              
 813   2              
 814   2              }          //等待中断
 815   1      }
 816          
 817          void interrupt_handle() interrupt 0     
 818          {                                               
 819   1              //uchar disdata;
 820   1              DISABLE;                //CPU关中断
 821   1              wait();                 //键盘消抖延时
 822   1              if (Int_wire==0)
 823   1              {
 824   2              key_pressed=ON;
 825   2              P2=0xFF;
 826   2              key_no=P2&0x0F;        //读取P2口的低四位显示数据编码   
 827   2              }          
 828   1              ENABLE;                   //CPU开中断
 829   1      }
 830          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   3536    ----
   CONSTANT SIZE    =    185    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     42      11
   IDATA SIZE       =      6    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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