📄 util.lst
字号:
C51 COMPILER V8.02 UTIL 10/17/2006 15:15:28 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE UTIL
OBJECT MODULE PLACED IN UTIL.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE LB_TCP_SERVER\UTIL.C BROWSE DEBUG OBJECTEXTEND PRINT(.\UTIL.lst) OBJECT(UTI
-L.obj)
line level source
1 /*
2 ###############################################################################
3 Wiznet.
4 5F Simmtech Bldg., 228-3, Nonhyun-dong, Kangnam-gu,
5 Seoul, Korea
6
7 (c) Copyright 2002, Wiznet, Seoul, Korea
8
9
10 File Name : UTIL.C
11
12 Version : 1.0
13
14 Created : 2001/10/05
15
16 Description : It's implemented with useful functions, these functions are several converting and referring
- to String.
17 Almost functions in this are offered by Keil Compiler.
18 If you want not to use, Include that Library.
19
20 Modified History
21 Modified : 2002/03/15
22 Description :
23 Modified : 2002/10/20
24 Description : Version Up (V2.0)
25 Add ITOA()
26 Add ValidATOI()
27 Add CmpStr()
28 Add StrTrim()
29 Add FindLast()
30 Add StrNChr()
31
32 ###############################################################################
33 */
34
35
36
37 /*
38 ###############################################################################
39 Include Part
40 ###############################################################################
41 */
42
43 #include "reg51.h"
44 #include "util.h"
45 #include "serial.h"
*** WARNING C318 IN LINE 36 OF LB_TCP_SERVER\SERIAL.H: can't open file 'TYPE.H'
46
47
48 /*
49 ###############################################################################
50 Define Part
51 ###############################################################################
52 */
C51 COMPILER V8.02 UTIL 10/17/2006 15:15:28 PAGE 2
53
54
55
56
57 /*
58 ###############################################################################
59 Grobal Variable Definition Part
60 ###############################################################################
61 */
62
63
64
65 /*
66 ###############################################################################
67 Local Variable Definition Part
68 ###############################################################################
69 */
70
71
72
73 /*
74 ###############################################################################
75 Function Implementation Part
76 ###############################################################################
77 */
78
79 /*
80 Description : Convert Hex(0-F) to Character
81 Argument : c - Hex( 0x00'~0x0F)to convert into character (INPUT)
82 Note :
83 */
84 UCHAR D2C(char c)
85 {
86 1 if( c >= 0 && c <= 9)
87 1 return '0' + c;
88 1 if( c >= 10 && c <= 15)
89 1 return 'A' + c - 10;
90 1 return c;
91 1 }
92
93 /*
94 Description : Convert Character into Hex
95 Argument : c - character( '0'~'F') to convert into Hex(INPUT)
96
97 Note :
98 */
99 char C2D(UCHAR c)
100 {
101 1 if( c >= '0' && c <= '9')
102 1 return c - '0';
103 1 if( c >= 'a' && c <= 'f')
104 1 return 10 + c -'a';
105 1 if( c >= 'A' && c <= 'F')
106 1 return 10 + c -'A';
107 1 return c;
108 1 }
109
110 /*
111 Description : Convert Character string into integer number.
112 Argument : str - Source string (INPUT)
113 base - Base of value; must be in the range 2 ~ 16
114 Return Value : Value of Number to be converted
C51 COMPILER V8.02 UTIL 10/17/2006 15:15:28 PAGE 3
115 Note :
116 */
117 UINT ATOI(UCHAR* str,char base)
118 {
119 1 UINT num = 0;
120 1 while (*str !=0)
121 1 num = num * base + C2D(*str++);
122 1 return num;
123 1 }
124
125
126 /*
127 ###############################################################################
128 Unused Function Implementation Part
129 ###############################################################################
130 */
131
132 #ifndef __UTIL_UNUSED
/*
Description : Find beginning of character in string
Argument : src - source string (INPUT)
tag - Character to find in source string (INPUT)
Note :
*/
UCHAR * FindFirstStr(UCHAR *src,UCHAR * tag)
{
UINT i;
UCHAR * tsrc = src;
FIND:
if((tsrc = FindFirst(tsrc,tag[0])) !=0)
{
for(i=1; tag[i] != '\0' ; i++)
{
if(*(tsrc+i) == '\0') return 0;
if( *(tag + i) != *(tsrc+ i) )
{
tsrc++;
goto FIND;
}
}
return tsrc;
}
return 0;
}
/*
Description : Cascade 'tag' in the end of 'str' string.
Argument : str - source string (INPUT, OUTPUT)
Note :
*/
void MemCat(UCHAR* str, UCHAR* tag)
{
while(*str !='\0') str++;
while(*tag !='\0') *str++ = *tag++;
*str='\0';
}
/*
Description : Find last location of character in string
Argument : src - source string (INPUT)
C51 COMPILER V8.02 UTIL 10/17/2006 15:15:28 PAGE 4
c - Character to find in source string (INPUT)
Note : Version 2.0
*/
UCHAR * FindLast(UCHAR * src,char c)
{
UCHAR * ret = 0;
while(*src != '\0')
{
if(*src == c) ret = src;
src++;
}
return ret;
}
/*
Description : Get count 'c' character in str
Argument : src - Source string (INPUT)
c - character to be found
Return Value : Count
Note : Version 2.0
*/
int StrNChr(char* src, char c)
{
int ret = 0;
while(*src != '\0')
if(*src++ == c) ret++;
return ret;
}
/*
Description : Convert Decimal Number into string.
Argument : str - pointer to string to be returned
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -