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

📄 4154.lst

📁 PLL芯片ATF4154控制程序
💻 LST
字号:
C51 COMPILER V6.12  4154                                                                   12/10/2008 10:37:13 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE 4154
OBJECT MODULE PLACED IN .\4154.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\4154.c DEBUG OBJECTEXTEND

stmt level    source

   1          #include <reg52.h>
   2          #include <intrins.h>
   3          #include <string.h>
   4          
   5          #define uchar unsigned char
   6          #define uint  unsigned int
   7          
   8          sbit SCL=P1^1;   //时钟
   9          sbit DATA=P1^2;  //数据 
  10          sbit LE=P1^3;    //数据
  11          
  12          uchar data0;
  13          //延时程序
  14          void ADf4154_delay(int time)
  15          {
  16   1          int i;
  17   1          for(i = 0; i < time; i++)
  18   1          {
  19   2              _nop_();
  20   2              _nop_();
  21   2              _nop_();
  22   2              _nop_();
  23   2          }
  24   1      }
  25          
  26          //写N寄存器
  27          void ADf4154_SendN(uchar Ndata1)
  28          {
  29   1      	uint i;
  30   1      	for(i=0;i<22;i++)
  31   1      	 	{	
  32   2      			if((Ndata1&0x400000)==1)
  33   2      		    DATA=1;
  34   2      			else
  35   2      			DATA=0;
  36   2      			Ndata1=(Ndata1<<1);
  37   2      			SCL=1;
  38   2      			ADf4154_delay(2);
  39   2      			SCL=0;
  40   2      		}
  41   1      	DATA=0;
  42   1      	SCL=1;
  43   1      	ADf4154_delay(2);
  44   1      	SCL=0;
  45   1      	DATA=0;
  46   1      	SCL=1;
  47   1      	ADf4154_delay(2);
  48   1      	SCL=0;
  49   1      	LE=1;
  50   1      	ADf4154_delay(5);
  51   1      	LE=0;
  52   1      }
  53          
  54          //写R寄存器
  55          void ADf4154_SendR(uchar Rdata1)
C51 COMPILER V6.12  4154                                                                   12/10/2008 10:37:13 PAGE 2   

  56          {
  57   1      	uint i;
  58   1      	for(i=0;i<22;i++)
  59   1      	 	{	
  60   2      			if((Rdata1&0x400000)==1)
  61   2      		    DATA=1;
  62   2      			else
  63   2      			DATA=0;
  64   2      			Rdata1=(Rdata1<<1);
  65   2      			SCL=1;
  66   2      			ADf4154_delay(2);
  67   2      			SCL=0;
  68   2      		}
  69   1      	DATA=0;
  70   1      	SCL=1;
  71   1      	ADf4154_delay(2);
  72   1      	SCL=0;
  73   1      	DATA=1;
  74   1      	SCL=1;
  75   1      	ADf4154_delay(2);
  76   1      	SCL=0;
  77   1      	LE=1;
  78   1      	ADf4154_delay(5);
  79   1      	LE=0;
  80   1      }
  81          
  82          //写控制寄存器
  83          void ADf4154_SendC(uchar Cdata1)
  84          {
  85   1      	uint i;
  86   1      	for(i=0;i>14;i++)
  87   1      	 	{	
  88   2      			if((Cdata1&0x4000)==1)
  89   2      		    DATA=1;
  90   2      			else
  91   2      			DATA=0;
  92   2      			Cdata1=(Cdata1<<1);
  93   2      			SCL=1;
  94   2      			ADf4154_delay(2);
  95   2      			SCL=0;
  96   2      		}
  97   1      	DATA=1;
  98   1      	SCL=1;
  99   1      	ADf4154_delay(2);
 100   1      	SCL=0;
 101   1      	DATA=0;
 102   1      	SCL=1;
 103   1      	ADf4154_delay(2);
 104   1      	SCL=0;
 105   1      	LE=1;
 106   1      	ADf4154_delay(5);
 107   1      	LE=0;
 108   1      }
 109          
 110          //写噪声寄存器
 111          void ADf4154_SendSN(uchar SNdata1)
 112          {
 113   1      	uint i;
 114   1      	for(i=0;i<9;i++)
 115   1      	 	{	
 116   2      			if((SNdata1&0x0100)==1)
 117   2      		    DATA=1;
C51 COMPILER V6.12  4154                                                                   12/10/2008 10:37:13 PAGE 3   

 118   2      			else
 119   2      			DATA=0;
 120   2      			SNdata1=(SNdata1<<1);
 121   2      			SCL=1;
 122   2      			ADf4154_delay(2);
 123   2      			SCL=0;
 124   2      		}
 125   1      	DATA=1;
 126   1      	SCL=1;
 127   1      	ADf4154_delay(2);
 128   1      	SCL=0;
 129   1      	DATA=1;
 130   1      	SCL=1;
 131   1      	ADf4154_delay(2);
 132   1      	SCL=0;
 133   1      	LE=1;
 134   1      	ADf4154_delay(5);
 135   1      	LE=0;
 136   1      }
 137          
 138          //初始化
 139          void ADf4154_init()
 140          {
 141   1      	SCL=0;
 142   1      	ADf4154_delay(2);
 143   1      	DATA=0;
 144   1      	ADf4154_delay(2);
 145   1      	LE=0;
 146   1      	ADf4154_delay(2);
 147   1      }
 148          
 149          void main()
 150          {
 151   1      	ADf4154_init();
 152   1      	ADf4154_SendN(2093056);
 153   1      	ADf4154_SendR(1175567);
 154   1      	ADf4154_SendC(251);
 155   1      	ADf4154_SendSN(224);//LOW NOISE AND SPUR MODE
 156   1      	while(1);
 157   1      }
 158          


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


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

⌨️ 快捷键说明

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