📄 ad.lst
字号:
C51 COMPILER V8.06 AD 08/22/2007 16:27:33 PAGE 1
C51 COMPILER V8.06, COMPILATION OF MODULE AD
OBJECT MODULE PLACED IN AD.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE AD.C BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<math.h> //AD转换程序__________完
2 #include <intrins.h>
3 #include<stdio.h>
4 #include<reg52.h>
5 #define NOP5 _nop_();_nop_();_nop_();_nop_();_nop_()
6 #define NOP2 _nop_();_nop_();
7 #define NOP1 _nop_();
8 #define uchar unsigned char
9 #define uint unsigned int
10 #define slong signed long
11 /////////////////////////?????????///////////////////////////////////
12 sfr AUXR = 0x8e;
13 sfr AUXR1 = 0xa2;
14 sfr P4 = 0xe8;
15 sfr XICON = 0xc0;
16 sfr IPH = 0xb7;
17 sfr WDT_CONTR = 0xe1;
18 sfr ISP_DATA = 0xe2;
19 sfr ISP_ADDRH = 0xe3;
20 sfr ISP_ADDRL = 0xe4;
21 sfr ISP_CMD = 0xe5;
22 sfr ISP_TRIG = 0xe6;
23 sfr ISP_CONTR = 0xe7;
24 ///////////////////////???????????///////////////////////////////////
25 sbit C_SCLK=P0^0;
26 sbit C_DOUT=P0^1;
27 sbit C_549_CS=P2^6;
28 sbit C_RS232_CONTROL1=P0^3;
29 sbit C_RS232_CONTROL2=P0^4;
30 sbit C_READY=P0^5;
31 sbit C_TO2_P25=P0^6;
32 sbit C_ERROR=P0^7;
33
34 uint i,j,k,tempx=0;
35
36 void Befor_Once_AD()
37 { C_SCLK=0;
38 1 C_DOUT=0;
39 1 C_549_CS=0;
40 1 for(i=0;i<8;i++)
41 1 { C_SCLK=1;
42 2 NOP2
43 2 C_SCLK=0;
44 2 }
45 1 C_549_CS=1;
46 1 for(i=0;i<28;i++) //延时24us 不能太短了
47 1 {NOP2;
48 2 }
49 1
50 1 }
51 uint AD()
52 {
53 1 uint ad_data;
54 1 tempx++;
55 1 Befor_Once_AD() ;
C51 COMPILER V8.06 AD 08/22/2007 16:27:33 PAGE 2
56 1 C_SCLK=0;
57 1 C_DOUT=0;
58 1 ad_data=0;
59 1 C_549_CS=0;
60 1 NOP5;
61 1 for(i=0;i<8;i++)
62 1 { C_SCLK=1;
63 2 // C_SCLK=0;
64 2 C_DOUT=P0^1;
65 2 NOP2;
66 2 ad_data<<=1;
67 2 if(C_DOUT)
68 2 {ad_data=ad_data|0x01; }
69 2 C_SCLK=0;
70 2 }
71 1 C_549_CS=1;
72 1 P1=ad_data;
73 1 return(ad_data);
74 1
75 1 }
76 main()
77 { TR1=1;
78 1 // int TDATA;
79 1
80 1 TMOD=0X20;
81 1 TL1=0xf4;TH1=0xf4;
82 1 SCON=0x50,PCON=0x00; //方式1传输,开串口
83 1 TR1=1;
84 1
85 1 while(1)
86 1 { C_549_CS=1;
87 2 tempx=AD();
88 2 SBUF=tempx;
89 2 while(TI==0);
90 2 TI=0;
91 2 for(i=0;i<2000;i++)
92 2 {NOP5;}
93 2 }
94 1
95 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 197 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 8 ----
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 + -