最新电影在线观看,jrs低调看直播,avav天堂,囯产精品宾馆在线精品酒店,亚洲精品成人区在线观看

Ubuntu下查看串口信息和用python打開串口

一、查看本機串口信息

串口在 /dev 目錄中,查看串口是否在使用,可以用命令

 ls -l /dev/ttyS* 

 一般情況下串口的名稱全部在dev下面,如果你沒有外插串口卡的話默認是dev下的ttyS* ,一般ttyS0對應com1,ttyS1對應com2,當然也不一定是必然的;

查看串口設備:

dmesg | grep ttyS

二、串口調試軟件

Windows下的串口調試軟件有好多,Linux下資源相對較少,不過也有那么幾個好用的。

1. minicom

聽說它功能很強大,但它沒有UI界面,開始用還不太順手。安裝:

sudo apt install minicom

配置:

sudo minicom -s

界面如下圖:

使用方向鍵 選擇 Serial port setup,按Enter鍵,進入設置環境,如下圖

輸入a或者A,選擇串口設備,如果的是USB轉串口,并且接到了COM1上,將/dev/tty8修改為/dev/ttyUSB0

注意:使用USB轉串口,那么串口COM1對應ttyUSB0, COM2對應ttyUSB1;如果沒有使用USB轉串口,而是直接使用串口,那么串口COM1對應ttyS0, COM2對應ttyS1。

配置完串口設備后,按Enter鍵,再輸入E,配置波特率,按默認配置即可 115200 8N1 (波特率:115200,數據位:8,奇偶校驗位:N 無,停止位:1)。

配置完波特率,按Enter鍵,再輸入F,配置硬件流控,選擇NO

再繼續配置軟件流控,也選擇NO。都配置完后,按下Enter鍵返回上一界面,選擇save setup as dfl(即將其保存位默認配置),再選擇Exit,關閉minicom。

再次輸入命令 sudo minicom,是剛才的配置生效,可以看到串口輸出信息

注意:非正常關閉minicom,會在/var/lock下創建幾個文件LCK*,這幾個文件阻止了minicom的運行,將它們刪除后即可恢復

2. CuteCom

這個就友好點,有界面了。和Windows的差不多,可以選擇串口,設置波特率、數據位、停止位等。中間是接收窗口,下面是發送窗口。安裝:

# 安裝
sudo apt install cutecom 
# 啟動
sudo cutecom

來張圖:

3. COMTool

這個是在github上找到的,由Neucrack Neutree開發,用python3開發,這里要注意,你電腦沒有Python3是不能運行的。值得注意的是,它支持跨平臺,linux、windows、mac都可以用。github有各平臺的安裝及使用教程。

三、串口權限問題

Linux串口是默認普通用戶沒有讀寫權限的,每次開機后對串口讀寫都要附加權限

sudo chmod 666 /dev/ttyUSB0

但對于需要開機自動運行的程序就很麻煩了,所以可以設置永久加權

1.打開下面的文件遠程的話要把gedit換成vi或nano等。

這個文件本來是不存在的,只不過編輯器打開不存在的文件會自動創建。

70-usb-serial.rules文件名可以自定義,但必須以.rules結尾。

sudo gedit /etc/udev/rules.d/70-usb-serial.rules

2.在文件中添加如下內容

ttyUSB*表示所有這一格式的串口名,如果你的是ttyS*或其它,按需改。

0666表示加權模式,和chmod后面的參數一致,寫成666也可以。

vibot_base是我自定義的串口名,就是為ttyUSB*創建一個超鏈接 ,如下圖。如果你不需要,可以去掉最后一項。

KERNEL=="ttyUSB*", MODE="0666", SYMLINK+="vibot_base"

3.重啟電腦重啟電腦使修改生效。

四、打開串口

#usr/bin/python3
# -*- coding: utf-8 -*-
import serial

//打開串口0, 9600,8N1,連接超時0.5秒
ser=serial.Serial("/dev/ttyUSB0",57600,timeout=0.5) #使用USB連接串行口
ser=serial.Serial("/dev/ttyAMA0",57600,timeout=0.5) #使用樹莓派的GPIO口連接串行口
ser=serial.Serial(1,9600,timeout=0.5)#winsows系統使用com1口連接串行口
ser=serial.Serial("com1",9600,timeout=0.5)#winsows系統使用com1口連接串行口
ser=serial.Serial("/dev/ttyS1",9600,timeout=0.5)#Linux系統使用com1口連接串行口
聲明:本內容為作者獨立觀點,不代表電子星球立場。未經允許不得轉載。授權事宜與稿件投訴,請聯系:editor@netbroad.com
覺得內容不錯的朋友,別忘了一鍵三連哦!
贊 5
收藏 2
關注 20
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧