📄 commun.lst
字号:
C51 COMPILER V7.01 COMMUN 09/19/2005 08:40:55 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE COMMUN
OBJECT MODULE PLACED IN commun.OBJ
COMPILER INVOKED BY: C:\keil\C51\BIN\C51.EXE commun.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "reg66x.h"
2 #include "electromotion.h"
3 #define WAIT_TIME 1000
4
5
6 void scon_send(unsigned char x)
7 {
8 1 unsigned int i;
9 1 S0BUF = x;
10 1 while(!TI)
11 1 {
12 2 i++;
13 2 if(i >= WAIT_TIME) return;
14 2 }
15 1 TI = 0;
16 1 }
17
18 void scon_rev(void) interrupt 4 using 2
19 {
20 1 unsigned char temp;
21 1 unsigned int i;
22 1
23 1 if(!RI) return;
24 1 if(!(S0BUF == 0x80)) return; //如果是数据0x80则继续
25 1 RI = 0;
26 1
27 1 S0BUF = 0x81; //发送0x81回应;
28 1 i = 0;
29 1 while(!TI)
30 1 {
31 2 i++;
32 2 if(i >= WAIT_TIME) return;
33 2 }
34 1 TI = 0;
35 1
36 1 i = 0; //接收速度高位
37 1 while(!RI)
38 1 {
39 2 i++;
40 2 if(i >= WAIT_TIME) return;
41 2 }
42 1 temp = S0BUF;
43 1 RI = 0;
44 1 motor_speed = (unsigned int)temp;
45 1 motor_speed <<= 8;
46 1
47 1 i = 0;
48 1 while(!RI) //接收速度低位
49 1 {
50 2 i++;
51 2 if(i >= WAIT_TIME) return;
52 2 }
53 1 temp = S0BUF;
54 1 RI = 0;
55 1 motor_speed += (unsigned int)temp;
C51 COMPILER V7.01 COMMUN 09/19/2005 08:40:55 PAGE 2
56 1
57 1 i = 0; //接收步数高位
58 1 while(!RI)
59 1 {
60 2 i++;
61 2 if(i >= WAIT_TIME) return;
62 2 }
63 1 temp = S0BUF;
64 1 RI = 0;
65 1 motor_steps = (unsigned int)temp;
66 1 motor_steps <<= 8;
67 1
68 1 i = 0; //接收步数低位
69 1 while(!RI)
70 1 {
71 2 i++;
72 2 if(i >= WAIT_TIME) return;
73 2 }
74 1 temp = S0BUF;
75 1 RI = 0;
76 1 motor_steps += (unsigned int)temp;
77 1
78 1 i = 0; //接收呼吸平台时间高位
79 1 while(!RI)
80 1 {
81 2 i++;
82 2 if(i >= WAIT_TIME) return;
83 2 }
84 1 temp = S0BUF;
85 1 RI = 0;
86 1 time_inspiration_plate = (unsigned int)temp;
87 1 time_inspiration_plate <<= 8;
88 1
89 1 i = 0; //接收呼吸平台时间低位
90 1 while(!RI)
91 1 {
92 2 i++;
93 2 if(i >= WAIT_TIME) return;
94 2 }
95 1 temp = S0BUF;
96 1 RI = 0;
97 1 time_inspiration_plate += (unsigned int)temp;
98 1
99 1 i = 0; //接收呼吸周期时间高位
100 1 while(!RI)
101 1 {
102 2 i++;
103 2 if(i >= WAIT_TIME) return;
104 2 }
105 1 temp = S0BUF;
106 1 RI = 0;
107 1 time_respiration = (unsigned int)temp;
108 1 time_respiration <<= 8;
109 1
110 1 i = 0;
111 1 while(!RI) //接收呼吸周期时间低位
112 1 {
113 2 i++;
114 2 if(i >= WAIT_TIME) return;
115 2 }
116 1 temp = S0BUF;
117 1 RI = 0;
C51 COMPILER V7.01 COMMUN 09/19/2005 08:40:55 PAGE 3
118 1 time_respiration += (unsigned int)temp;
119 1
120 1 start_run = 1;
121 1
122 1 }
123
124
125
126
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 397 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
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 + -