欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

實現(xiàn)Python與STM32通信方式

 更新時間:2019年12月18日 16:14:56   作者:BelingBeling  
今天小編就為大家分享一篇實現(xiàn)Python與STM32通信方式。具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

斷斷續(xù)續(xù)學了幾周Stm32后,突然想實現(xiàn)上位機和下位機的通信,恰好自己學過一點python,便想通過python實現(xiàn)通信.

在網(wǎng)上看見python庫pyserial可以實現(xiàn)此功能,便去官網(wǎng)找了一下 ,附上官網(wǎng)pyserial檔鏈 接:https://pyserial.readthedocs.io/en/latest/pyserial.html#overview

首先在windows的CMD命令管理器中安裝pyserial,直接在CMD中鍵入如下字符

pip install pyserial

再將Stm32用USB連接到電腦,打開設備管理器顯示端口為COM14,然后在python中寫下

import serial
 
#連接串口
serial = serial.Serial('COM14',115200,timeout=2) #連接COM14,波特率位115200
if serial.isOpen():
 print ('串口已打開')
else:
 print ('串口未打開')
 
 
 
#關(guān)閉串口
serial.close()
 
if serial.isOpen():
 print ('串口未關(guān)閉')
else:
 print ('串口已關(guān)閉')

運行后出現(xiàn)下圖,記住在代碼要在最后要用 serial.close() 函數(shù)去關(guān)閉串口,否則下次會打不開串口,會報錯.

之后我們在Stm32的代碼中寫入如下示例代碼,模板來自正點原子的示例代碼:

while(1)
 {
 if (USART_RX_STA&0x8000)
 {
 len = USART_RX_STA&0x3FFF;
 for (t=0;t<len;t++)
 {
 USART_SendData(USART1,USART_RX_BUF[t]);
 while (USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
 }
 USART_RX_STA=0;
 }
 else
 { 
 times++;
 if(times%30==0)LED0=!LED0;//閃爍LED,提示系統(tǒng)正在運行.
 delay_ms(10); 
 }
 }

該32的代碼實現(xiàn)的功能為USART接受數(shù)據(jù)并返還給發(fā)送數(shù)據(jù)方.

在python編譯器中寫下數(shù)據(jù)接收與發(fā)送的完整代碼:

import serial
 
#連接串口
serial = serial.Serial('COM14',115200,timeout=2)
if serial.isOpen():
 print ('串口已打開')
 
 data = b'Beking\r\n' #發(fā)送的數(shù)據(jù)
 serial.write(data)  #串口寫數(shù)據(jù)
 print ('You Send Data:',data)
 
 while True:
 data = serial.read(20) #串口讀20位數(shù)據(jù)
 if data != b'':
 break
 print ('receive data is :',data) 
 
else:
 print ('串口未打開')
 
 
 
#關(guān)閉串口
serial.close()
 
if serial.isOpen():
 print ('串口未關(guān)閉')
else:
 print ('串口已關(guān)閉')

運行結(jié)果為下圖,發(fā)送的數(shù)據(jù)為 b'Beking\r\n' 接收數(shù)據(jù)為 b'Beking' .( 在正點原子的數(shù)據(jù)接受數(shù)據(jù)中要有\(zhòng)r\n字符,否則會接收不到(可以在代碼中更改))

如此就可以實現(xiàn)python與Stm32的簡單數(shù)據(jù)接發(fā),要是想實現(xiàn)更為復雜,更為實用的上位機與下位機通信,可以參考文首給出的pyserial文檔鏈接.

以上這篇實現(xiàn)Python與STM32通信方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python搭建服務器實現(xiàn)兩個Android客戶端間收發(fā)消息

    python搭建服務器實現(xiàn)兩個Android客戶端間收發(fā)消息

    這篇文章主要為大家詳細介紹了python搭建服務器實現(xiàn)兩個Android客戶端間收發(fā)消息,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Pycharm最新激活碼2019(推薦)

    Pycharm最新激活碼2019(推薦)

    這篇文章主要介紹了Pycharm最新激活碼2019,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • TensorFlow安裝及jupyter notebook配置方法

    TensorFlow安裝及jupyter notebook配置方法

    下面小編就為大家?guī)硪黄猅ensorFlow安裝及jupyter notebook配置方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • 在arcgis使用python腳本進行字段計算時是如何解決中文問題的

    在arcgis使用python腳本進行字段計算時是如何解決中文問題的

    這篇文章主要介紹了在arcgis使用python腳本進行字段計算時是如何解決中文問題的,需要的朋友可以參考下
    2015-10-10
  • python中pip無法正確安裝或路徑出錯的解決方案

    python中pip無法正確安裝或路徑出錯的解決方案

    這篇文章主要介紹了python中pip無法正確安裝或路徑出錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python基于stuck實現(xiàn)scoket文件傳輸

    Python基于stuck實現(xiàn)scoket文件傳輸

    這篇文章主要介紹了Python基于stuck實現(xiàn)scoket文件傳輸,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • python把ipynb文件轉(zhuǎn)換成pdf文件過程詳解

    python把ipynb文件轉(zhuǎn)換成pdf文件過程詳解

    這篇文章主要介紹了用python把ipynb文件轉(zhuǎn)換成pdf文件過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • 超詳細注釋之OpenCV制作圖像Mask

    超詳細注釋之OpenCV制作圖像Mask

    這篇文章主要介紹了OpenCV制作圖像Mask,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • Python hashlib模塊加密過程解析

    Python hashlib模塊加密過程解析

    這篇文章主要介紹了Python hashlib模塊加密過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • Python?設計模式中命令模式

    Python?設計模式中命令模式

    這篇文章主要介紹了Python?設計模式中的命令模式,命令模式的目的是解耦調(diào)用操作的對象和提供實現(xiàn)的對象,下文介紹具有一定參考價值,需要的小伙伴可以參考一下
    2022-02-02

最新評論