📄 ads8364.lst
字号:
C51 COMPILER V8.15 ADS8364 10/29/2008 21:06:48 PAGE 1
C51 COMPILER V8.15, COMPILATION OF MODULE ADS8364
OBJECT MODULE PLACED IN ADS8364.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ADS8364.c COMPACT BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2 #include <intrins.h>
3 #include "TypeDefines.h"
4 #include "delay.h"
5 #include "ADS8364.h"
6
7
8
9 void clock(uchar num)
10 {
11 1 uchar i;
12 1 for(i=0;i<num;i++)
13 1 {
14 2 CLK=0;_nop_();
15 2 CLK=1;_nop_();
16 2 }
17 1 }
18
19
20 void ADS8364_read(uchar ad_num,uchar num)
21 {
22 1 uchar i,j,tmp8;
23 1 uint tmp16=0;
24 1 ulong tmp32[4]={0};
25 1 P1=0xff;
26 1 for(j=0;j<num;j++)
27 1 {
28 2 ADS8364_init();
29 2 ADS8364_start();
30 2 clock(19);
31 2
32 2 if(ad_num==1)
33 2 {
34 3 AD1_CS_LOW;
35 3 }
36 2 else
37 2 {
38 3 AD2_CS_LOW;
39 3 }
40 2
41 2 for(i=0;i<2;i++)
42 2 {
43 3 RD_AD=0; _nop_();
44 3 RD_AD=1; _nop_();
45 3 RD_AD=0; _nop_();
46 3 RD_AD=1; _nop_();
47 3 RD_AD=0; _nop_();
48 3 RD_AD=1; _nop_();
49 3 }
50 2 for(i=0;i<4;i++)
51 2 {
52 3 RD_AD=0; _nop_();
53 3 tmp8=P1; _nop_();
54 3 RD_AD=1; _nop_();
55 3 RD_AD=0; _nop_();
C51 COMPILER V8.15 ADS8364 10/29/2008 21:06:48 PAGE 2
56 3 tmp8=P1; _nop_();
57 3 RD_AD=1; _nop_();
58 3 RD_AD=0; _nop_();
59 3 tmp16=(uint)P1;
60 3 RD_AD=1;_nop_();
61 3 tmp16<<=8;
62 3 tmp16+=tmp8;
63 3 if(tmp16>=0x8000)
64 3 {
65 4 tmp16&=0x7FFF;
66 4 }
67 3 else
68 3 {
69 4 tmp16|=0x8000;
70 4 }
71 3 tmp32[i]+=tmp16;
72 3 }
73 2 AD1_CS_UP;
74 2
75 2 }
76 1 for(i=0;i<4;i++)
77 1 {
78 2 tmp32[i]<<=7;
79 2 if(ad_num==1)
80 2 {
81 3 Data1[i]=(uint)(tmp32[i]/para1[i]);
82 3 Data1[i]-=origin1[i];
83 3 }
84 2 else
85 2 {
86 3 Data2[i]=(uint)(tmp32[i]/para2[i]);
87 3 Data2[i]-=origin2[i];
88 3 }
89 2 }
90 1 }
91
92
93 void ADS8364_start()
94 {
95 1 CLK=0; _nop_();
96 1 HOLD=0; _nop_();
97 1 CLK=1; _nop_();
98 1 HOLD=1; _nop_();
99 1 }
100
101 void ADS8364_init()
102 {
103 1 AD1_CS_UP; _nop_();
104 1 RD_AD=1; _nop_();
105 1 CLK=1; _nop_();
106 1 HOLD=1; _nop_();
107 1 RESET=1; _nop_();
108 1 _nop_(); _nop_();
109 1 RESET=0; _nop_();
110 1 _nop_(); _nop_();
111 1 RESET=1; _nop_();
112 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 582 ----
CONSTANT SIZE = 16 ----
C51 COMPILER V8.15 ADS8364 10/29/2008 21:06:48 PAGE 3
XDATA SIZE = ---- ----
PDATA SIZE = ---- 22
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 + -