一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ArduPy:當(dāng)Arduino遇見Python

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

掃碼添加小助手

加入工程師交流群

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

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

入門

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

#pip3 install ardupy-aip

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

為什么選擇 ArduPy?

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

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

第一個(gè) ArduPy 項(xiàng)目

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

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

#aip board

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

#aip help

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

  • build:構(gòu)建 ArduPy 固件包含使用已安裝的庫(kù)
  • list:列出已安裝的 ArduPy 庫(kù)
  • install : 安裝 Arduino 庫(kù)與 ArduPy 綁定
  • uninstall : 卸載 ArduPy 庫(kù)
  • flash:將固件閃存到 ArduPy 板
  • shell:集成 mpfshell,用于與 ArduPy 板進(jìn)行實(shí)時(shí)交互

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

雙擊ARDUPY文件夾將顯示一個(gè)名為main.py的文件,其中包含每次更新文件時(shí)自動(dòng)運(yùn)行的默認(rèn) Python 腳本文件。但是,如果您希望該腳本在每次電路板啟動(dòng)時(shí)運(yùn)行,請(qǐng)在您的桌面上創(chuàng)建一個(gè)名為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 終端并重新插入,代碼應(yīng)該會(huì)自動(dòng)開始運(yùn)行。你的第一個(gè) ArduPy 項(xiàng)目已經(jīng)完成!

試一試 ArduPy

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

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

你試過 ArduPy 了嗎?在評(píng)論中讓我們知道您使用 ArduPy 工具構(gòu)建了哪些項(xiàng)目。

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

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86773
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6498

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

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

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

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

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

    當(dāng)智能 “眼睛” 遇見制造業(yè),質(zhì)檢迎來新革命

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

    當(dāng)4G儀表&quot;遇見&quot;EIOT

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

    零基礎(chǔ)入門:如何在樹莓派上編寫和運(yùn)行Python程序?

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

    當(dāng)安防攝像頭遇見DeepSeek

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

    Python繪圖Matplotlib快速參考手冊(cè)

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

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

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

    基于Arduino的串口通信項(xiàng)目

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

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

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

    使用Python進(jìn)行圖像處理

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

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

    顯著提升孩子的學(xué)習(xí)興趣和對(duì)Python原理的理解。本文將探討為何使用Raspberry Pi(樹莓派)或Unihiker(行空板)等開源硬件是孩子們掌握Python的最佳途徑。 讓孩子們?cè)?b class='flag-5'>Python學(xué)習(xí)中更加互動(dòng)
    的頭像 發(fā)表于 09-06 09:49 ?677次閱讀

    使用Python進(jìn)行Ping測(cè)試

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

    pytorch和python的關(guān)系是什么

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

    Python建模算法與應(yīng)用

    Python作為一種功能強(qiáng)大、免費(fèi)、開源且面向?qū)ο蟮木幊陶Z(yǔ)言,在科學(xué)計(jì)算、數(shù)學(xué)建模、數(shù)據(jù)分析等領(lǐng)域展現(xiàn)出了卓越的性能。其簡(jiǎn)潔的語(yǔ)法、對(duì)動(dòng)態(tài)輸入的支持以及解釋性語(yǔ)言的本質(zhì),使得Python在多個(gè)平臺(tái)
    的頭像 發(fā)表于 07-24 10:41 ?1274次閱讀