加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

200行Python代碼實(shí)現(xiàn)串口調(diào)試助手之環(huán)境搭建

2020/01/11
194
閱讀需 9 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

在寫 pzh-py-com 時(shí)需要先搭好開發(fā)和調(diào)試環(huán)境,下表列出了開發(fā)過程中會(huì)用到的所有軟件 / 工具包:

一、涉及工具列表

?

二、開發(fā)環(huán)境搭建(Python + pySerial + wxPython + wxFormBuilder)

pzh-py-com 工具是一個(gè)完全基于 Python 語言開發(fā)的應(yīng)用軟件,首先安裝好 Python 2.7.14,痞子衡的安裝目錄為 C:tools_mcuPython27,安裝完成后確保系統(tǒng)環(huán)境變量里包括該路徑(C:tools_mcuPython27),因?yàn)樵撀窂较掳?python.exe,后續(xù) python 命令需調(diào)用這個(gè) python.exe 完成的。
  

在 C:tools_mcuPython27Scripts 目錄下默認(rèn)有 easy_install.exe,這是 PEAK(Python Enterprise Application Kit)開發(fā)的 setuptools 包里的工具,這個(gè)工具可以用來完成安裝 python 第三方模塊的工作。我們需要借助 easy_install.exe 來安裝 pip 工具:

PS C:tools_mcuPython27Scripts> .easy_install.exe pip

Searching for pip
Best match: pip 9.0.1
Adding pip 9.0.1 to easy-install.pth file
...
Finished processing dependencies for pip
PS C:tools_mcuPython27Scripts> python -m pip install --upgrade pip

Collecting pip
...
Successfully installed pip-18.0
  

pip 是 Python 的包管理工具,提供了對(duì) Python 包的查找、下載、安裝、卸載的功能。安裝好 pip 工具之后,可以看到 C:tools_mcuPython27Scripts 目錄下多了 pip.exe,為方便后續(xù)使用 pip 來安裝其他 Python 包,確保系統(tǒng)環(huán)境變量里包括 pip 路徑(C:tools_mcuPython27Scripts)。我們可以借助 pip 來安裝 pySerial 和 wxPython 包:

PS C:tools_mcuPython27Scripts> .pip.exe install pyserial

Collecting pyserial
...
Successfully installed pyserial-3.4
PS C:tools_mcuPython27Scripts> .pip.exe install wxPython

Collecting wxPython
...
Successfully installed PyPubSub-4.0.0 six-1.11.0 typing-3.6.4 wxPython-4.0.3
  

有了 pySerial 便可以訪問 Serial Port,有了 wxPython 便可以設(shè)計(jì) GUI。
  

單純使用 wxPython 設(shè)計(jì) pzh-py-com GUI 界面時(shí)僅能是手工寫代碼布局,手工布局的界面創(chuàng)建和修改起來都比較繁瑣,我們需要一款可視化的界面設(shè)計(jì)工具,痞子衡選擇的是 wxFormBuilder,從其 github 官網(wǎng)下載安裝包并安裝到 C:tools_mcuwxFormBuilder 目錄下。安裝完成打開軟件便可在 Designer 里盡情創(chuàng)作界面,創(chuàng)作完成后點(diǎn)擊"Python"便可看到 Python GUI 源代碼,這個(gè) GUI 源代碼后續(xù)直接復(fù)制到 JaysPyCOM 工程里使用。

  

至此 pzh-py-com 工具開發(fā)的 Python 基礎(chǔ)環(huán)境便搭好了。

三、測(cè)試環(huán)境搭建(PyCharm + vspd + sscom)

在開發(fā) pzh-py-com 工具過程中免不了要調(diào)試 Python 代碼,所以我們還需要一個(gè) Python IDE,痞子衡選擇的是 PyCharm,在 jetbrains 官網(wǎng)下載 PyCharm community 免費(fèi)版并安裝,安裝完成后打開 PyCharm 并創(chuàng)建名為 pzh-py-com 空工程,成功創(chuàng)建后會(huì)看到 pzh-py-com 目錄下自動(dòng)生成一個(gè) .idea 的文件夾,該文件夾是用于 pycharm 管理項(xiàng)目。

  

有了 PyCharm 環(huán)境,便可以開始寫 pzh-py-com 代碼,代碼在開發(fā)過程中,需要結(jié)合 Serial Port 進(jìn)行聯(lián)合調(diào)試,如果手里沒有硬件串口設(shè)備,可以使用虛擬串口設(shè)備,vspd 便是著名的虛擬串口驅(qū)動(dòng),從 eltima 官網(wǎng)下載 vspd 標(biāo)準(zhǔn)版并安裝,安裝完成后打開 vspd 可看到如下界面,COM10 和 COM11(COM 號(hào)是自定義的)便是虛擬出來的串口設(shè)備號(hào),并且已經(jīng)完成了對(duì)接。

  

虛擬 Serial Port 設(shè)備已經(jīng)有了并且對(duì)接了,最后還需要一個(gè)成熟的串口調(diào)試助手,作為串口通訊的另一方,痞子衡選取的是非常經(jīng)典的 sscom,從大蝦官網(wǎng)下載 sscom 包,sscom 是個(gè)免安裝的工具,可以直接打開使用,設(shè)置 sscom 使用 COM11,將來 pzh-py-com 使用 COM10。

四、發(fā)布環(huán)境搭建(PyInstaller)

pzh-py-com 工具開發(fā)和調(diào)試工作都完成之后,我們希望將她打包成一個(gè)獨(dú)立的可執(zhí)行文件(即運(yùn)行設(shè)備不需要安裝 Python+pySerial+wxPython),PyInstaller 可以幫助我們完成打包工作,所以我們需要利用 pip 工具安裝 PyInstaller 包:

PS C:tools_mcuPython27Scripts> .pip.exe install pyinstaller

Collecting pyinstaller
...
Successfully installed altgraph-0.16.1 dis3-0.1.2 future-0.16.0 macholib-1.10 pefile-2018.8.8 pyinstaller-3.3.1 pypiwin32-223 pywin32-223
  

PyInstaller 包安裝好之后,環(huán)境搭建便大功告成

  

至此,串口調(diào)試工具 pzh-py-com 誕生之環(huán)境搭建痞子衡便介紹完畢了

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

碩士畢業(yè)于蘇州大學(xué)電子信息學(xué)院,目前就職于恩智浦(NXP)半導(dǎo)體MCU系統(tǒng)部門,擔(dān)任嵌入式系統(tǒng)應(yīng)用工程師。痞子衡會(huì)定期分享嵌入式相關(guān)文章