📄 jiang.lst
字号:
C51 COMPILER V7.06 JIANG 12/05/2008 11:08:37 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE JIANG
OBJECT MODULE PLACED IN jiang.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE jiang.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //***读取温度和显示温度值主函数****//
2 #include <jiang.h>
3 #include <reg52.h>
4 #include <dis.h>
5 unchar data LM75A=0x90;// LM75A 的I2C 地址
6 unchar data MRD[2]={0};//接收缓冲区
7 unint a,b,temp;
8 float s,t;
9 unchar shu[7];
10 unint change_h_d1(unchar a)//把LM75A温度寄存器11位中低3位转为十进制
11 {
12 1 unchar i,j,k;
13 1 unint m;
14 1 unint n;
15 1 n=0;
16 1 a=a&0xe0;
17 1 a>>=5;
18 1 for(i=0;i<3;i++)
19 1 {
20 2 m=1;
21 2 k=a&0x01;
22 2 for(j=i;j>0;j--)
23 2 {
24 3 m=m*2;
25 3 }
26 2 n=n+m*k;
27 2 a>>=1;
28 2 }
29 1 return n;
30 1
31 1 }
32 unint change_h_d0(unchar a)//把LM75A温度寄存器11位中高8位转为十进制
33 {
34 1 unchar i,j,k;
35 1 unint m;
36 1 unint n;
37 1 n=0;
38 1 for(i=0;i<8;i++)
39 1 {
40 2 m=1;
41 2 k=a&0x01;
42 2 for(j=i+3;j>0;j--)
43 2 {
44 3 m=m*2;
45 3 }
46 2 n=n+m*k;
47 2 a>>=1;
48 2 }
49 1 return n;
50 1
51 1 }
52 void delay(unchar z)
53 {
54 1 unchar x,y;
55 1 for(x=z;x>0;x--)
C51 COMPILER V7.06 JIANG 12/05/2008 11:08:37 PAGE 2
56 1 for(y=10;y>0;y--);
57 1 }
58 void main()
59 {
60 1 while(1)
61 1 {
62 2 IRcvStr(LM75A,0x00,MRD,2);//读取LM75A 当前温度值
63 2 a=MRD[0];
64 2 b=MRD[1];
65 2 s=change_h_d0(a)+change_h_d1(b);
66 2 t=s/8.0;//换算成实际
67 2 temp=1000*t;
68 2 shu[0]=temp%10;//取整数各位值
69 2 shu[1]=(temp/10)%10;
70 2 shu[2]=(temp/100)%10;
71 2 shu[3]=(temp/1000)%10;//个位
72 2 shu[4]=(temp/10000)%10;//十位
73 2 shu[5]=(temp/100000)%10;//百位
74 2 mydisplay(3,shu[1]);
75 2 delay(35);
76 2 mydisplay(2,shu[2]);
77 2 delay(35);
78 2 mydisplay(4,10);
79 2 delay(35);
80 2 mydisplay(5,11);
81 2 delay(35);
82 2 mydisplay1(1,shu[3]);//显示带小数点的数值
83 2 delay(35);
84 2 mydisplay(0,shu[4]);
85 2 delay(35);
86 2 }
87 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 815 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 24 16
IDATA SIZE = ---- ----
BIT SIZE = 1 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -