99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ArduPy:當Arduino遇見Python

陳存樓 ? 來源:bluepink ? 作者:bluepink ? 2022-12-30 09:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Python 最近的成功在很大程度上取決于簡單性和不斷發(fā)展以應對新挑戰(zhàn)的能力。Python 不斷開拓新領域,從桌面和 Web 應用程序到機器學習和數(shù)據(jù)科學應用程序。最近,針對嵌入式系統(tǒng)開發(fā)發(fā)布了一種奇怪的編程語言組合。這個新工具套件被稱為 ArduPy(Arduino 和 Python 的組合),旨在通過提供一種將流行的 Arduino 庫轉換為 MicroPython 庫的方法來利用 Arduino 嵌入式生態(tài)系統(tǒng)的流行。

ArduPy 由兩個主要組件組成。首先是 ArduPy Core,它充當支持兼容開發(fā)板上基本硬件操作的接口因為 ArduPy 利用了 MicroPython,它利用了通用的 Arduino API,所以可以毫不費力地完成對新板的支持。第二個組件是 Arduino 庫 Python 包裝器。這需要一個用于外部傳感器或執(zhí)行器的 Arduino 庫,并將其轉換為與 MicroPython 兼容的代碼。無需從頭開始,這絕對可以幫助您使用新傳感器快速啟動原型設計。鑒于可用的 Arduino 庫過多,此功能對于 MicroPython 社區(qū)來說是一個難得的機會,可以進一步“滑行”到新的嵌入式系統(tǒng)項目中。

入門

要開始使用 ArduPy,首先要做的是下載并安裝最新版本的 Python。Python 適用于 Windows、Mac 和 Linux。最新版本可以在這里下載。在您的環(huán)境中安裝 Python 后,就可以下載 ArduPy 集成平臺 (AIP)。AIP 是一個命令行實用程序,允許開發(fā)人員快速輕松地與任何 ArduPy 兼容板進行交互。要下載并安裝 AIP,請打開命令行界面并發(fā)出以下命令:

#pip3 install ardupy-aip

最后,是時候下載并安裝 Visual Studio Code 和 Seeed ArduPy IDE 擴展了。可在此處下載適用于 Windows、Mac 和 Linux 的 Visual Studio Code。安裝后,在擴展市場中搜索Seeed ArduPy IDE。在搜索結果中選擇后,單擊“安裝”,插件將添加到 Visual Studio。現(xiàn)在您已準備好利用 ArduPy 工具集的所有功能。

為什么選擇 ArduPy?

那么,與 Arduino 或直接 MicroPython 相比,ArduPy 工具集到底有什么優(yōu)勢呢?根據(jù) ArduPy 的開發(fā)人員 Seeed 的說法,有幾個優(yōu)勢應該會吸引制造商和專業(yè)人士,包括:

  • 在資源有限的嵌入式設備上體驗功能豐富的 Python3 編程環(huán)境。
  • 由于使用了無處不在的 Visual Studio Code IDE,入門變得快速而簡單。ArduPy 的安裝和配置既快速又簡單。
  • 支持簡單文件系統(tǒng),非常適合使用 HTML、CSS 和 JavaScript 文件提供簡單 Web 服務的 IoT 設備。
  • 支持單板復位時自動運行boot.py。
  • 支持串行終端交互 (REPL),使原型制作變得快速和簡單。無需上傳新固件即可測試想法。
  • 訪問豐富的第三方庫,由于 Arduino 庫 Python 包裝器,這些庫可以與 MicroPython 兼容。
  • 通過 AIP 自定義您自己的 ArduPy 固件,而無需了解底層 ArduPy 工具集的任何細節(jié)。

第一個 ArduPy 項目

首先,使用 USB 數(shù)據(jù)線將兼容的開發(fā)板插入您的計算機。推薦之一是 Seeed Wio Terminal 開發(fā)板,可從 Mouser 購買;點擊這里Wio 終端是一個方便但價格低廉的微控制器開發(fā)平臺,具有豐富的實用功能,包括 LCD 顯示屏、2.4GHz/5GHz Wi-Fi (802.11 a/b/g/n)、藍牙 LE 5.0、IMU、麥克風、蜂鳴器、microSD卡、可配置按鈕、光傳感器、五向開關、紅外發(fā)射器(IR 940 nm),并且已準備好加密身份驗證。它由 Microchip ATSAMD51P19 Arm ? Cortex ? -M4F 內核提供動力,運行頻率為 120MHz(升壓至 200MHz)以及 4MB 外部閃存和 19 KB RAM

將 Wio(或任何 ArduPy 兼容板)插入計算機后,打開命令行界面,并發(fā)出以下命令:

#aip board

這將列出當前連接到您的計算機的所有 ArduPy 兼容板。如果您忘記了此命令或要了解如何使用 AIP,請發(fā)出幫助命令:

#aip help

help 命令是通過 ArduPy 命令行工具了解一切可能的首選命令。通過 AIP 可用的一些附加命令包括:

  • build:構建 ArduPy 固件包含使用已安裝的庫
  • list:列出已安裝的 ArduPy 庫
  • install : 安裝 Arduino 庫與 ArduPy 綁定
  • uninstall : 卸載 ArduPy 庫
  • flash:將固件閃存到 ArduPy 板
  • shell:集成 mpfshell,用于與 ArduPy 板進行實時交互

現(xiàn)在工具已在開發(fā)計算機上設置好,是時候將 ArduPy 固件安裝到開發(fā)板上了。每塊板都有一個必須下載和安裝的唯一 UF2 ArduPy 固件文件。對于 Wio 終端,可以在此處下載該文件。接下來,必須將 Wio 終端插入開發(fā)計算機并進入引導加載程序模式。這可以通過快速滑動電源開關兩次來完成。如果成功,一個藍色的 LED 將開始閃爍,一個名為ARDUPY的 USB 閃存驅動器將出現(xiàn)在桌面上。

雙擊ARDUPY文件夾將顯示一個名為main.py的文件,其中包含每次更新文件時自動運行的默認 Python 腳本文件。但是,如果您希望該腳本在每次電路板啟動時運行,請在您的桌面上創(chuàng)建一個名為boot.py的文件。讓我們添加示例代碼來使板載 LED 閃爍。使用Visual Studio Code編輯boot.py文件,添加如下代碼:

import time

import board

from digitalio import DigitalInOut, Direction

led = DigitalInOut(board.D13)

led.direction = Direction.OUTPUT

while True:

led.value = True

print("LED ON")

time.sleep(1)

led.value = False

print("LED OFF")

time.sleep(1)

保存boot.py文件。接下來,從命令行界面發(fā)出以下命令:

# aip shell -n -c "put //boot.py"

拔下 Wio 終端并重新插入,代碼應該會自動開始運行。你的第一個 ArduPy 項目已經完成!

試一試 ArduPy

ArduPy 仍然相對較新,并且正在迅速擴展以包括新的開發(fā)板和 Python 庫。為了保持 ArduPy 固件的輕量級,它只包含 MicroPython 庫的一個子集,包括時間、引腳、DAC、ADC、PWM 和 LCD。但它很容易擴展以滿足任何特定應用程序的特定需求。此外,如果您對預先構建的庫不滿意,ArduPy 提供了編寫您自己的 ArduPy 庫并將它們實施到 ArduoPy 項目中的方法。

對于那些希望在學習嵌入式開發(fā)的同時利用他們的 Python 編程經驗的人來說,ArduPy 是一種巧妙的方式。對于那些一直在 Arduino 生態(tài)系統(tǒng)中嶄露頭角的人來說,ArduPy 是學習 Python 編程語言的好方法,它可以在嵌入式環(huán)境之外發(fā)揮作用。

你試過 ArduPy 了嗎?在評論中讓我們知道您使用 ArduPy 工具構建了哪些項目。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4827

    瀏覽量

    86795
  • Arduino
    +關注

    關注

    190

    文章

    6498

    瀏覽量

    192230
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【Milk-V Duo S 開發(fā)板免費體驗】Milk-V DuoS之使用Arduino開發(fā)小核

    ; Blink 測試程序,該程序功能實現(xiàn)的是 Arduino 設備板載 LED 閃爍,DuoS 中也是支持的。 注: 在編譯下載代碼之前,請確保您的計算機中安裝了 python 環(huán)境,并正確的配置了
    發(fā)表于 07-17 21:01

    基礎篇3:掌握Python中的條件語句與循環(huán)

    Python編程語言中,條件語句和循環(huán)是構成復雜邏輯和數(shù)據(jù)處理的基石。本篇基礎教程將幫助您深入了解Python中的條件語句和循環(huán)結構,讓您能夠更好地控制程序流程。 條件語句 條件語句允許程序根據(jù)
    發(fā)表于 07-03 16:13

    智能 “眼睛” 遇見制造業(yè),質檢迎來新革命

    智能視覺和多模態(tài)數(shù)據(jù)融合讓微小瑕疵無所遁形,動態(tài)學習和預測性質量干預讓檢測更準確,新型復合材料應用下,質檢系統(tǒng)學習能力強。
    的頭像 發(fā)表于 04-28 10:19 ?258次閱讀
    <b class='flag-5'>當</b>智能 “眼睛” <b class='flag-5'>遇見</b>制造業(yè),質檢迎來新革命

    4G儀表&quot;遇見&quot;EIOT

    安科瑞銷售工程師馮東鋮 ?17821170233 4G儀表"遇見"EIOT:解鎖工業(yè)物聯(lián)網時代的云端智控新姿勢在數(shù)字化轉型浪潮中,您是否還在為能源數(shù)據(jù)采集而煩惱?遍布廠區(qū)的儀表數(shù)據(jù)如何實時"開口說
    的頭像 發(fā)表于 04-15 17:10 ?222次閱讀
    <b class='flag-5'>當</b>4G儀表&quot;<b class='flag-5'>遇見</b>&quot;EIOT

    零基礎入門:如何在樹莓派上編寫和運行Python程序?

    在這篇文章中,我將為你簡要介紹Python程序是什么、Python程序可以用來做什么,以及如何在RaspberryPi上編寫和運行一個簡單的Python程序。什么是Python程序?
    的頭像 發(fā)表于 03-25 09:27 ?762次閱讀
    零基礎入門:如何在樹莓派上編寫和運行<b class='flag-5'>Python</b>程序?

    安防攝像頭遇見DeepSeek

    本文介紹了DeepSeek,一種基于觀瀾大模型技術體系的安防+AI產品。AI大模型在安防領域的落地面臨機遇和阻礙,包括高像素、AI大模型、4G、低功耗、毫米波雷達等技術的融合。
    的頭像 發(fā)表于 03-05 09:16 ?417次閱讀

    Python繪圖Matplotlib快速參考手冊

    ?PYTHON
    發(fā)表于 02-07 14:04 ?0次下載

    使用Python實現(xiàn)xgboost教程

    使用Python實現(xiàn)XGBoost模型通常涉及以下幾個步驟:數(shù)據(jù)準備、模型訓練、模型評估和模型預測。以下是一個詳細的教程,指導你如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發(fā)表于 01-19 11:21 ?1383次閱讀

    基于Arduino的串口通信項目

    基于Arduino的串口通信項目涉及多個方面,包括硬件連接、軟件編程、串口參數(shù)配置等。 一、硬件準備 Arduino開發(fā)板 :確保你有一塊Arduino開發(fā)板,如Arduino Uno
    的頭像 發(fā)表于 11-22 09:24 ?2200次閱讀

    如何使用Arduino實現(xiàn)CAN總線通信

    CAN總線(Controller Area Network)是一種多主控制的串行通信協(xié)議,廣泛應用于汽車電子、工業(yè)自動化等領域。它以其高可靠性、實時性和靈活性而受到青睞。Arduino作為一個
    的頭像 發(fā)表于 11-12 10:09 ?2736次閱讀

    使用Python進行圖像處理

    下面是一個關于使用Python在幾行代碼中分析城市輪廓線的快速教程。
    的頭像 發(fā)表于 11-07 10:14 ?591次閱讀
    使用<b class='flag-5'>Python</b>進行圖像處理

    如何幫助孩子高效學習Python:開源硬件實踐是最優(yōu)選擇

    顯著提升孩子的學習興趣和對Python原理的理解。本文將探討為何使用Raspberry Pi(樹莓派)或Unihiker(行空板)等開源硬件是孩子們掌握Python的最佳途徑。 讓孩子們在Python學習中更加互動
    的頭像 發(fā)表于 09-06 09:49 ?679次閱讀

    使用Python進行Ping測試

    )請求包,然后等待目標主機返回響應包,從而測量網絡的延遲和丟包情況。隨著Python編程語言的廣泛應用,越來越多的網絡工程師開始使用Python進行自動化網絡測試和管理任務。本篇文章將詳細介紹如何使用Python進行Ping測試
    的頭像 發(fā)表于 08-12 17:56 ?1015次閱讀
    使用<b class='flag-5'>Python</b>進行Ping測試

    pytorch和python的關系是什么

    在當今的人工智能領域,Python已經成為了最受歡迎的編程語言之一。Python的易學易用、豐富的庫和框架以及強大的社區(qū)支持,使其成為了數(shù)據(jù)科學、機器學習和深度學習等領域的首選語言。而在深度學習領域
    的頭像 發(fā)表于 08-01 15:27 ?3285次閱讀

    Python建模算法與應用

    Python作為一種功能強大、免費、開源且面向對象的編程語言,在科學計算、數(shù)學建模、數(shù)據(jù)分析等領域展現(xiàn)出了卓越的性能。其簡潔的語法、對動態(tài)輸入的支持以及解釋性語言的本質,使得Python在多個平臺
    的頭像 發(fā)表于 07-24 10:41 ?1274次閱讀