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

📄 main.lst

📁 关于MAX7219与TLC2543的数据采集系统
💻 LST
字号:
C51 COMPILER V7.08   MAIN                                                                  04/08/2007 11:15:34 PAGE 1   


C51 COMPILER V7.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: E:\Program Files\keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include"header.h"
   2          #include<intrins.h>
   3          #define uchar unsigned char 
   4          #define uint  unsigned int
   5          
   6          #define led  P0
   7          sbit cs  = P0^7;           //片选    
   8          sbit dout= P2^4;           //输出
   9          sbit din = P2^3;           //输入
  10          sbit clk = P2^2;           //时钟
  11          
  12          uchar disbuf[8];
  13          uchar an0;
  14          
  15          void delayms(uint x)
  16          {
  17   1         uchar i;
  18   1         while(x--)
  19   1         for(i=0;i<125;i++)
  20   1         ;
  21   1         }
  22          
  23          void display(uchar *s)
  24          {  
  25   1         WriteWord(Digit0,s[0]);
  26   1         WriteWord(Digit1,s[1]);
  27   1         WriteWord(Digit2,s[2]);
  28   1         WriteWord(Digit3,s[3]);
  29   1         WriteWord(Digit4,s[4]);
  30   1         WriteWord(Digit5,s[5]);
  31   1         WriteWord(Digit6,s[6]);
  32   1         WriteWord(Digit7,s[7]);
  33   1       }
  34          
  35          void convert(unsigned long fr)
  36          {
  37   1         disbuf[2]=fr/100000;
  38   1         disbuf[3]=fr/10000%10;
  39   1         disbuf[4]=fr/1000%10;
  40   1         disbuf[5]=fr/100%10;
  41   1         disbuf[6]=fr/10%10;
  42   1         disbuf[7]=fr%10;
  43   1         disbuf[0]=1;
  44   1         disbuf[1]=0;    
  45   1      }
  46          
  47          //读tlc2543,12位输出,MSB在前,单极性数据
  48          uint  read2543(uchar port)
  49          {
  50   1        uint ad=0,i;
  51   1        clk=0;
  52   1        cs=0;
  53   1        port<<=4;                   //只取高4位的通道地址位传送
  54   1        for(i=0;i<12;i++)
  55   1        {
C51 COMPILER V7.08   MAIN                                                                  04/08/2007 11:15:34 PAGE 2   

  56   2         if(dout) ad|=0x01;
  57   2         din=(bit)(port&0x80);
  58   2         clk=1;
  59   2         _nop_();
  60   2         _nop_();
  61   2         clk=0;
  62   2         _nop_();
  63   2         _nop_();
  64   2         port<<=1;
  65   2         ad<<=1;
  66   2        }
  67   1         cs=1;
  68   1         ad>>=1;
  69   1         return(ad);
  70   1         }
  71          
  72          void main()
  73          {
  74   1        InitDisplay();
  75   1        delayms(100);
  76   1        display(disbuf); 
  77   1        while(1)
  78   1        {
  79   2          an0=read2543(0);
  80   2              delayms(1000);
  81   2              convert(an0);
  82   2          display(disbuf);
  83   2        }
  84   1      }


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