📄 ad1.lst
字号:
C51 COMPILER V8.09 AD1 05/24/2009 12:57:12 PAGE 1
C51 COMPILER V8.09, COMPILATION OF MODULE AD1
OBJECT MODULE PLACED IN ad1.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE ad1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 //------------------------------------------------
2 #include <STC_NEW_8051.h>
3 #include <intrins.h >
4 #include <math.h >
5 //------------------------------------------------
6 #define uint unsigned int
7 #define uchar unsigned char
8 /*//------------------------------------------------
9 sfr ADC_CONTR = 0xBC; //ADC 寄存器定义
10 sfr P1ASF = 0x9D ; //
11 sfr ADC_RES = 0xBD; //
12 sfr ADC_RESL = 0xBE ;
13 sfr AUXR1 = 0xA2 ;
14 //------------------------------------------------ */
15 void delay1(uint ms);
16 //===============================================
17 // 函数 :AD操作函数组
18 //===============================================
19 void run_adc(void) //初始化AD
20 { // uchar adc_con;
21 1
22 1 ADC_CONTR|=0x80;// //开电源
23 1 delay1(1);
24 1 P1ASF|=0x40; //引脚p1.6
25 1 ADC_CONTR=0xE6; //选通p1.6
26 1 delay1(1);
27 1
28 1 AUXR1&= 0xfb; //ADRJ=0;结果ADC_RESL低2位;ADC_RES高8位
29 1 ADC_RES=0x00; // 清零
30 1 ADC_RESL=0x00;
31 1
32 1
33 1
34 1 ADC_CONTR|=0x08;
35 1 _nop_();
36 1 _nop_();
37 1 _nop_();
38 1 _nop_();
39 1
40 1 ACC=ADC_CONTR;
41 1 while ((ACC&0x10)==0x00) ACC=ADC_CONTR; //判断AD转换结束标识ADC_FLAG=1,完成
42 1
43 1 ADC_CONTR&=0xe7;
44 1 //清标识,停止ADC
45 1 P1ASF&=0xbf; //清引脚,普通I/O
46 1 }
47 /******************************************************************************
48 延时函数(us)
49
50 ******************************************************************************/
51 void delay(uint us) //delay time
52 {
53 1 while(us--);
54 1 }
55
C51 COMPILER V8.09 AD1 05/24/2009 12:57:12 PAGE 2
56 void delay1(uint ms)
57 {
58 1 uint i,j;
59 1 for(i=0;i<ms;i++)
60 1 for(j=0;j<15;j++)
61 1 delay(1);
62 1 }
63
64 /******************************************************************************
65
66 主程序
67 ******************************************************************************/
68 void main(void)
69 {
70 1 while(1)
71 1 {run_adc();
72 2 P0= ADC_RES;
73 2 // P0= (ADC_RES*5)/255;
74 2 // P0= (ADC_RES*5)%256;
75 2 }
76 1 }
77
78
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 116 ----
CONSTANT SIZE = ---- ----
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 + -