51_LanQiaoBei/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/Listings/Ultrasonic.lst

82 lines
2.6 KiB
Plaintext
Raw Normal View History

2025-04-13 01:02:19 +08:00
C51 COMPILER V9.59.0.0 ULTRASONIC 02/24/2024 21:37:53 PAGE 1
C51 COMPILER V9.59.0.0, COMPILATION OF MODULE ULTRASONIC
OBJECT MODULE PLACED IN .\Objects\Ultrasonic.obj
COMPILER INVOKED BY: D:\Keil_v5\C51\BIN\C51.EXE ..\Driver\Ultrasonic.c OPTIMIZE(8,SPEED) BROWSE INCDIR(..\Driver) DEBUG
-OBJECTEXTEND PRINT(.\Listings\Ultrasonic.lst) TABS(2) OBJECT(.\Objects\Ultrasonic.obj)
line level source
1 #include "Ultrasonic.h"
2 #include "intrins.h"
3
4 sbit Tx = P1 ^ 0;
5 sbit Rx = P1 ^ 1;
6 void Delay12us(void) //@12.000MHz
7 {
8 1 unsigned char data i;
9 1
10 1 _nop_();
11 1 _nop_();
12 1 i = 33;
13 1 while (--i)
14 1 ;
15 1 }
16
17 void Ut_Wave_Init()
18 {
19 1 unsigned char i;
20 1 // <20><><EFBFBD><EFBFBD>8<EFBFBD><38>40kHz<48>ķ<EFBFBD><C4B7><EFBFBD>
21 1 // f=40kHz->T=1/f=0.000025s=25us
22 1 // 12.5us 1 12.5us 0
23 1 for (i = 0; i < 8; i++)
24 1 {
25 2 Tx = 1;
26 2 Delay12us();
27 2 Tx = 0;
28 2 Delay12us();
29 2 }
30 1 }
31
32 unsigned char Ut_Wave_Data()
33 {
34 1 unsigned int time;
35 1 TMOD &= 0x0f;
36 1 TH1 = TL1 = 0;
37 1 Ut_Wave_Init();
38 1 TR1 = 1;
39 1 while ((Rx == 1) && (TF1 == 0))
40 1 ; // <20><><EFBFBD>ݶ<EFBFBD>ȡδ<C8A1><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
41 1 TR1 = 0;
42 1 // û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
43 1 if (TF1 == 0)
44 1 {
45 2 time = TH1 << 8 | TL1; // <20><>λΪ<CEBB><CEAA><EFBFBD><EFBFBD>
46 2 // L=V*T/2
47 2 return (time * 0.017); // <20><><EFBFBD>صĵ<D8B5>λ<EFBFBD><CEBB>cm
48 2 }
49 1 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>϶<EFBFBD><CFB6>˴β<CBB4><CEB2><EFBFBD><EFBFBD><EFBFBD>Ч
50 1 else
51 1 {
52 2 TF1 = 0;
53 2 return 0;
54 2 }
C51 COMPILER V9.59.0.0 ULTRASONIC 02/24/2024 21:37:53 PAGE 2
55 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 90 ----
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)