📄 tlc2543.lst
字号:
C51 COMPILER V7.06 TLC2543 01/01/2008 14:44:32 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE TLC2543
OBJECT MODULE PLACED IN TLC2543.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE TLC2543.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /**************************************
2 TLC2543驱动程序
3 *************************************/
4
5 #include <reg52.h>
6 #include <stdio.h>
7 #include <absacc.h>
8 #include <intrins.h>
9
10 /**************************************
11 2543控制引脚宏定义
12 *************************************/
13 sbit CLOCK=P1^7; /*2543时钟*/
14 sbit D_IN= P1^6; /*2543输入*/
15 sbit D_OUT= P1^5; /*2543输出*/
16 sbit _CS= P1^2; /*2543片选*/
17
18 #define uint unsigned int
19 #define uchar unsigned char
20
21 /**************************************
22 名称:delay
23 功能:延时模块
24 输入参数:n要延时的周期数
25 输出参数:无
26 *************************************/
27 void delay(uchar n)
28 {
29 1 uchar i;
30 1 for(i=0;i<n;i++)
31 1 {
32 2 _nop_();
33 2 }
34 1 }
35
36 /**************************************
37 名称:read2543
38 功能:TLC2543驱动模块
39 输入参数:port通道号
40 输出参数:ad转换值
41 *************************************/
42 uint read2543(uchar port)
43 {
44 1 uint ad=0,i;
45 1 CLOCK=0;
46 1 _CS=0;
47 1 port<<=4;
48 1 for(i=0;i<12;i++)
49 1 {
50 2 if(D_OUT)
51 2 {ad|=0x01;
52 3
53 3 }
54 2 D_IN=(bit)(port&0x80);
55 2
C51 COMPILER V7.06 TLC2543 01/01/2008 14:44:32 PAGE 2
56 2 CLOCK=1;
57 2 delay(3);
58 2 CLOCK=0;
59 2 delay(3);
60 2 port<<=1;
61 2 ad<<=1;
62 2 }
63 1 _CS=1;
64 1 ad>>=1;
65 1 return(ad);
66 1 }
67
68 /**************************************
69 名称:main
70 功能:主函数
71 输入参数:无
72 输出参数:无
73 *************************************/
74 void main()
75
76 {uint i,ad;
77 1
78 1 SCON=0X52;
79 1 TMOD=0X20;
80 1 TH1=0XFD; // 波特率为4800,晶振=11.0592M
81 1 TR1=1;
82 1
83 1 while(1)
84 1 {
85 2
86 2 ad=read2543(0);
87 2
88 2 printf("result=%d\n",ad);
89 2 for(i=0;i<1000;i++)
90 2 delay(244);
91 2 }
92 1
93 1 }
94
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 146 ----
CONSTANT SIZE = 11 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
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 + -