📄 ad.lst
字号:
C51 COMPILER V8.02 AD 01/14/2009 21:15:26 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE AD
OBJECT MODULE PLACED IN AD.OBJ
COMPILER INVOKED BY: D:\单片机\C51\BIN\C51.EXE AD.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*此AD占用的端口为AIN0.0和AIN0.1*/
2
3
4 #include<c8051f020.h>
5 #include"initial.h"
6
7 void ADC00Initial()
8 {
9 1 AMX0SL=0x00; //ADC0.0通道选通
10 1 AMX0CF=0x00; //AD为单端输入
11 1 ADC0CF=(22118400/2000000-1)<<4; //设置AD时钟为2M
12 1 ADC0CF=ADC0CF&0xf8; //选择放大倍数为1
13 1
14 1 /*控制寄存器设置 可位寻址*/
15 1 AD0EN=1; //ADC0 使能位
16 1 AD0TM=0; //除了转换期间之外一直处于跟踪方式
17 1 AD0CM1=0;
18 1 AD0CM0=0; //00:向AD0BUSY 写1 启动ADC0 转换
19 1 AD0LJST=0; //ADC0L 寄存器数据右对齐
20 1 REF0CN=0x03;//ADC0 电压基准取自VREF0
21 1 //内部偏压发生器工作,内部电压基准缓冲器工作
22 1 /*启动转换程序*/
23 1
24 1
25 1 }
26
27
28 void ADC01Initial()
29 {
30 1 AMX0SL=0x01; //ADC0.2通道选通
31 1 AMX0CF=0x00; //AD为单端输入
32 1 ADC0CF=(22118400/2000000-1)<<4; //设置AD时钟为2M
33 1 ADC0CF=ADC0CF&0xf8; //选择放大倍数为1
34 1
35 1 /*控制寄存器设置 可位寻址*/
36 1 AD0EN=1; //ADC0 使能位
37 1 AD0TM=0; //除了转换期间之外一直处于跟踪方式
38 1 AD0CM1=0;
39 1 AD0CM0=0; //00:向AD0BUSY 写1 启动ADC0 转换
40 1 AD0LJST=0; //ADC0L 寄存器数据右对齐
41 1 REF0CN=0x03;//ADC0 电压基准取自VREF0
42 1 //内部偏压发生器工作,内部电压基准缓冲器工作
43 1 /*启动转换程序*/
44 1
45 1 /* AD0INT=0;
46 1 AD0BUSY=1;
47 1 while(AD0INT!=1); //采用查询方式 */
48 1 }
49
50
51 void ADC0begin()
52 {
53 1 AD0INT=0;
54 1 AD0BUSY=1; //向ADC0写1启动转换
55 1 while(AD0INT!=1);
C51 COMPILER V8.02 AD 01/14/2009 21:15:26 PAGE 2
56 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 59 ----
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 + -