namespace ClassFile
{
class BaseUtil
{
///
/// 获取LRC
///
///
public static string getLRC(string SENDMESSAGE)
{
string message = SENDMESSAGE.Trim();
if (message.Length % 2 != 0)
{
message = message + "0";
}
int LRC = 0x0;
for (int i = 0; i < message.Length; i = i + 2)
{
int inside = int.Parse(message.Substring(i, 1).ToString() + message.Substring(i + 1, 1).ToString(), System.Globalization.NumberStyles.HexNumber);
LRC += inside;
}
string _LRC = string.Format("{0:X2}", LRC);
string LRCre = "";
for (int i = 0; i < _LRC.Length; i++)
{
int index;
if (i != _LRC.Length - 1)
{
index = 0xF - int.Parse(_LRC.Substring(i, 1).ToString(), System.Globalization.NumberStyles.HexNumber);
}
else
index = 0xF - int.Parse(_LRC.Substring(i, 1).ToString(), System.Globalization.NumberStyles.HexNumber) + 1;
LRCre += string.Format("{0:X}", index);
}
return LRCre;
}
}
}