131 lines
4.2 KiB
Plaintext
131 lines
4.2 KiB
Plaintext
C51 COMPILER V9.60.7.0 ONEWIRE 04/15/2025 20:33:28 PAGE 1
|
||
|
||
|
||
C51 COMPILER V9.60.7.0, COMPILATION OF MODULE ONEWIRE
|
||
OBJECT MODULE PLACED IN .\Objects\onewire.obj
|
||
COMPILER INVOKED BY: C:\Users\ZBright\AppData\Local\Keil_v5\C51\BIN\C51.EXE ..\Driver\onewire.c OPTIMIZE(8,SPEED) BROWSE
|
||
- INCDIR(..\Driver) DEBUG OBJECTEXTEND PRINT(.\Listings\onewire.lst) OBJECT(.\Objects\onewire.obj)
|
||
|
||
line level source
|
||
|
||
1 /* # 蜊墓サ郤ソ莉」遐∫援谿オ隸エ譏<EFBDB4>
|
||
2 1. 譛ャ譁<EFBDAC>サカ螟ケ荳ュ謠蝉セ帷噪鬩ア蜉ィ莉」遐∽セ帛盾襍幃画焔螳梧<E89EB3>遞句コ剰ョセ隶。蜿り<E3828A><EFBFBD>
|
||
3 2. 蜿りオ幃画焔蜿ッ莉・閾ェ陦檎シ門<EFBDBC>逶ク蜈ウ莉」遐∵<E98190>莉・隸・莉」遐∽クコ蝓コ遑<E98191>梧<EFBFBD>ケ謐ョ謇騾牙黒迚<E9BB92>惻邀サ蝙九∬ソ
|
||
-占。碁溷コヲ蜥瑚ッ暮「<E69AAE>
|
||
4 荳ュ蟇ケ蜊慕援譛コ譌カ髓滄「醍紫逧<E7B4AB>ヲ∵アゑシ瑚ソ幄。御サ」遐∬ー<E288AC>ッ募柱菫ョ謾ケ縲<EFBDB9>
|
||
5 */
|
||
6
|
||
7 #include <onewire.h>
|
||
8
|
||
9 sbit DQ = P1^4;
|
||
10
|
||
11 //
|
||
12 void Delay_OneWire(unsigned int t)
|
||
13 {
|
||
14 1 unsigned char i;
|
||
15 1 while(t--){
|
||
16 2 for(i=0;i<12;i++);
|
||
17 2 }
|
||
18 1 }
|
||
19
|
||
20 //
|
||
21 void Write_DS18B20(unsigned char dat)
|
||
22 {
|
||
23 1 unsigned char i;
|
||
24 1 for(i=0;i<8;i++)
|
||
25 1 {
|
||
26 2 DQ = 0;
|
||
27 2 DQ = dat&0x01;
|
||
28 2 Delay_OneWire(5);
|
||
29 2 DQ = 1;
|
||
30 2 dat >>= 1;
|
||
31 2 }
|
||
32 1 Delay_OneWire(5);
|
||
33 1 }
|
||
34
|
||
35 //
|
||
36 unsigned char Read_DS18B20(void)
|
||
37 {
|
||
38 1 unsigned char i;
|
||
39 1 unsigned char dat;
|
||
40 1
|
||
41 1 for(i=0;i<8;i++)
|
||
42 1 {
|
||
43 2 DQ = 0;
|
||
44 2 dat >>= 1;
|
||
45 2 DQ = 1;
|
||
46 2 if(DQ)
|
||
47 2 {
|
||
48 3 dat |= 0x80;
|
||
49 3 }
|
||
50 2 Delay_OneWire(5);
|
||
51 2 }
|
||
52 1 return dat;
|
||
53 1 }
|
||
C51 COMPILER V9.60.7.0 ONEWIRE 04/15/2025 20:33:28 PAGE 2
|
||
|
||
54
|
||
55 //
|
||
56 bit init_ds18b20(void)
|
||
57 {
|
||
58 1 bit initflag = 0;
|
||
59 1
|
||
60 1 DQ = 1;
|
||
61 1 Delay_OneWire(12);
|
||
62 1 DQ = 0;
|
||
63 1 Delay_OneWire(80);
|
||
64 1 DQ = 1;
|
||
65 1 Delay_OneWire(10);
|
||
66 1 initflag = DQ;
|
||
67 1 Delay_OneWire(5);
|
||
68 1
|
||
69 1 return initflag;
|
||
70 1 }
|
||
71
|
||
72 float Tempr_Read()
|
||
73 {
|
||
74 1 unsigned char low;
|
||
75 1 unsigned char high;
|
||
76 1
|
||
77 1 init_ds18b20();
|
||
78 1 Write_DS18B20(0xcc);
|
||
79 1 Write_DS18B20(0x44);
|
||
80 1 Delay_OneWire(200);
|
||
81 1
|
||
82 1 init_ds18b20();
|
||
83 1 Write_DS18B20(0xcc);
|
||
84 1 Write_DS18B20(0xbe);
|
||
85 1
|
||
86 1 low = Read_DS18B20();
|
||
87 1 high = Read_DS18B20();
|
||
88 1
|
||
89 1 return ((high << 8) | low) /16.0;
|
||
90 1
|
||
91 1 }
|
||
92
|
||
93
|
||
94
|
||
95
|
||
96
|
||
97
|
||
98
|
||
99
|
||
100
|
||
101
|
||
102
|
||
103
|
||
|
||
|
||
MODULE INFORMATION: STATIC OVERLAYABLE
|
||
CODE SIZE = 180 ----
|
||
CONSTANT SIZE = ---- ----
|
||
XDATA SIZE = ---- ----
|
||
PDATA SIZE = ---- ----
|
||
DATA SIZE = ---- ----
|
||
IDATA SIZE = ---- ----
|
||
BIT SIZE = ---- 1
|
||
END OF MODULE INFORMATION.
|
||
|
||
|
||
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
|