📄 ds18b20.lst
字号:
C51 COMPILER V6.23a DS18B20 12/11/2007 13:18:31 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE DS18B20
OBJECT MODULE PLACED IN .\obj\Ds18b20.obj
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE driver\Ds18b20.c BROWSE DEBUG OBJECTEXTEND PRINT(.\lst\Ds18b2
-0.lst) OBJECT(.\obj\Ds18b20.obj)
stmt level source
1 #include <REG52.h>
2 #include "DS18B20.h"
3 /*************************************************
4 /*
5 /*
6 /************************************************/
7
8 sbit DQ = P2^0; //数据输出口
9 /*************************************************
10 /*
11 /*
12 /*
13 /*
14 /*
15 /************************************************/
16
17 void delay1(int us)
18 {
19 1 int s;
20 1 for (s=0; s<us; s++);
21 1 }
22
23 /**********************************************************
24 *Header:
25 *File Name:
26 *Author:陈培炜,杨帆
27 *Data;2007
28 *Function:rest the Ds18b20
29 *********************************************************/
30
31 void rst(void)
32 {
33 1 DQ = 1;
34 1 delay1(2);
35 1 DQ = 0;
36 1 delay1(30); // 精确延时 480~960us //
37 1 DQ = 1;
38 1 delay1(8);
39 1 }
40 /*************************************************
41 /*Header:DS18B20.h
42 /*File Name:DS18B20.c
43 /*Author: 陈培炜,杨帆
44 /*Data;2007
45 /*Function:
46 /************************************************/
47 unsigned int read(void)
48 {
49 1 int i = 0;
50 1 unsigned int u = 0;
51 1 for (i=0; i<16; i++)
52 1 {
53 2 DQ = 0;
54 2 u >>= 1;
C51 COMPILER V6.23a DS18B20 12/11/2007 13:18:31 PAGE 2
55 2 DQ = 1;
56 2 if (DQ)
57 2 {
58 3 u |= 0x8000;
59 3 }
60 2 delay1(4);
61 2 }
62 1 return (u);
63 1 }
64 /*************************************************
65 /*Header:DS18B20.h
66 /*File Name:DS18B20.c
67 /*Author: 陈培炜,杨帆
68 /*Data;2007
69 /*Function:
70 /************************************************/
71 void write(unsigned char ku)
72 {
73 1 int i = 0;
74 1 for (i=0; i<8 ;i++)
75 1 {
76 2 DQ = 0;
77 2 DQ = ku & 0x01;
78 2 delay1(3);
79 2 DQ = 1;
80 2 ku >>= 1;
81 2 }
82 1 }
83 /*************************************************
84 /*Header:DS18B20.h
85 /*File Name:DS18B20.c
86 /*Author: 陈培炜,杨帆
87 /*Data;2007
88 /*Function:
89 /************************************************/
90 char read0(void)
91 {
92 1
93 1 int t1 = 0;
94 1 unsigned int tp;
95 1 unsigned int lsb;
96 1 rst();
97 1 write(0xCC);
98 1 write(0x44);
99 1 rst();
100 1 write(0xCC);
101 1 write(0xBE);
102 1 tp = read();
103 1
104 1 lsb = (unsigned int)(tp*6.25); //
105 1 t1=lsb/100;
106 1
107 1 return((char)t1);
108 1
109 1 }
110 /*************************************************
111 /*
112 /*
113 /************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
C51 COMPILER V6.23a DS18B20 12/11/2007 13:18:31 PAGE 3
CODE SIZE = 195 ----
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 + -