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

📄 mcp3204.lst

📁 MCP3204可用源代码和这PROTUES彷真图
💻 LST
字号:
C51 COMPILER V8.05a   MCP3204                                                              04/01/2009 12:08:34 PAGE 1   


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

line level    source

   1          
   2          #include<myc51.h>
   3          #include<1602.h>
   4          
   5          
   6          sbit clk = P1^4;   // clock signel
   7          sbit dout = P1^5;  // data get out
   8          sbit din = P1^6 ;   // data put in
   9          sbit cs = P1^7;    // cs selt
  10          
  11          
  12          void delay50ms(uint t)
  13          {
  14   1      uint j; 
  15   1      for(t;t>0;t--)
  16   1      for(j=6245;j>0;j--);
  17   1      
  18   1      }
  19          
  20          
  21          
  22          // clock time ***************************************
  23          void clkt()
  24          {
  25   1          clk=1;
  26   1          
  27   1          //delay1us;
  28   1          clk=0;
  29   1          //delay1us;
  30   1      }
  31          
  32          void clktf()
  33          {
  34   1          clk=0;
  35   1          
  36   1          //delay1us;
  37   1          clk=1;
  38   1          //delay1us;
  39   1      }
  40          
  41          
  42          sint getdata()//uchar chx)
  43          {
  44   1          sint hd=0x00,ld=0x00;   sint  t; 
  45   1          sint  dat=0x00;
  46   1         // float outdat;
  47   1          
  48   1          
  49   1      
  50   1      
  51   1          
  52   1          
  53   1                                     //din=0;clkf();din=0;clkf();din=0;clkf();//clkt();clkt();
  54   1        /*
  55   1          din=1;
C51 COMPILER V8.05a   MCP3204                                                              04/01/2009 12:08:34 PAGE 2   

  56   1          clktf();
  57   1          din=1;     //single CH
  58   1          clktf();
  59   1          din=1;     //D2
  60   1          clktf();    //8
  61   1      
  62   1      
  63   1          din=0;  //0x02&chx;   //D1
  64   1          clktf();
  65   1          din=1;    //0x01&chx;   //D0
  66   1          clktf();        //10
  67   1      
  68   1          clktf();
  69   1          clk=0;        //12
  70   1          //delay1us;
  71   1      
  72   1         */
  73   1         
  74   1         uchar ch=0xe0; //1 11 0 ;0 000
  75   1      
  76   1          cs=1;
  77   1          
  78   1          cs=0;
  79   1          
  80   1            clk=1;
  81   1         for(t=0;t<6;t++)
  82   1         {
  83   2            din=0x80&ch;
  84   2           // if(0x80&ch==0x80)
  85   2           // {
  86   2           //    din=1;
  87   2           // }
  88   2           // else din=0; 
  89   2      
  90   2            clk=0;//delay1us;
  91   2            clk=1;//delay1us;
  92   2            ch<<=1;
  93   2         }
  94   1      
  95   1         for(t=0;t<13;t++)
  96   1         
  97   1         {
  98   2          clk=0;
  99   2          hd<<=1;
 100   2          clk=1;
 101   2                       delay1us;delay1us;delay1us;
 102   2          hd|=dout;    delay1us;delay1us;delay1us;
 103   2          }
 104   1      
 105   1          cs=1;
 106   1         /*
 107   1         for(t=8;t>0;t--)
 108   1         {
 109   1          ld<<=1;
 110   1          
 111   1          clkt();
 112   1          ld|=dout;// delay1us;
 113   1         }*/
 114   1          //clk=1;
 115   1          
 116   1          //delay1us;
 117   1          //cs=0;
C51 COMPILER V8.05a   MCP3204                                                              04/01/2009 12:08:34 PAGE 3   

 118   1         
 119   1      
 120   1          //hd<<=8;
 121   1          //dat=hd+ld;
 122   1           
 123   1          //outdat=((float)dat/4095)*5*1000;
 124   1          //dat=(sint)outdat;
 125   1          //dat=(sint)outdat; 
 126   1          return hd;
 127   1          
 128   1        
 129   1      }
 130          
 131          
 132          sint getd(uchar ch)
 133          {
 134   1         sint dat=0x00;
 135   1         uchar i;
 136   1         cs=1;
 137   1         cs=0;
 138   1         
 139   1         for(i=5;i>0;i--)
 140   1         {
 141   2            
 142   2            
 143   2            din=0x80&ch;
 144   2            clk=0;delay1us;
 145   2            clk=1;delay1us;
 146   2            ch<<=1;
 147   2         }
 148   1         clk=0;delay1us;
 149   1         clk=1;delay1us;
 150   1         clk=0;delay1us;
 151   1         clk=1;delay1us;
 152   1         clk=0;delay1us;
 153   1         //clk=1;delay1us;
 154   1         //clk=0;delay1us;
 155   1      
 156   1      
 157   1            for(i=12;i>0;i--)
 158   1         {
 159   2            dat<<=1;
 160   2            
 161   2            clk=1;delay1us;
 162   2            
 163   2            clk=0;delay1us;
 164   2            dat|=dout;
 165   2         }
 166   1      
 167   1         cs=1;delay1us;
 168   1      
 169   1         return dat;
 170   1      }
 171          
 172          void main()
 173          {
 174   1         sint bb,aa,cc;     float outdat;
 175   1            
 176   1         start1602();
 177   1         delay50ms(10);
 178   1         bb=3;
 179   1         goto_xy(0,0);
C51 COMPILER V8.05a   MCP3204                                                              04/01/2009 12:08:34 PAGE 4   

 180   1         printd(bb);
 181   1         delay50ms(10);
 182   1      
 183   1         while(1)
 184   1         {
 185   2          delay50ms(10);
 186   2          
 187   2         // aa=getd(0xe0);        
 188   2                           delay50ms(10);          cc=getdata();
 189   2         
 190   2          //delay50ms(20);            
 191   2      
 192   2              //goto_xy(0,1);
 193   2      
 194   2         // printf("                                                               ");
 195   2      
 196   2          //goto_xy(0,1);
 197   2      
 198   2          //printd(aa);               
 199   2                          // outdat=((float)aa/4095)*5;goto_xy(6,1);printdf(outdat);
 200   2         
 201   2         // delay50ms(10);
 202   2                                                                  
 203   2           goto_xy(0,0);    printf("                                                     ");
 204   2              
 205   2               
 206   2      
 207   2          goto_xy(0,0);
 208   2          
 209   2          printd(bb++);
 210   2      
 211   2              goto_xy(4,0);
 212   2          
 213   2               printd(cc);        outdat=((float)cc/4095)*5;goto_xy(10,0);printdf(outdat);
 214   2         }
 215   1      
 216   1      }
*** WARNING C280 IN LINE 174 OF MCP3204.C: 'aa': unreferenced local variable
 217          
 218          
 219          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    805    ----
   CONSTANT SIZE    =     54    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      53
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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