日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python 串口助手 简书_python用pyserial读取串口问题解决

發(fā)布時(shí)間:2023/12/10 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 串口助手 简书_python用pyserial读取串口问题解决 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

object is not callable

Error:

‘bool’ object is not callable

沒有返回值

正確代碼:

ser = serial.Serial('COM7', 115200, 8, 'N', 1)

flag = ser.is_open

原因:

調(diào)用屬性is_open時(shí)將其視為函數(shù),寫成 ser.is_open()。

關(guān)于is_open的功能及用法,可參見python庫 pyserial和serial的區(qū)別_Electrical_IT的博客-CSDN博客

解決:

將 is_open() 改成 is_open

其他鏈接:

could not open port

Error:

raise SerialException(“could not open port {!r}: {!r}”.format(self.portstr, ctypes.WinError()))

serial.serialutil.SerialException: could not open port ‘COM7’: PermissionError(13, ‘拒絕訪問。’, None, 5)

正確代碼:

import serial // 安裝pyserial庫,但要import serial!!!

ser = serial.Serial('COM7', 115200, 8, 'N', 1)

flag = ser. is_open

if flag:

print('success\n')

ser.close()

else:

print('Open Error\n')

ser.close()

可能的原因:

端口號不正確,或其他串口參數(shù)設(shè)置不正確

python庫安裝的不正確,調(diào)用時(shí)不正確

沒有調(diào)用close函數(shù)關(guān)閉串口

沒有關(guān)閉其他調(diào)用串口的上位機(jī)或程序等

硬件外設(shè)上(如單片機(jī)開發(fā)板)的輸出模式是否調(diào)節(jié)到合適的位置

防火墻不允許pycharm或外設(shè)訪問

在程序調(diào)試時(shí),實(shí)際運(yùn)行的程序只打開了串口,而未執(zhí)行close(),所以串口不能重復(fù)打開,可關(guān)掉pycharm(或其他python運(yùn)行環(huán)境),重新打開再運(yùn)行

解決:

在設(shè)備管理器查看端口號(注意,設(shè)備管理器查找的端口號處右鍵“屬性”->“端口設(shè)置”,此處的波特率等不是真實(shí)的波特率)

將外設(shè)模式設(shè)為debug狀態(tài)的前提下,在調(diào)試環(huán)境(如eclipse)打開debug并全速運(yùn)行

在XOM等串口調(diào)試助手上確認(rèn)串口可以打開,確認(rèn)波特率設(shè)置正確,串口傳回?cái)?shù)據(jù)正常,根據(jù)實(shí)際情況修改Serial()參數(shù)

在pycharm中安裝pyserial庫(注意,不是在Windows的cmd窗口),卸載serial庫(若有的話)

關(guān)閉其他訪問串口的上位機(jī)或調(diào)試助手

在程序結(jié)束前要記得關(guān)閉串口(調(diào)用close()函數(shù))

打開控制面板-> 系統(tǒng)和安全-> 允許應(yīng)用通過防火墻,找到外設(shè)的名字和pycharm的名字,將“專用”和“公用”的框都√打勾

重新run一下python程序

若均無果,拔掉設(shè)備,關(guān)掉pycharm(或其他python運(yùn)行環(huán)境),重新連接電腦,重新打開python環(huán)境,再運(yùn)行再試

注意:

庫要在pycharm-> File-> Settings-> Project-> Project Interpreter中點(diǎn)擊加號,搜索pyserial進(jìn)行安裝,不要安裝serial,也不要在Windows的命令串口pip install。

要先用串口調(diào)試助手把參數(shù)確認(rèn)好,不然很難排除參數(shù)問題。波特率可能不是一般的標(biāo)準(zhǔn)波特率,除了50、75、110、134、150、200、300、600、1200、1800、2400、4800、9600、19200、38400、57600、115200以外,還要嘗試230400、460800、500000、576000、921600、1000000、1152000、1500000、2000000、2500000、3000000、3500000、4000000。

程序末尾要加ser.close(),ser是自己定義的,參考上面的正確程序示范,靈活編寫程序。close()就是立即關(guān)閉串口的,沒有close()可能會引發(fā)其他訪問問題。

對于較高版本的pyserial庫,一般serial.Serial()會自動調(diào)用open()函數(shù)開啟串口。有些版本要自己調(diào)用open()來打開串口。

其他鏈接:

本文地址:https://blog.csdn.net/Electrical_IT/article/details/107221567

如您對本文有疑問或者有任何想說的,請點(diǎn)擊進(jìn)行留言回復(fù),萬千網(wǎng)友為您解惑!

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的python 串口助手 简书_python用pyserial读取串口问题解决的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。