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

📄 ad985411.lst

📁 AD9854的C51控制程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
              
              void ParallelSetQDAC(uint data)
              {
                 uchar temp[2];
                 temp[0] = data / 256;
                 temp[1] = data % 256;
                 ParallelSetReg(0x26, temp, 2);
              }
              
              void ParallelPowerDown(bool flag)
              {
                  uchar data;
                  if (flag == true)
                      data = 0x17;
                  else
                      data = 0x00;
                 ParallelSetReg(0x1d, &data, 1);
              }
              
              void ParallelSetRefClk(uchar times)
              {
                  uchar data;
                  if(times >=  4)
                  {
                      data = 0x20;
                      if (times >= 10)
                          data |= 0x40;
                      data |= times;
                      systemclk = systemclk * times;
                      ParallelSetReg(0x1e, &data, 1);
                  }
              }
              
              void ParallelSetMode(bool triangle, bool qdac, uchar mode)
              {
                  uchar data;
                  data = (mode << 1);
                  if (triangle == true)
                      data |= 0x20;
                  if (qdac == true)
                      data |= 0x10;
                  ParallelSetReg(0x1f, &data, 1);
              }
              
              void ParallelSetOSK(bool bypass, bool osken, bool oskint)
              {
                  uchar data;
                  data = 0;
                  if (bypass == true)
                      data |= 0x40;
                  if (osken == true)
                      data |= 0x20;
                  if (oskint == true)
                      data |= 0x10;
                  ParallelSetReg(0x20, &data, 1);
              }
              
C51 COMPILER V8.02   AD985411                                                              07/30/2007 18:46:28 PAGE 7   

              void Init9854(void)
              {
                  DOUT;
                  SADDR;
                  RD;
                  WR;
                  MRESET;
                  SHAPEKEYING;
                  FBH;
                  UPDATE;
                  MRST();
                  SHAPEKEYINGLOW;
                  FBHLOW;
                  WRHIGH;
                  RDHIGH;
                  systemclk = 20;
                  ParallelPowerDown(false);
                  ParallelSetRefClk(4);
                  ParallelSetMode(false, false, SINGLETONE);
                  ParallelSetOSK(false, false, false);
              }
              
              void SingleTone(float freq, ulong amplitude)
              {
                  ParallelSetMode(false, false, SINGLETONE);
                  ParallelSetFTW1(freq);
                  ParallelSetOSKI(amplitude);
                  ParallelSetOSKQ(amplitude);
              }
              
              void UnrampedFSK(float freq1, float freq2)
              {
                  ParallelSetMode(false, false, FSK);
                  ParallelSetFTW1(freq1);
                  ParallelSetFTW2(freq2);
              }
              
              void RampedFSK(bool triangle, float freq1, float freq2, float rampedfreq, ulong rrclk)
              {
                  ParallelSetMode(triangle, false, RAMPEDFSK);
                  ParallelSetFTW1(freq1);
                  ParallelSetFTW2(freq2);    
                  ParallelSetDFW(rampedfreq);
                  ParallelSetRRClk(rrclk);
              }
              
              void PSK(float freq, float phase1, float phase2)
              {
                  ParallelSetMode(false, false, BPSK);
                  ParallelSetFTW1(freq);
                  ParallelSetPhase1(phase1);
                  ParallelSetPhase2(phase2);
              }
              
              void AM(void)
              {
              }
              
              #endif
 417          
 418          //char CTRL_REG[]={0x10,0x64,0x00,0x00};  
 419          char CTRL_REG[]={0x00,0x6f,0x01,0x20};
C51 COMPILER V8.02   AD985411                                                              07/30/2007 18:46:28 PAGE 8   

 420          #if ( parameter == 1 )
 421          
 422          void CS( void )
 423          { 
 424   1        CSBHIGH;
*** ERROR C202 IN LINE 424 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
 425   1        delay_9854(20);
 426   1        CSBLOW;
*** ERROR C202 IN LINE 426 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
 427   1      }
 428          
 429          void BreakOperation( void )//中断一次I/O操作
 430          {
 431   1       IORESETHIGH;
*** ERROR C202 IN LINE 431 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
 432   1       delay_9854(20);
 433   1       IORESETLOW;
*** ERROR C202 IN LINE 433 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
 434   1      }
 435          
 436          void SPISendByte(uchar data) //发送一个字节数据
*** ERROR C141 IN LINE 436 OF E:\9854\AD9854\AD985411.C: syntax error near ')'
 437          {
 438   1       uchar databuffer[9],i;
 439   1       SDIO_OUT;
*** ERROR C202 IN LINE 439 OF E:\9854\AD9854\AD985411.C: 'P2DIR': undefined identifier
 440   1       /******以下一段用来得到每次发送一位时的应发送的数据************************/
 441   1       for(i=8;i>0;i--)
 442   1         {
 443   2          if(data%2)
*** ERROR C141 IN LINE 443 OF E:\9854\AD9854\AD985411.C: syntax error near 'data'
 444   2              {databuffer[i]=4;}
 445   2          else
 446   2              databuffer[i]=0;
 447   2          data = data>>1;
*** ERROR C141 IN LINE 447 OF E:\9854\AD9854\AD985411.C: syntax error near 'data'
 448   2         }
 449   1       SCLKHIGH;
*** ERROR C202 IN LINE 449 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 450   1       for(i=1;i<9;i++)
 451   1        {
 452   2         SCLKLOW;
*** ERROR C202 IN LINE 452 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 453   2         if(databuffer[i])
 454   2             SDIOHIGH;
*** ERROR C202 IN LINE 454 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
 455   2         else
 456   2             SDIOLOW;
*** ERROR C202 IN LINE 456 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
 457   2         delay_9854(1);
 458   2         SCLKHIGH;
*** ERROR C202 IN LINE 458 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 459   2         delay_9854(1);
 460   2        }
 461   1        SCLKLOW;
*** ERROR C202 IN LINE 461 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 462   1      }
 463          
 464          uchar SPIRecieveByte( void ) //接收一个字节数据
 465          {
 466   1       uchar databuffer,i;
 467   1       SDIO_IN;
C51 COMPILER V8.02   AD985411                                                              07/30/2007 18:46:28 PAGE 9   

*** ERROR C202 IN LINE 467 OF E:\9854\AD9854\AD985411.C: 'P2DIR': undefined identifier
 468   1       databuffer=0;
 469   1       for(i=1;i<9;i++)
 470   1        {
 471   2         databuffer=databuffer<<1;
 472   2         SCLKLOW;
*** ERROR C202 IN LINE 472 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 473   2         SCLKHIGH;
*** ERROR C202 IN LINE 473 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 474   2         if(SDIO_DATA)
*** ERROR C202 IN LINE 474 OF E:\9854\AD9854\AD985411.C: 'P2IN': undefined identifier
 475   2            databuffer+=1;
 476   2        }
 477   1        SCLKLOW;
*** ERROR C202 IN LINE 477 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
 478   1        delay_9854 ( 10 );
 479   1        return databuffer;
 480   1      }
 481          
 482          void Init9854 ( void )
 483          {
 484   1         uchar k;
 485   1         HADEINIT;
*** ERROR C202 IN LINE 485 OF E:\9854\AD9854\AD985411.C: 'P2OUT': undefined identifier
*** ERROR C202 IN LINE 485 OF E:\9854\AD9854\AD985411.C: 'P2DIR': undefined identifier
*** ERROR C202 IN LINE 485 OF E:\9854\AD9854\AD985411.C: 'P3OUT': undefined identifier
*** ERROR C202 IN LINE 485 OF E:\9854\AD9854\AD985411.C: 'P3DIR': undefined identifier
 486   1         BreakOperation( );     
 487   1         MRST( );
 488   1         CS( );
 489   1         
 490   1         SPISendByte( 0x07 );                   // set Control Register addr.
 491   1         for( k = 0; k < 4; k++ )
 492   1         { 
 493   2           SPISendByte( CTRL_REG[k] );         // set Control Register
 494   2         }
 495   1         
 496   1         //IOUpdate( );
 497   1         delay_9854 ( 5000 );
 498   1      }
 499          
 500          #endif
 501          
 502          #if( msp430 == 1 )
              void InitSystemClock(void)  // 初始化系统时钟
              {
                WDTCTL = WDTPW + WDTHOLD;              // Stop watchdog timer
                SCFI0 |= FN_4;
                SCFQCTL = 121;                        // 7.99MHz 120 * 32.768k
                FLL_CTL0 = DCOPLUS + OSCCAP1;
                P1DIR = 0x22;
                P1SEL = 0x22;
              }
              #endif
 513          
 514          #if( msp430 == 0 )
 515          void InitSystemClock(void)  // 初始化系统时钟
 516          {
 517   1        unsigned char i;
 518   1        WDTCTL=WDTPW+WDTHOLD;//关闭看门狗
*** ERROR C202 IN LINE 518 OF E:\9854\AD9854\AD985411.C: 'WDTCTL': undefined identifier
 519   1        BCSCTL1 &= ~XT2OFF;                   // XT2on
C51 COMPILER V8.02   AD985411                                                              07/30/2007 18:46:28 PAGE 10  

*** ERROR C202 IN LINE 519 OF E:\9854\AD9854\AD985411.C: 'BCSCTL1': undefined identifier
 520   1        do 
 521   1        {
 522   2        IFG1 &= ~OFIFG;                       // Clear OSCFault flag
*** ERROR C202 IN LINE 522 OF E:\9854\AD9854\AD985411.C: 'IFG1': undefined identifier
 523   2        for (i = 0xFF; i > 0; i--);           // Time for flag to set
 524   2        }
 525   1        while ((IFG1 & OFIFG));               // OSCFault flag still set?                
*** ERROR C202 IN LINE 525 OF E:\9854\AD9854\AD985411.C: 'IFG1': undefined identifier
 526   1      
 527   1        BCSCTL2 |= SELM_2 + SELS; 
 528   1      }
 529          #endif
 530          #if( parameter == 0 )
              void main( void )
              {
                 uchar k,temp,readword;
                 InitSystemClock ( );
                 
                 Init9854 ( );   
                 MRST( );   
                 Init9854 ( );
                 SingleTone ( 200000, 0xFFF );
                 temp = 0x1d;
                 for ( k = 4; k; k-- )
                 {
                   readword = ParallelReadByte ( temp ++ );
                 }    
                  LPM0;
              }  
              #endif
 548          
 549          #if( parameter == 1 )
 550          void main( void )
 551          {
 552   1         uchar k,temp;
 553   1         InitSystemClock ( );
 554   1         
 555   1         Init9854 ( );   
 556   1         MRST( );   
 557   1         while ( 1 )
 558   1         SPISendByte( 0xff );
 559   1         //it9854 ( );
 560   1         
 561   1         SPISendByte(0x02);                        // set Frequency 1 addr.
 562   1         SPISendByte(0x03);                        // set Frequency 1 NO.
 563   1         for(k=0;k<5;k++)
 564   1         { 
 565   2            SPISendByte(0x33);                      // set Frequency 1 NO.
 566   2         }  
 567   1          //IOUpdate( );
 568   1          delay_9854 ( 5000 );
 569   1          
 570   1          SPISendByte( 0x87 );
 571   1          for(k=0;k<4;k++)
 572   1          {
 573   2             temp = SPIRecieveByte( ); 
 574   2          }
 575   1          
 576   1          SPISendByte(0x82);                        // set Frequency 1 addr.
 577   1          
 578   1          for(k=0;k<6;k++)
C51 COMPILER V8.02   AD985411                                                              07/30/2007 18:46:28 PAGE 11  

 579   1         { 
 580   2            temp = SPIRecieveByte( );                // set Frequency 1 NO.
 581   2         }
 582   1          
 583   1          LPM0;
*** ERROR C202 IN LINE 583 OF E:\9854\AD9854\AD985411.C: 'LPM0': undefined identifier
 584   1      }
 585          #endif

C51 COMPILATION COMPLETE.  2 WARNING(S),  33 ERROR(S)

⌨️ 快捷键说明

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