?? transducer.lst
字號:
C51 COMPILER V8.02 TRANSDUCER 01/01/2007 22:09:43 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TRANSDUCER
OBJECT MODULE PLACED IN Transducer.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE Transducer.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #define _TRANSDUCER_
2 #include "include.h"
3
4 /*******************************************************
5 函數名:send_cmd(unsigned char *send_data)
6 功能:發送命令
7 傳入參數: unsigned char *send_data :要發送得數據
8 unsigned char Len :數據長度
9 傳出參數:無
10 ********************************************************/
11 void send_cmd(unsigned char *send_data,unsigned char Len)
12 {
13 1 unsigned int i;
14 1 for(i=0;i<Len;i++)
15 1 {
16 2 uart_send(send_data[i]);
17 2
18 2 }
19 1 }
20
21 /**************************************************************
22 函數名:send_cmd(unsigned char *send_data)
23 功能:發送命令
24 傳入參數: unsigned char *send_data
25 傳出參數:無
26 ***************************************************************/
27 void check_sum(unsigned char *send_data,unsigned char *result_sum)
28 {
29 1
30 1 unsigned char i;
31 1 unsigned int n,sum=0;
32 1
33 1 for(i=0;i<strlen(send_data);i++)
34 1 sum +=(unsigned int)send_data[i];
35 1
36 1 n = sprintf(result_sum,"%4x",sum);
37 1
38 1 for(i=0;i<3;i++)
39 1 {
40 2 if(result_sum[i] == 32) result_sum[i]= '0';
41 2 }
42 1
43 1 }
44
45 /********************************************************************
46 函數名:data_encap_send(unsigned char *data_send)
47 功能描述:要發送的數據的封裝和發送
48 傳入參數:unsigned char *data_send :要發送的數據
49 傳出參數:無
50 *********************************************************************/
51 void data_encap_send(unsigned char *data_send)
52 {
53 1 unsigned char buffer[20];
54 1 unsigned char result_sum[4];
55 1 int n;
C51 COMPILER V8.02 TRANSDUCER 01/01/2007 22:09:43 PAGE 2
56 1 unsigned char i;
57 1 check_sum(data_send,result_sum);
58 1 n = sprintf(buffer,"%c%s%s%c",'~',data_send,result_sum,'\r');
59 1 for(i=0;i<n;i++)
60 1 {
61 2 buffer[i]=toupper(buffer[i]);
62 2 }
63 1 send_cmd(buffer,n);
64 1 }
65
66 /****************************************************************************
67 函數名:data_send_process(unsigned char *send_data,float frequ)
68 函數功能:對要設定的頻率進行設定并整合到send[]數組中
69 傳入參數: unsigned char *send_data 要傳入的數組,由前面DEFINE中定義的··中進行選擇
70 float frequ :要設定的頻率
71 傳出參數:無
72 *****************************************************************************/
73 void data_send_process(unsigned char *send_data,float frequ)
74 {
75 1 int tmp,n;
76 1 char i;
77 1 tmp = (int)(frequ*100);
78 1 n = sprintf(send,"%s%4x",send_data,tmp);
79 1
80 1 for(i=4;i>1;i--)
81 1 {
82 2 if(send[n-i] == 32) send[n-i]= '0';
83 2 }
84 1
85 1 }
86
87 /**********************************************************************************
88 函數名:data_res_proce(void)
89 功能描述:接收數據并判斷是否發送失敗
90 傳入參數:無
91 傳出參數:char : 為0的話,傳輸正確,否則失敗
92 ************************************************************************************/
93 char data_res_proce(void)
94 {
95 1
96 1 flg = 0;
97 1 r=0;
98 1
99 1 while(res[r-1]!=13 && r<=18);
100 1 if(!flg)
101 1 {
102 2 if((res[3]==48) && (res[4]==48) ) return 0;
103 2 else return 1;
104 2 }
105 1 return 1;
106 1
107 1
108 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 478 ----
CONSTANT SIZE = 19 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 54
IDATA SIZE = ---- ----
C51 COMPILER V8.02 TRANSDUCER 01/01/2007 22:09:43 PAGE 3
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 + -