📄 ad7705.lst
字号:
C51 COMPILER V7.08 AD7705 10/17/2007 14:10:40 PAGE 1
C51 COMPILER V7.08, COMPILATION OF MODULE AD7705
OBJECT MODULE PLACED IN ad7705.OBJ
COMPILER INVOKED BY: E:\软件安装\kc\C51\BIN\C51.EXE ad7705.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <stdio.h>
3 #include <intrins.h>
4 #include<3310.h>
5 #include <INTRINS.H>
6 #define uchar unsigned char
7 #define uint unsigned int
8 unsigned int voltage;
9 unsigned int ad7705timer;
10 uchar as_0[7];
11 sbit sclk_0=P1^0;//时钟脉冲
12 sbit rs=P1^1;
13 sbit dy=P1^2;
14 sbit dout=P1^3;
15 sbit din=P1^4;
16 void UART_INIT();//串口初始化
17 void chushi();
18 void a3310dis();
19 void writetoreg(uchar byteword);//写入数据
20 unsigned int read();//读数据
21 unsigned int Read();
22 void process(long x);
23 //======================
24 /*void delay(int n)//延时
25 { int i;
26 for(i=0;i<n;i++);
27
28 }*/
29 //================================
30 //================================
31 void writetoreg(uchar byteword)//数据写入
32 {
33 1 uint i,j,x;
34 1 dy=0;
35 1 for(i=0;i<16;i++)
36 1 {
37 2 dy=0;
38 2 sclk_0=0;
39 2 _nop_ ();
40 2 sclk_0=1;
41 2 j=byteword<<1;
42 2 din=j&0x80;
43 2 x=!din;
44 2 }
45 1 P0=x;
46 1 }
47 //================================
48 unsigned int Read()//读数据
49 {
50 1 uchar jx,out,dk;
51 1 rs=0;
52 1 dy=0;
53 1 for(jx=0;jx<16;jx++)
54 1 {
55 2 dy=0;
C51 COMPILER V7.08 AD7705 10/17/2007 14:10:40 PAGE 2
56 2 rs=1;
57 2 sclk_0=0;
58 2 _nop_ ();
59 2 _nop_ ();
60 2 sclk_0=1;
61 2 jx|=dout;
62 2 dk=jx<<1;
63 2 out=dk&0x80;
64 2 }
65 1
66 1 return(out);
67 1 }
68 //=============================
69 void process(long x)//数据处理
70 {
71 1 as_0[5]=x/100000;
72 1 x=x%100000;
73 1 as_0[4]=x/10000;
74 1 x=x%10000;
75 1 as_0[3]=x/1000;
76 1 x=x%1000;
77 1 as_0[2]=x/100;
78 1 x=x%100;
79 1 as_0[1]=x/10;
80 1 as_0[0]=x%10;
81 1 }
82 //=======================================
83 void a3310dis()//数据显示
84 {
85 1 display1(22,0,number[as_0[5]]);
86 1 display1(30,0,number[as_0[4]]);
87 1 display1(38,0,number[as_0[3]]);
88 1 display1(46,0,number[as_0[2]]);
89 1 display1(54,0,number[as_0[1]]);
90 1 display1(62,0,number[as_0[0]]);
91 1 }
92 //====================================
93 //====================================
94 //主函数
95 void main()
96 {
97 1 unsigned int a;
98 1 init();//液晶初始化
99 1 clr();//清屏
100 1 // UART_INIT();//串口初始化
101 1 /* writetoreg(0x01);
102 1 writetoreg(0x02);//选择时钟寄存器+
103 1 writetoreg(0x0c);//50HZ转换频率*/
104 1 writetoreg(0x03);//选择设置寄存器
105 1 writetoreg(0x01);//自校准模式,增益为1
106 1 dy=0;
107 1 while(1)
108 1 {
109 2 dy=0;
110 2 writetoreg(0x38);//自校准模式,增益为1
111 2 a=Read();//读数据
112 2 // delay(2);
113 2 process(a);//数据处理
114 2 a3310dis();//3310显示
115 2 }
116 1 }
117 /***************************************/
C51 COMPILER V7.08 AD7705 10/17/2007 14:10:40 PAGE 3
118 //--------------------------串口初始化
119 /*void UART_INIT()
120 {
121 SCON=0X53;//选择串口方式1;
122 TMOD=0X20;//定时器1方式1;
123 TH1=0XFA;
124 TL1=0XFA;
125 TR1 =1; //启动定时器T1
126 ET1 =0;
127 ES=1; //允许串行口中断
128 // PS=1; //设计串行口中断优先级
129 EA =1; //单片机中断允许
130 PCON=0X80;//波特率加倍为9600
131 }*/
132 //=====================数据处理
133 //=============================
134
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 705 ----
CONSTANT SIZE = 384 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 25 17
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -