📄 ad0809.lst
字号:
C51 COMPILER V7.06 AD0809 04/04/2009 12:13:17 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE AD0809
OBJECT MODULE PLACED IN Ad0809.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Ad0809.c BROWSE DEBUG OBJECTEXTEND CODE
stmt level source
1 /**************************************************************/
2 /* 文件名: AD0809.c */
3 /* 功能描述: AD采样实验,结果通过串口送PC显示(脱机运行) */
4 /* 结果送内部数据区30H,共16个(SoftIce调试) */
5 /**************************************************************/
6
7 #include <reg51.h>
8 #include "Absacc.h"
9 //#include "stdio.h"
10
11 #define STARTAD XBYTE[0x7F00]
12 #define ADRESULT XBYTE[0x7F08]
13
14 sbit ADBUSY = P3^3;
15
16 //unsigned char data a[16];
17
18 unsigned char AD0809(void)
19 {
20 1 unsigned char result;
21 1 STARTAD = 0; // 启动AD
22 1 while(ADBUSY == 1); // 等待转换结束
23 1 result = ADRESULT;
24 1 return result;
25 1 }
26
27
28 //**** 串口初始化 ****//
29 /*void init_serial(void)
30 {
31 SCON = 0x52;
32 TMOD = 0x20;
33 PCON = 0x80;
34 ES = 0;
35 TH1 = 0xFD;
36 TR1 = 1;
37 }*/
38
39 void main(void)
40 {
41 1 //unsigned char result;
42 1 unsigned int i, j;
43 1 //init_serial();
44 1 for(j=0; j<16; j++)
45 1 {
46 2 //result = AD0809();
47 2 //a[j] = AD0809();
48 2 DBYTE[0x30 + j] = AD0809();
49 2 //printf("AD0809_IN0_Result: %bx\r", result);
50 2 for(i=0; i<20; i++);
51 2 }
52 1 while(1);
53 1 }
C51 COMPILER V7.06 AD0809 04/04/2009 12:13:17 PAGE 2
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION AD0809 (BEGIN)
; SOURCE LINE # 18
; SOURCE LINE # 19
; SOURCE LINE # 21
0000 907F00 MOV DPTR,#07F00H
0003 E4 CLR A
0004 F0 MOVX @DPTR,A
0005 ?C0001:
; SOURCE LINE # 22
0005 20B3FD JB ADBUSY,?C0001
0008 ?C0002:
; SOURCE LINE # 23
0008 907F08 MOV DPTR,#07F08H
000B E0 MOVX A,@DPTR
000C FF MOV R7,A
;---- Variable 'result' assigned to Register 'R7' ----
; SOURCE LINE # 24
; SOURCE LINE # 25
000D ?C0003:
000D 22 RET
; FUNCTION AD0809 (END)
; FUNCTION main (BEGIN)
; SOURCE LINE # 39
; SOURCE LINE # 40
; SOURCE LINE # 44
;---- Variable 'j' assigned to Register 'R4/R5' ----
0000 E4 CLR A
0001 FD MOV R5,A
0002 FC MOV R4,A
0003 ?C0004:
; SOURCE LINE # 45
; SOURCE LINE # 48
0003 120000 R LCALL AD0809
0006 7430 MOV A,#030H
0008 2D ADD A,R5
0009 F8 MOV R0,A
000A A607 MOV @R0,AR7
; SOURCE LINE # 50
;---- Variable 'i' assigned to Register 'R6/R7' ----
000C E4 CLR A
000D FF MOV R7,A
000E FE MOV R6,A
000F ?C0007:
000F 0F INC R7
0010 BF0001 CJNE R7,#00H,?C0013
0013 0E INC R6
0014 ?C0013:
0014 EF MOV A,R7
0015 6414 XRL A,#014H
0017 4E ORL A,R6
0018 70F5 JNZ ?C0007
; SOURCE LINE # 51
001A ?C0006:
001A 0D INC R5
001B BD0001 CJNE R5,#00H,?C0014
001E 0C INC R4
001F ?C0014:
001F ED MOV A,R5
C51 COMPILER V7.06 AD0809 04/04/2009 12:13:17 PAGE 3
0020 6410 XRL A,#010H
0022 4C ORL A,R4
0023 70DE JNZ ?C0004
0025 ?C0010:
; SOURCE LINE # 52
0025 80FE SJMP ?C0010
; FUNCTION main (END)
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 53 ----
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 + -