123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- #include "common.h"
- int GetParaFromStr(char *Str,char *Para,char *Value){
- int ValueLen=0,ParaLen=0;
- char ParaTemp[22];
- char *p;
- char d;
- int i=0;
- if(0==*Str || 0==*Para)return 0;
- while(0!=(d=*Para) && ParaLen<20){
- ParaTemp[i++]=d;
- if(d=='=' || d==';')return 0;
- Para++;
- ParaLen++;
- }
- ParaTemp[ParaLen++]='=';
- ParaTemp[ParaLen]=0;
- p=strstr(Str,ParaTemp);
- p+=ParaLen;
- //--
- while(*p>0x20 && ';'!=*p && ValueLen<=80){
- *Value=*p;
- p++;
- Value++;
- ValueLen++;
- }
- *Value=0;
- return ValueLen;
- }
- char msgCmp(char *msg, char *target){
- char *p1=target, *p2=msg;
- while(*p1 != 0){
- if(*p1 != *p2) return 0;
- p1++;p2++;
- }
- return 1;
- }
- // '56'->0X56
- unsigned char charStrToHex(char d1, char d2){
- unsigned char p1=d1;
- unsigned char p2=d2;
- if(p1>='0' && p1 <='9') p1 -= 0x30;
- else if(p1>='a' && p1 <='f') p1 -= 0x57;
- else if(p1>='A' && p1 <='F') p1 -= 0x37;
- else return 0;
- p1<<=4;p1&=0xF0;
-
- if(p2>='0' && p2 <='9') p2 -= 0x30;
- else if(p2>='a' && p2 <='f') p2 -= 0x57;
- else if(p2>='A' && p2 <='F') p2 -= 0x37;
- else return 0;
- return (p1|p2);
- }
- /*
- restoreDataFormatByHex
- "313233"=>{0x31,0x32,0x33}
- */
- T_INT8 restoreDataFormatByHex(T_UINT8 *src, T_UINT16 len)
- {
- T_UINT16 i,j,k;
- T_UINT8 temp[2];
- if(NULL==src) return 1;
- j=0;
- for(i=0;i<len/2;i++){
- temp[0]=src[2*i];
- temp[1]=src[2*i+1];
- for(k=0;k<2;k++){
- if(temp[k]>='0' && temp[k]<='9') temp[k] -= 0x30;
- else if(temp[k]>='a' && temp[k]<='f') temp[k] -= 0x57;
- else if(temp[k]>='A' && temp[k]<='F') temp[k] -= 0x37;
- else return 2;
- }
- temp[0] <<= 4;
- temp[0] &= 0xF0;
- src[j++] = temp[0] | temp[1];
- }
- return 0;
- }
- /*
- fillByHexFormat
- {0x31,0x32,0x33}=>"313233"=>src
- */
- void fillByHexFormat(T_INT8 *src, T_INT8 *data, T_INT32 len){
- T_INT32 i;
- T_INT8 buf[10];
- for(i=0;i<len;i++){
- snprintf(buf, sizeof(buf),"%02x",data[i]);
- strcat(src, buf);
- }
- strcat(src,"\r\n");
- }
- /*
- MakeStringToUpperCap
- 遍历data,将非大写字母转成大写字母
- */
- void MakeStringToUpperCap(T_UINT8 *data, T_UINT16 len){
- T_UINT16 i;
- for(i=0;i<len;i++)
- {
- if(data[i] >= 'a' && data[i] <= 'z')
- data[i] -= 0x20;
- }
- }
- /*******************************************************************
- fitStrForIndex
- 从Str中查找Para串
- return:-1 未找到目标串
- return:>=0 找到目标串返回目标在源串的索引值
- ********************************************************************/
- T_INT16 fitStrForIndex(T_INT8 *Str,T_INT8 *Para){
- T_INT8 *targetP;
- targetP=strstr(Str, Para);
- if(targetP==0) return -1;
- else{
- return (targetP-Str);
- }
- }
- unsigned char AscToHex(unsigned char aHex)
- {
- if((aHex>=0)&&(aHex<=9))
- aHex += 0x30;
- else if((aHex>=10)&&(aHex<=15))//A-F
- //aHex += 0x37;
- aHex += 0x57;
- else aHex = 0xff;
- return aHex;
- }
- void AscStrTurnHexStr(char *AscStr, char *HexStr)
- {
- char *pAscStr=AscStr;
- unsigned char d,h,l;
- while(0!=(d=(unsigned char)*pAscStr++)){
- l=d&0x0f;
- h=d>>4;
- *HexStr++=AscToHex(h);
- *HexStr++=AscToHex(l);
- }
- *HexStr=0;
- }
- /*0x12-->12*/
- unsigned char bcdToDec(unsigned char value){
- unsigned char h,l;
- h=(value>>4)&0x0f;
- l=value&0x0f;
- return (h*10+l);
- }
- void LwEndingToBiEndingStr(char *data, int len){
- char tt[2];
- int i;
- for(i=0;i<len/4;i++){
- tt[0]=data[4*i];
- tt[1]=data[4*i+1];
- data[4*i]=data[4*i+2];
- data[4*i+1]=data[4*i+3];
- data[4*i+2]=tt[0];
- data[4*i+3]=tt[1];
- }
- }
- #include "ohpoc.h"
- MY_CLOCK poc_clock;
- void getMyClock(MY_CLOCK *myclock){
- // nwy_time_t tdata;
- // char timezone=0;
- //
- // nwy_get_time(&tdata, &timezone);
- myclock->year=poc_clock.year;
- myclock->month=poc_clock.month;
- myclock->day=poc_clock.day;
- myclock->hour=poc_clock.hour;
- myclock->min=poc_clock.min;
- myclock->sec=poc_clock.sec;
- }
- void ohpocGetClock(MY_CLOCK *myclock){
- getMyClock(myclock);
- }
|