我正在尝试连接到串行端口并从文件发送一系列命令。
首先,我已通过以下方式进行连接:
PuTTY.exe -serial COM3 -sercfg 57600,8,n,1,N
例如,我有一个名为 commands.txt 的文件,其中包含一系列我希望发送的串行命令。
我尝试了以下操作,但它无法正常工作:
PuTTY.exe -serial COM3 -sercfg 57600,8,n,1,N -m commands.txt
任何帮助是极大的赞赏。
如果我在python中有一个单独的字符流,并且我想要一个4个字符长的字符串缓冲区,我怎么能拥有它以便最新的字符到达缓冲区的末尾而其他字符都向下移动一个.
我有一个字符流从串口输入并解码成一个变量,称为decoded循环的每次运行,只有一个字符从中读取ser.read().我希望在收到某个字符串时结束循环.为此,我希望能够将字符放入我可以检查的缓冲区中.
例如
解码循环的每次运行
H
e
l
l
o
Run Code Online (Sandbox Code Playgroud)
ser = serial.Serial(port='COM1')
PBIT = True
while PBIT
read = ser.read()
decoded = read.decode('utf-8')
Run Code Online (Sandbox Code Playgroud)
进入名为Buffer的变量.
" "
" H"
" He"
" Hel"
"Hell"
"ello"
Run Code Online (Sandbox Code Playgroud) 我创建了已定义的2个任务类型,并在主程序中实例化它们.
如何在单独的任务之间发送会合?
Procedure Task_Prog is
task type Task_one is
entry Redezvous_One;
end Task_one;
task type Task_Two is
entry Redezvous_Two;
end Task_Two;
task body Task_one is
Finished : Boolean := False;
begin
while not Finished loop
accept Redezvous_One do
finished := True;
Task_Instantiation_B.Redezvous_Two;
end Redezvous_One;
end loop;
end Task_one;
task body Task_Two is
Finished : Boolean := False;
begin
while not Finished loop
accept Redezvous_Two do
finished := True;
end Redezvous_Two;
end loop;
end Task_Two;
Task_Instantiation_A : Task_one;
Task_Instantiation_B: Task_Two;
begin …Run Code Online (Sandbox Code Playgroud)