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

📄 ads7816.lst

📁 这是串行AD采集芯片ADS7816的读写程序
💻 LST
字号:
C51 COMPILER V8.01   ADS7816                                                               03/09/2007 18:35:56 PAGE 1   


C51 COMPILER V8.01, COMPILATION OF MODULE ADS7816
OBJECT MODULE PLACED IN ads7816.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ads7816.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <REGX51.H>
   2          #include <intrins.h>
   3          #include <absacc.h>
   4          #include <spi.h>
   5          sbit DCLK=P1^1;
   6          sbit Dout=P1^0;
   7          sbit CE= P1^2;
   8          sbit red=P2^7;
   9          sbit green=P2^5;
  10          
  11          void  DelayMs(unsigned int ms)
  12          {
  13   1              unsigned int i=0;
  14   1              unsigned int j=0;
  15   1              
  16   1              for(i=0;i<ms;i++)
  17   1              {
  18   2                      for(j=0;j<350;j++)
  19   2                      {
  20   3                      }
  21   2              
  22   2                
  23   2              }       
  24   1      }
  25          void init()
  26          {
  27   1              DCLK=1;
  28   1              Dout=1;
  29   1              CE=1;
  30   1      }
  31          unsigned int readADS()
  32          {
  33   1              unsigned int back_up=0;
  34   1              unsigned char i=0;
  35   1              bit data1=0;
  36   1              Dout=1;
  37   1      
  38   1              DCLK=0;
  39   1              _nop_();
  40   1              _nop_();
  41   1              _nop_();
  42   1              _nop_();
  43   1      
  44   1              CE=1;
  45   1              _nop_();
  46   1              _nop_();
  47   1              _nop_();
  48   1              _nop_();
  49   1              CE=0;
  50   1              //sample
  51   1              DCLK=1;
  52   1              _nop_();
  53   1              _nop_();
  54   1              _nop_();
  55   1              _nop_();
C51 COMPILER V8.01   ADS7816                                                               03/09/2007 18:35:56 PAGE 2   

  56   1      
  57   1              DCLK=0;
  58   1              _nop_();
  59   1              _nop_();
  60   1              _nop_();
  61   1              _nop_();
  62   1              DCLK=1;
  63   1              _nop_();
  64   1              _nop_();
  65   1              _nop_();
  66   1              _nop_();
  67   1      
  68   1              DCLK=0;
  69   1              _nop_();
  70   1              _nop_();
  71   1              _nop_();
  72   1              _nop_();
  73   1      
  74   1              DCLK=1;
  75   1              _nop_();
  76   1              _nop_();
  77   1              _nop_();
  78   1              _nop_();
  79   1      
  80   1              for(i=0;i<12;i++)
  81   1              {
  82   2                      
  83   2                      DCLK=0;
  84   2                      _nop_();
  85   2                      _nop_();
  86   2                      data1=Dout;
  87   2              if(data1)
  88   2              {
  89   3                    back_up|=(0x0800>>i);
  90   3              }
  91   2                      DCLK=1;
  92   2                      _nop_();
  93   2              _nop_();
  94   2              }
  95   1              CE=1;
  96   1          return back_up;
  97   1      }
  98          void main()
  99          {
 100   1               unsigned int ad=0;
 101   1               unsigned char i=0;
 102   1               green=0;
 103   1               red=1;
 104   1      
 105   1               init();
 106   1               init_spi();
 107   1      
 108   1               for(i=0;i<8;i++)
 109   1               {
 110   2                      combuf[i]=0xaa;
 111   2               }
 112   1               spi_send(combuf,8);
 113   1              
 114   1               
 115   1               ad=readADS();
 116   1               combuf[1]=(ad&0xff);
 117   1               combuf[0]=(ad>>8)&0xff;
C51 COMPILER V8.01   ADS7816                                                               03/09/2007 18:35:56 PAGE 3   

 118   1               spi_send(combuf,2);
 119   1               DelayMs(1000);
 120   1               green=1;
 121   1               red=0;
 122   1               while(1);
 123   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    215    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       2
   IDATA SIZE       =   ----    ----
   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 + -