📄 max197.lst
字号:
C51 COMPILER V7.06 MAX197 01/01/2008 14:35:25 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAX197
OBJECT MODULE PLACED IN MAX197.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE MAX197.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #include <stdio.h>
3 #include <absacc.h>
4 #include <intrins.h>
5
6 typedef unsigned char uchar;
7 typedef unsigned int uint;
8
9 #define CS_A XBYTE [0x5000] /* MAX197A的片选地址 */
10 #define CS_B XBYTE [0x4000] /* MAX197B的片选地址 */
11 #define CS_ALL XBYTE [0x3000] /* 两片MAX197的片选地址 */
12
13 sbit HBEN=P1^3;
14
15 /*************************************************
16 延时子程序
17 *************************************************/
18 void delay(uint time)
19 {
20 1 while(time--);
21 1 }
22 /*************************************************
23 AD采样子程序
24 id=1时,选择MAX197A,id=2时,选择MAX197B
25 ch为采样通道号
26 *************************************************/
27 uint ADconvert(uint id,uint ch)
28 {
29 1 uint value;
30 1 uint datH,datL;
31 1 if((ch>8) || (id > 2) || (id < 1))
32 1 return 0xffff;
33 1 if(id == 1)
34 1 {
35 2 CS_A = 0x40 | ch;
36 2 delay(1000);
37 2 HBEN = 1;
38 2 datH = CS_A;
39 2 HBEN = 0;
40 2 datL = CS_A;
41 2 }
42 1 else if(id == 2)
43 1 {
44 2 CS_B=0x40 | ch;
45 2 delay(1000);
46 2 HBEN = 1;
47 2 datH = CS_B;
48 2 HBEN = 0;
49 2 datL = CS_B;
50 2 }
51 1 datH &= 0x0f;
52 1 value = datH*256+datL;
53 1 return (value);
54 1 }
55 main()
C51 COMPILER V7.06 MAX197 01/01/2008 14:35:25 PAGE 2
56 {
57 1 uint ad;
58 1 SCON=0X52;
59 1 TMOD=0X20;
60 1 TH1=0XFD; // 波特率为9600,晶振=11.0592M
61 1 TR1=1;
62 1 //采集开始
63 1 while(1)
64 1 {
65 2 ad=ADconvert(1,0); //选择MAX197A,通道0
66 2 printf("AD result A =%d\n",ad);
67 2 ad=ADconvert(2,0); //选择MAX197B,通道0
68 2 printf("AD result B =%d\n",ad);
69 2 }
70 1 }
71
72
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 189 ----
CONSTANT SIZE = 34 ----
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 + -