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

📄 xinhao.lst

📁 计算实用教程adadad9851实用教程
💻 LST
📖 第 1 页 / 共 4 页
字号:
 244   2           Out_data2_com(0x00,0x00,0x24);
 245   2           i=169;
 246   2         }
 247   1        if(a==1)
 248   1         {
 249   2           Out_data2_com(0x00,0x04,0x24);
 250   2           i=1400;
 251   2         }
 252   1        Out_com(0xb0);
 253   1        for(l=i;l>0;l--)
 254   1         {
 255   2           Out_data(0x00);
 256   2         }
 257   1        Out_com(0xb2);
 258   1      }
 259          /******************************************************/
 260          /******************************************************/
 261          /**************** 显示一行英文字符*******************/
 262          void Dis_line(uchar Line_num)     //显示内容为Disp_Buff内所存内容
 263          {
 264   1        uchar l;
 265   1        Out_data2_com(Line_num*21,0x00,0x24);
 266   1        Out_com(0xb0);
 267   1        for(l=0;l<21;l++)
 268   1         {
 269   2           Out_data(Disp_Buff[l]-0x20);
 270   2         }
 271   1        Out_com(0xb2);
 272   1      }
 273          /****************************************************************************/
 274          
 275          
 276          
 277          
 278          /************************************************/
 279          void Manu0_Dis(void)
 280          {
 281   1        Chars_dis(" Signals   Generator ");
 282   1        Dis_line(0);
 283   1        Chars_dis("    1 ------ Sin     ");
 284   1        Dis_line(1);
 285   1        Chars_dis("    2 ------ A M     ");
 286   1        Dis_line(2);
 287   1        Chars_dis("    3 ------ FSK     ");
 288   1        Dis_line(3);
 289   1        Chars_dis("    4 ------ F M     ");
 290   1        Dis_line(4);
 291   1        Chars_dis("    5 ------ PSK     ");
 292   1        Dis_line(5);
 293   1        Chars_dis("    6 ------ ASK     ");
 294   1        Dis_line(6);
 295   1        Chars_dis(" Select Mode...  [20]");
 296   1        Dis_line(7);
 297   1      }
 298          /**************频率显示子程序***************/
 299          void Freq_Dis(ulong ff)
 300          {
 301   1        if(ff<10000)
 302   1          {
 303   2            Chars_dis_s(18,20,"Hz ");
C51 COMPILER V7.06   XINHAO                                                                05/24/2007 21:19:42 PAGE 6   

 304   2            Datas_dis(ff,8,17,16);
 305   2          }
 306   1        else if(ff<10000000)
 307   1          {
 308   2            Chars_dis_s(18,20,"KHz");
 309   2            Datas_dis(ff,8,17,13);
 310   2          }
 311   1        else
 312   1          {
 313   2            Chars_dis_s(18,20,"MHz");
 314   2            Datas_dis(ff,8,17,10);
 315   2          }
 316   1      }
 317          /********************************************/
 318          /************幅度显示程序************/
 319          void Ampl_Dis(uint aa)
 320          {
 321   1        if(aa<1000)
 322   1          {
 323   2            Chars_dis_s(18,20,"mV ");
 324   2            Datas_dis((ulong)(aa),15,17,18);
 325   2          }
 326   1        else
 327   1          {
 328   2            Chars_dis_s(18,20,"V  ");
 329   2            Datas_dis((ulong)(aa),12,17,14);
 330   2          }
 331   1      }
 332          /**************正弦输出模式菜单显示************/
 333          void Manu1_Dis(void)
 334          {
 335   1        Chars_dis("  Sin Output Mode    ");
 336   1        Dis_line(0);
 337   1        Chars_dis("1.Freq:              ");
 338   1        Freq_Dis(FREQ1);
 339   1        Dis_line(2);
 340   1        Chars_dis("2.Ampl:              ");
 341   1        Ampl_Dis(AMP1);
 342   1        Dis_line(4);
 343   1      }
 344          /***********************************************/
 345          void Manu2_Dis(void)
 346          {
 347   1        Chars_dis("   AM Output Mode    ");
 348   1        Dis_line(0);
 349   1        Chars_dis("1.F_C :              ");
 350   1        Freq_Dis(FREQ1);
 351   1        Dis_line(2);
 352   1        Chars_dis("2. Ma :           %  ");
 353   1        Datas_dis((ulong)(DEEP),15,17,18);
 354   1        Dis_line(4);
 355   1      }
 356          /**********************************************/
 357          void Manu3_Dis(void)
 358          {
 359   1        Chars_dis("   FSK Output Mode   ");
 360   1        Dis_line(0);
 361   1        Chars_dis("1.F_L :              ");
 362   1        Freq_Dis(FREQ1);
 363   1        Dis_line(1);
 364   1        Chars_dis("2.A_C :              ");
 365   1        Ampl_Dis(AMP1);
C51 COMPILER V7.06   XINHAO                                                                05/24/2007 21:19:42 PAGE 7   

 366   1        Dis_line(2);
 367   1        Chars_dis("3.F_H :              ");
 368   1        Freq_Dis(FREQ2);
 369   1        Dis_line(3);
 370   1        Chars_dis("  SEQ :   01010101   ");
 371   1       // Freq_Dis(FSK);
 372   1        Dis_line(4);
 373   1      
 374   1      }
 375          /************************************************/
 376          void Manu4_Dis(void)
 377          {
 378   1        Chars_dis("   FM Output Mode    ");
 379   1        Dis_line(0);
 380   1        Chars_dis("1.F_C :              ");
 381   1        Freq_Dis(FREQ1);
 382   1        Dis_line(2);
 383   1        Chars_dis("2.A_C :              ");
 384   1        Ampl_Dis(AMP1);
 385   1        Dis_line(3);
 386   1        if(ten_five)
 387   1           Chars_dis("3.Dalt Fmax :  5KHz  ");
 388   1        else
 389   1           Chars_dis("3.Dalt Fmax : 10KHz  ");
 390   1        Dis_line(4);
 391   1      }
 392          /************************************************/
 393          void Manu5_Dis(void)
 394          {
 395   1        Chars_dis("   PSK Output Mode   ");
 396   1        Dis_line(0);
 397   1        Chars_dis("  F_C :   100KHz     ");
 398   1        Dis_line(2);
 399   1        Chars_dis("  Rate:   10Kbps    ");
 400   1        Dis_line(3);
 401   1        Chars_dis("  SEQ :   01010101   ");
 402   1        Dis_line(4);
 403   1      }
 404          /************************************************/
 405          void Manu6_Dis(void)
 406          {
 407   1        Chars_dis("   ASK Output Mode   ");
 408   1        Dis_line(0);
 409   1        Chars_dis("  F_C :   100KHz     ");
 410   1        Dis_line(2);
 411   1        Chars_dis("  Rate:   10Kbps     ");
 412   1        Dis_line(3);
 413   1        Chars_dis("  SEQ :   01010101   ");
 414   1        Dis_line(4);
 415   1      }
 416          
 417          
 418          /********************AM调制波生成***********************/
 419          void DDS(ulong F)
 420          {
 421   1        ulong M;
 422   1        float fre=10.73621578383221;           //参数为0.1Hz精度的整数,故除10
 423   1        //fre=(float)(F);                      //fout=fosc*K/2e32
 424   1        //fre=fre*107.3621578383221;             //K=fout*2e32/fosc
 425   1        fre=fre*F;
 426   1        M=(ulong)(fre);                          //fosc=40.004480MHz
 427   1        DDS_D0=(uchar)(M&0x000000ff);
C51 COMPILER V7.06   XINHAO                                                                05/24/2007 21:19:42 PAGE 8   

 428   1        DDS_D1=(uchar)((M>>8)&0x000000ff);
 429   1        DDS_D2=(uchar)((M>>16)&0x000000ff);
 430   1        DDS_D3=(uchar)((M>>24)&0x000000ff);
 431   1      }
 432          /********************************************************/
 433          /*********AD9851**************/
 434          void AD9851_DDS(ulong frequence)
 435          {
 436   1        //float abc=23.858257297405;//fosc=40.004480*4.5;
 437   1      
 438   1        //float abc=29.826472471;   //fosc=23.999750*6;
 439   1      
 440   1        float abc=2.8636145307;                  //fosc=25.000000*6;  除10
 441   1      
 442   1        ulong ku;
 443   1        abc=abc*frequence;
 444   1        ku=(ulong)(abc);
 445   1      
 446   1        FRE1_D=(uchar)((ku>>24)&0x000000ff);
 447   1      
 448   1        FRE1_C=(uchar)((ku>>16)&0x000000ff);
 449   1      
 450   1        FRE1_B=(uchar)((ku>>8)&0x000000ff);
 451   1      
 452   1        FRE1_A=(uchar)(ku&0x000000ff);
 453   1      
 454   1        //MODE=0x01;
 455   1      }
 456          
 457          
 458          void AD9851_FSK(ulong f1,ulong f2)
 459          {
 460   1        float bc=2.8636145307;                  //fosc=25.000000*6;  除10
 461   1        ulong aku;
 462   1        bc=bc*f1;
 463   1        aku=(ulong)(bc);
 464   1      
 465   1        FRE1_D=(uchar)((aku>>24)&0x000000ff);
 466   1      
 467   1        FRE1_C=(uchar)((aku>>16)&0x000000ff);
 468   1      
 469   1        FRE1_B=(uchar)((aku>>8)&0x000000ff);
 470   1      
 471   1        FRE1_A=(uchar)(aku&0x000000ff);
 472   1      
 473   1        bc=2.8636145307;                  //fosc=25.000000*6;    除10
 474   1        bc=bc*f2;
 475   1      
 476   1        aku=(ulong)(bc);
 477   1      
 478   1        FRE2_D=(uchar)((aku>>24)&0x000000ff);
 479   1      
 480   1        FRE2_C=(uchar)((aku>>16)&0x000000ff);
 481   1      
 482   1        FRE2_B=(uchar)((aku>>8)&0x000000ff);
 483   1      
 484   1        FRE2_A=(uchar)(aku&0x000000ff);
 485   1        MODE=4; 
 486   1        }  
 487          
 488          /*********参数输入显示程序**********/
 489          void Input_Dis(void)
C51 COMPILER V7.06   XINHAO                                                                05/24/2007 21:19:42 PAGE 9   

 490          {
 491   1          EA=0;
 492   1          if(Step>10)
 493   1            { Chars_dis("=====================");
 494   2              Dis_line(5);
 495   2              Chars_dis(" Now you are setting:");

⌨️ 快捷键说明

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