作者iamback5566 (我是贝壳)
看板Python
标题[问题] pyserial透过UART读写资料
时间Sun Sep 8 20:16:57 2019
原本可以透过像Tera term、putty这类的程式
藉由UART去下指令
ex:在tera term打"ver" chip就会回我目前的fw version
最近想透过python来完成这项事情但一直做不到
连结为程式码
http://codepad.org/cSalzfge
爬文後 有对输入的指令做encode跟decode
但在termianl看到的输出结果却是不连串的ver排列组合(er ver ve v...
如果用ser.readline()更会完全停住 只能把terminal关掉再重开
请问我哪里出错了呢?
我是在Visual stdio code上面撰写执行
小弟新手 麻烦各位教我QQ
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.192.156.184 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1567945023.A.978.html
1F:推 rexyeah: 你没有call flush? 09/08 21:55
2F:→ iamback5566: 意思是写完一个指令就要call flush? 09/08 22:23
3F:推 rexyeah: 我用minicom测了一下 你的程式在我的环境工作很正常 09/09 12:35
4F:→ rexyeah: 我一开始以为你只有写入buffer没有flush 抱歉 09/09 12:35
5F:→ rexyeah: 我没有用过VS 我在Ubuntu16.04+minicom+随便板子 直接 09/09 12:37
6F:→ rexyeah: 复制贴上你的code,我看minicom有一直写入ver没被截断 09/09 12:38
7F:推 legendmtg: 你的baudrate对吗? 09/09 15:37
8F:推 rexyeah: baudrate不对应该连阅读都很困难。 09/09 19:00
我没写好...write应该要写在while回圈外
l大 baudrate是对的 我在tera term就是设115200
r大 意思是你在minicom读板子的状态有收到pyserial送过来的ver指令吗?
如果是的话那我可能要看板端的C code怎麽改
※ 编辑: iamback5566 (123.192.156.184 台湾), 09/09/2019 19:20:18
9F:推 rexyeah: 是。我开两个terminal, 一个跑minicom , 一个跑你的程式 09/09 22:27
10F:→ rexyeah: 。我看ver不断写入。 09/09 22:27
11F:→ iamback5566: 好 我再看看 谢谢大大 09/11 19:55