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

📄 tlc1543.lst

📁 TLC5615的10位AD转换程序,C直接调用汇编
💻 LST
字号:
C51 COMPILER V7.08   TLC1543                                                               05/30/2007 15:37:20 PAGE 1   


C51 COMPILER V7.08, COMPILATION OF MODULE TLC1543
OBJECT MODULE PLACED IN TLC1543.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE TLC1543.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*
   2          ;程 序 最 后 修 改 时 间  0-4-3 23:48
   3          ;软 件 标 题:TLC1543 AD采样子程序.c
   4          ;软 件 说 明:从TLC1543读取采样值,形参port是采样的通道号
   5          ;_________________________________________
   6          
   7          ;原作者:          龙啸九天  deviser@126.com    http://mcs51.yeah.net 
   8          ;程序修改人:
   9          ;版本号:     2.0
  10          ;_________________________________________
  11          */
  12          #include<reg52.h>
  13          #include<intrins.h>
  14          #define uchar unsigned char
  15          #define uint  unsigned int
  16          
  17          //==========AD采样模块============//
  18          
  19          //TLC1543 A/D用转换用
  20          sbit CLOCK=P1^3;
  21          sbit D_IN=P1^4;
  22          sbit D_OUT=P1^5;
  23          sbit _CS=P1^6;
  24          
  25          //========================新版本=======================
  26          uint read1543(uchar port)       //从TLC1543读取采样值,形参port是采样的通道号
  27          {
  28   1      uint data ad;
  29   1      uint data i;
  30   1      uchar data al=0,ah=0;
  31   1      
  32   1      CLOCK=0;
  33   1      _CS=0;
  34   1      port<<=4;
  35   1      for (i=0;i<4;i++) //把通道号打入1543
  36   1      {
  37   2              D_IN=(bit)(port&0x80);CLOCK=1;CLOCK=0;
  38   2              port<<=1;
  39   2      }
  40   1              
  41   1      for (i=0;i<6;i++) //填充6个CLOCK
  42   1      {
  43   2      CLOCK=1;CLOCK=0;
  44   2      }
  45   1      
  46   1      _CS=1;_nop_();_nop_();_CS=0; //等待AD转换
  47   1      
  48   1      for (i=0;i<2;i++) //取D9,D8
  49   1      {
  50   2              D_OUT=1;
  51   2              CLOCK=1;
  52   2              ah<<=1;
  53   2              if (D_OUT) ah|=0x01;
  54   2              CLOCK=0;
  55   2      }       
C51 COMPILER V7.08   TLC1543                                                               05/30/2007 15:37:20 PAGE 2   

  56   1      
  57   1      for (i=0;i<8;i++) //取D7--D0
  58   1      {
  59   2              D_OUT=1;
  60   2              CLOCK=1;
  61   2              al<<=1;
  62   2              if (D_OUT) al|=0x01;
  63   2              CLOCK=0;
  64   2      }       
  65   1      
  66   1      _CS=1;
  67   1      
  68   1      ad=(uint)ah;ad<<=8;ad|=al; //得到AD值
  69   1      return (ad);
  70   1      }


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