通过extraPuTTY发送的十六进制值将错误数据
问题描述:
我试图让ExtraPuTTY做等价的:通过extraPuTTY发送的十六进制值将错误数据
https://github.com/SolidRun/u-boot-armada38x/blob/u-boot-2013.01-15t1-clearfog/download-serial.sh
我想我可以用LUA脚本来中断引导序列,然后发送的u-boot文件通过xmodem。
问题是,当我尝试使用ExtraPuTTY从BB第一个十六进制值更改为发送到C2 BB
lua_senddata(string.format("%c%c%c%c%c%c%c%c",0xbb,0x11,0x22,0x33,0x44,0x55,0x66,0x77), false);
输出:
Rec: C2 BB
Rec: 11
Rec: 22
Rec: 33
Rec: 44
Rec: 55
Rec: 66
Rec: 77
我也写了一个二进制文件,并试图阅读然后发送,但遇到了同样的问题。
function readAll(file)
local f = io.open(file, "rb")
local content = f:read("*all")
f:close()
return content
end
local data = readAll([[C:\test\WakeUpData_Send.bin]])
lua_senddata(data, false)
我最好的猜测是转换到Char什么是额外的C2添加到数据块的开始。
使用:http://www.serialporttool.com/CommEcho.htm来测试。
任何帮助,将不胜感激。
答
事实证明,文本编码被设置为UTF-8正在使用UTF-8代码表将字符代码转换为C2 BB。
在putty中,我将“窗口”>“翻译”>“远程字符集”更改为“使用字体编码”,并将十六进制代码直接写入传递给它。