#include "config.h" //填充RAM数据 void RAM_Fill(INT8U *ptr, INT8U Value, INT32U Len) { while (Len--) { ptr[Len] = Value; } } //复制RAM数据 void RAM_Copy(INT8U *ptrs, INT8U *ptrd, INT32U Len) { while (Len--) { ptrd[Len] = ptrs[Len]; } } //HEX转ASCII码 void HEX2ASCII(INT32U Value, INT8U *ptr, INT8U Len) { INT8U zf=0, i; i = Len; while (i--) { ptr[i] = Value % 10; Value /= 10; } for (i = 0; i < (Len - 1); i++) { if (ptr[i] != '0') { zf = 1; } if (zf == 0) { ptr[i] = ' '; } } } //字符串比较 INT8U STR_CMP(char *ptr1, char *ptr2) { do { if (*ptr2 == 0) { return (0); } if (*ptr1++ != *ptr2++) { return (1); } } while (1); } //CRC8计算 INT8U CRC8(INT8U *ptr, INT8U len, INT8U key) { INT8U i; INT8U crc = 0; while (len-- != 0) { for (i = 0x80; i != 0; i <<= 1) { if ((crc & 0x80) != 0) { crc <<= 1; crc ^= key; } else { crc <<= 1; } if ((*ptr & i) != 0) { crc ^= key; } } ptr++; } return (crc); }