我带来了一个新硬件(通过 USB 连接为 /dev/ttyUSB0)。我需要通过串行传输二进制 os.bin 文件。硬件具有内置的 UART 驱动程序。
我下载了 putty,在选项中看不到任何文件传输方法。
但我确实在 Teraterm 中看到了文件传输选项,而且很多:kermit、X、Y & ZMODEM、Quick Van 和 B-Plus。
现在,我不知道上面提到的任何协议。
我希望新硬件只有 UART 驱动程序。(按照手册中指定的波特率115200 8N1)
现在,如何将 os.bin 传输到 HW?& 如果我使用 Teraterm,我应该在 Teraterm 中选择哪个选项?
我正在尝试使用Pywin32向无效的TeraTerm窗口发送击键.
这个答案让我写了这段代码:
import win32gui
import win32con
import win32api
hwndMain = win32gui.FindWindow("Tera Term VT", None)
print hwndMain
hwndChild = win32gui.GetWindow(hwndMain, win32con.GW_CHILD)
win32api.PostMessage(hwndChild, win32con.WM_CHAR, 0x5b, 0)
Run Code Online (Sandbox Code Playgroud)
但是:
hwndMain = win32gui.FindWindow("Tera Term VT", None)返回0,它找不到窗口.
如果我换"Tera Term VT"到"Notepad",我很乐意整天将键击发送到活动的记事本窗口.那么,为什么我不能进入TeraTerm窗口?
PyHANDLE = FindWindow(ClassName,WindowName)
ClassName:PyResourceId要查找的窗口类的名称或原子,可以是None
WindowName:string要查找的窗口的标题,可以是None
那么如何才能使用正确的ClassName呢?
我已经尝试了几乎每一个变化Tera Term VT,逃避空间:"Tera\ Term\ VT"用单引号括起整个:"'Tera Term VT'"但是没有任何作用.我甚至尝试使用进程的名称:"ttermpro.exe",并"COM11:115200baud - Tera Term VT"在绝望中将子名称包含在字符串中,但没有任何作用.
有趣的是,这个:
import win32com.client
shell = win32com.client.Dispatch("WScript.Shell")
shell.AppActivate("Tera Term …Run Code Online (Sandbox Code Playgroud)