Python 實(shí)現(xiàn)Serial 與STM32J進(jìn)行串口通訊
Python果然是一款非常簡(jiǎn)明的語(yǔ)言,做東西非常流暢,今天又嘗試了一下用Serial做了一個(gè)控制臺(tái)的串口通訊,我用的下位機(jī)是STM32F103,搞了一個(gè)多小時(shí)就成功了,可見(jiàn)Python的能力之強(qiáng)。
說(shuō)明幾點(diǎn)注意,一是Python在windows下的串口號(hào)可以用COM來(lái)標(biāo)注,此時(shí)序號(hào)從1開(kāi)始,如果自己?jiǎn)为?dú)指定序號(hào),則是從0開(kāi)始。
另外,如果下位機(jī)串口通訊設(shè)定的非常簡(jiǎn)單的話,在Python中只需要設(shè)定好串口號(hào)和波特率即可,其余的均設(shè)為默認(rèn)值。一般來(lái)說(shuō)在單片機(jī)或者是嵌入式系統(tǒng)中的串口通訊基本都不需要設(shè)定其余的東西,最多還需要設(shè)定一個(gè)停止位的位數(shù)或者是一幀數(shù)據(jù)多少位,一般都設(shè)定為1位和8位,這也都是Python默認(rèn)好的。
讀取字符串需要注意,向串口發(fā)送一個(gè)字符串,隨后在讀回并在PC機(jī)上顯示出來(lái),需要在發(fā)送時(shí)就要記錄字符串長(zhǎng)度,否則會(huì)阻塞,串口通信將會(huì)失敗。反正我是失敗了很多次。
__author__ = 'freedom'
import serial
port = 0
ser = serial.Serial()
ser.setPort(port)
print ser.portstr
baudrate = 115200
ser.setBaudrate(baudrate)
ser.open()
print ser.isOpen()
print ser
while(1):
datainput = raw_input("Please input the character:\n")
n = ser.write(datainput)
data = ser.read(n)
print data
以上這篇Python 實(shí)現(xiàn)Serial 與STM32J進(jìn)行串口通訊就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python數(shù)據(jù)分析實(shí)戰(zhàn)指南之異常值處理
數(shù)據(jù)預(yù)處理是明確分析目標(biāo)與思路之后進(jìn)行數(shù)據(jù)分析的第一步,也是整個(gè)項(xiàng)目中最基礎(chǔ)、花費(fèi)時(shí)間較長(zhǎng)的工作,下面這篇文章主要給大家介紹了關(guān)于python數(shù)據(jù)分析實(shí)戰(zhàn)指南之異常值處理的相關(guān)資料,需要的朋友可以參考下2022-01-01
python pandas loc 布爾索引示例說(shuō)明
loc跟iloc的區(qū)別,首先loc是location的意思,和iloc中i的意思是指integer,所以它只接受整數(shù)作為參數(shù),詳情見(jiàn)下面2022-03-03
Python 二進(jìn)制字節(jié)流數(shù)據(jù)的讀取操作(bytes與bitstring)
本文主要介紹了Python 二進(jìn)制字節(jié)流數(shù)據(jù)的讀取操作(bytes與bitstring),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
基于Python實(shí)現(xiàn)銀行卡識(shí)別的示例代碼
銀行卡識(shí)別是一個(gè)在金融、安全等領(lǐng)域具有重要應(yīng)用的問(wèn)題,本文主要為大家介紹了如何使用Python和深度學(xué)習(xí)技術(shù)來(lái)實(shí)現(xiàn)銀行卡識(shí)別功能,需要的可以參考下2024-03-03
Python PyQt5學(xué)習(xí)之自定義信號(hào)
PyQ5已經(jīng)自動(dòng)定義了很多QT自建的信號(hào)。但是在實(shí)際的使用中為了靈活使用信號(hào)與槽機(jī)制,可以根據(jù)需要自定義信號(hào)。本文就將為大家詳細(xì)講講PyQt5自定義信號(hào),感興趣的可以了解一下2022-03-03
python爬蟲開(kāi)發(fā)之urllib模塊詳細(xì)使用方法與實(shí)例全解
這篇文章主要介紹了python爬蟲開(kāi)發(fā)之urllib模塊詳細(xì)使用方法與實(shí)例全解,需要的朋友可以參考下2020-03-03
Python?xpath,JsonPath,bs4的基本使用
這篇文章主要介紹了Python?xpath,JsonPath,bs4的基本使用,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-07-07
用Flask實(shí)現(xiàn)token登錄校驗(yàn)的解決方案
網(wǎng)站、小程序、APP 是否已經(jīng)登錄所代表的狀態(tài),代表一個(gè)概念是登錄態(tài), 我們常用的登錄態(tài)驗(yàn)證方式有cookie,session,token,token提供了另外一種不需要緩存賬戶和密碼的登錄狀態(tài)驗(yàn)證方式,本文給大家介紹了用Flask實(shí)現(xiàn)token登錄校驗(yàn)的解決方案,需要的朋友可以參考下2024-03-03

