📄 adc0809.lst
字号:
C51 COMPILER V7.50 ADC0809 07/05/2008 14:59:23 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE ADC0809
OBJECT MODULE PLACED IN ADC0809.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ADC0809.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.H>
2 #include "Typedef.H"
3 #include "UserDef.H"
4 #include "ADC0809.H"
5
6 /* 端口定义 */
7 #define P_Data P0
8 sbit AD0809_OTEN = P3^4;
9 sbit AD0809_EOC = P3^2;
10 sbit AD0809_START = P3^3;
11 sbit AD0809_ALE = P3^5;
12
13 /***************************************
14 初始化函数
15 ****************************************/
16 void AD0809_init(void)
17 {
18 1 AD0809_OTEN = 0;
19 1 AD0809_EOC = 1;
20 1 AD0809_START = 0;
21 1 AD0809_ALE = 0;
22 1 }
23
24 /***************************************
25 AD转换函数
26 入口参数:选择的通道ch
27 ****************************************/
28 INT8U AD0809(INT8U ch)
29 {
30 1 INT8U adv,i;
31 1
32 1 P_Data = ch;
33 1 AD0809_ALE = 1; //上升沿锁存A,B,C的地址,即选定通道
34 1 AD0809_ALE = 0;
35 1
36 1 AD0809_START = 1; //上升沿清楚内部各寄存器,其下降沿的时候开始转换
37 1 AD0809_START = 0;
38 1
39 1
40 1 for (i=0;i<10;i++) //等待
41 1 {}
42 1
43 1 while (AD0809_EOC == 0) //等待转换完成信号
44 1 {}
45 1
46 1 P_Data = 0xFF;
47 1 AD0809_OTEN = 1; //允许输出锁存器输出数据
48 1 adv = P_Data;
49 1 AD0809_OTEN = 0;
50 1
51 1 return adv;
52 1 }
53
54
55
C51 COMPILER V7.50 ADC0809 07/05/2008 14:59:23 PAGE 2
56
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 38 ----
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 + -