[已注销] F86EA、F82EC 我是知道可以在工厂菜单改,但我也听说有的机型工厂菜单改完仍然不
不能和 Windows 通讯很不方便
我看了一下展台那里的代码,发现可以给 MCU 发指令修改音量:
// Token: 0x06000052 RID: 82 RVA: 0x0000323C File Offset: 0x0000143C
public static bool AddVolume()
{
if (!Mcu.Write(McuCommand.AddVolumeCommand))
{
Mcu.OnLog("WriteError", "AddVolume WriteError");
return false;
}
byte[] array;
if (!Mcu.Read(Mcu.DataLength, out array))
{
Mcu.OnLog("ReadError", "AddVolume ReadError");
return false;
}
if (array[6] == 161)
{
Mcu.OnLog("AddVolume", "增加音量成功");
return true;
}
Mcu.OnLog("Error", "AddVolume 数据错误,返回的主命令是" + array[6].ToString());
return false;
}
// Token: 0x06000053 RID: 83 RVA: 0x000032C4 File Offset: 0x000014C4
public static async Task<bool> AddVolumeAsync()
{
bool flag;
if (!Mcu.Write(McuCommand.AddVolumeCommand))
{
Mcu.OnLog("WriteError", "AddVolume WriteError");
flag = false;
}
else
{
ValueTuple<bool, byte[]> valueTuple = await Mcu.ReadAsync(-1, "");
bool item = valueTuple.Item1;
byte[] item2 = valueTuple.Item2;
if (!item)
{
Mcu.OnLog("ReadError", "AddVolume ReadError");
flag = false;
}
else if (item2[6] == 161)
{
Mcu.OnLog("AddVolume", "增加音量成功");
flag = true;
}
else
{
Mcu.OnLog("Error", "AddVolume 数据错误,返回的主命令是" + item2[6].ToString());
flag = false;
}
}
return flag;
}
// Token: 0x06000054 RID: 84 RVA: 0x00003300 File Offset: 0x00001500
public static bool DecreaseVolume()
{
if (!Mcu.Write(McuCommand.DecreaseVolume))
{
Mcu.OnLog("WriteError", "DecreaseVolume WriteError");
return false;
}
byte[] array;
if (!Mcu.Read(Mcu.DataLength, out array))
{
Mcu.OnLog("ReadError", "DecreaseVolume ReadError");
return false;
}
if (array[6] == 161)
{
Mcu.OnLog("DecreaseVolume", "降低音量成功");
return true;
}
Mcu.OnLog("Error", "DecreaseVolume 数据错误,返回的主命令是" + array[6].ToString());
return false;
}
// Token: 0x06000055 RID: 85 RVA: 0x00003388 File Offset: 0x00001588
public static async Task<bool> DecreaseVolumeAsync()
{
bool flag;
if (!Mcu.Write(McuCommand.DecreaseVolume))
{
Mcu.OnLog("WriteError", "DecreaseVolume WriteError");
flag = false;
}
else
{
ValueTuple<bool, byte[]> valueTuple = await Mcu.ReadAsync(-1, "");
bool item = valueTuple.Item1;
byte[] item2 = valueTuple.Item2;
if (!item)
{
Mcu.OnLog("ReadError", "DecreaseVolume ReadError");
flag = false;
}
else if (item2[6] == 161)
{
Mcu.OnLog("DecreaseVolume", "降低音量成功");
flag = true;
}
else
{
Mcu.OnLog("Error", "DecreaseVolume 数据错误,返回的主命令是" + item2[6].ToString());
flag = false;
}
}
return flag;
}
所以我在折腾 MCU 通讯