色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

如何使用Python和PinPong庫控制Arduino

話說科技 ? 2023-10-13 10:59 ? 次閱讀

Python程序員編程Arduino時面臨的第一個挑戰(zhàn)是語言不同。Arduino IDE使用的是受C和C++啟發(fā)的語言。實際上,像Arduino這樣的平臺與Python非常搭配,特別適用于需要與傳感器和其他物理設(shè)備集成的應(yīng)用程序。如果您已經(jīng)掌握了Python的基礎(chǔ)知識,那么您可以通過使用Python來控制Arduino來入門。本文目的主要是向您展示如何使用PinPong庫通過Python與Arduino進(jìn)行通信,以幫助您開發(fā)自己的電子項目。

一、為什么是PinPong庫?

PinPong庫是一個用于控制開源硬件開發(fā)板的Python庫。它基于Firmata協(xié)議,并兼容MicroPython語法。使用PinPong庫,您可以使用Python代碼控制各種常見的開源硬件設(shè)備。其基本原理是將特定的固件燒錄到硬件板上,通過串行通信使板與計算機(jī)之間進(jìn)行通信以執(zhí)行各種命令。PinPong庫簡化了與 Arduino 板上的數(shù)字引腳和模擬引腳進(jìn)行交互的過程。通過 PinPong,您可以使用 Python 代碼控制 Arduino 的輸入和輸出,包括讀取傳感器數(shù)據(jù)、控制執(zhí)行器等。

“PinPong”的名稱源自“Pin”和“Pong”,其中“Pin”指的是硬件板上的引腳,而“PinPong”聽起來像“乒乓球”,代表信號的來回傳遞的特性。 PinPong庫的設(shè)計旨在使開發(fā)人員在開發(fā)過程中不受特定硬件模型的限制,使他們能夠?qū)W⒂谲浖崿F(xiàn)。即使您最初使用Arduino開發(fā)程序,也可以通過修改硬件參數(shù)輕松切換到另一個兼容的開發(fā)板,如PinPong板。

二、PinPong庫的主要特點

高度靈活:支持的Arduino板包括Uno、Leonardo、Mega2560、ESP32板(如HandPy)、micro:bit、Unihiker(行空板)等。它還支持50多種傳感器,并將逐步支持其他開發(fā)板和擴(kuò)展庫。

與MicroPython兼容:MicroPython是Python編程語言的一個變種,以其簡單和易讀性而廣為人知和使用。通過與MicroPython兼容,PinPong簡化了開發(fā)過程,使開發(fā)人員能夠利用他們現(xiàn)有的Python知識來編程和控制硬件。

三、如何安裝PinPong庫

在安裝PinPong庫之前,請確保計算機(jī)上已安裝Python 3。下面分別介紹如何在Windows、Linux、Mac OS安裝PinPong庫。

在Windows上安裝PinPong庫

Python 3下載完成后,按照提示進(jìn)行安裝。注意安裝過程的最后一步,確保選中“Add to PATH”選項,將Python添加到系統(tǒng)的環(huán)境變量中。

打開命令提示符。使用Win+R快捷鍵,輸入“cmd”,然后按Enter鍵。

安裝PinPong庫。在命令提示符窗口中輸入“pip install pinpong”,等待片刻,直到安裝完成。

信息查詢。要獲取當(dāng)前版本信息、官方文檔網(wǎng)站、庫列表和端口號,請在“幫助命令”提示中輸入“pingpong”。

在Linux上安裝PinPong庫

安裝了Python 3之后,您可以通過在終端中輸入“sudo pip install pinpong”來進(jìn)行PinPong安裝。

在Mac OS上安裝PinPong庫

安裝了Python 3之后,您可以按照以下步驟安裝PinPong庫:

打開任何Finder窗口,按下Shift+Command+U。雙擊“終端”應(yīng)用程序。在終端中,輸入命令“sudo pip install pinpong”來安裝PinPong庫。

四、重要的PinPong庫示例

重要的PinPong庫示例對于初學(xué)者來說是必不可少的,包括基礎(chǔ)、常用和擴(kuò)展庫示例。這些示例可以幫助學(xué)習(xí)者理解和學(xué)習(xí)如何利用這些庫來快速開發(fā)與PinPong相關(guān)的應(yīng)用程序或項目。

常用PinPong庫示例:

常用PinPong庫示例可以幫助您快速驗證模塊的使用方法。將代碼復(fù)制粘貼到Python編輯器中,并據(jù)使用的板型修改板的初始化配置?;編焓纠械哪K是通過Board庫導(dǎo)入的。

示例:LED閃爍

將Arduino主控板連接到Windows或Linux計算機(jī)??刂艫rduino UNO板上的內(nèi)置LED每秒閃爍一次

除了如上的基礎(chǔ)PinPong庫示例可用,演示如何使用按鈕控制Arduino UNO板上的內(nèi)置LED,改變LED的亮度,并測試模擬引腳中斷功能。

實用的PinPong庫示例:

常見庫示例中的模塊是通過board庫導(dǎo)入的。

示例:控制舵機(jī)電機(jī)

此之外,PinPong庫中還有其他實用示例。這些示例涵蓋了控制蜂鳴器進(jìn)行聲音生成,從超聲波傳感器讀取數(shù)據(jù),從DHT傳感器獲取溫度和濕度讀數(shù),以及管理WS2812單線RGB LED燈。

擴(kuò)展的PinPong庫示例

擴(kuò)展庫示例中的模塊是通過libs庫導(dǎo)入的。您可以使用終端輸入“pinpong”來查詢支持的列表和使用方法。所有示例程序代碼都可以在安裝目錄下的“examples”文件夾中找到。

示例:顏色識別

將TCS34725顏色傳感器連接到Arduino板的I2C引腳(SCL和SDA),該Arduino板連接到Windows或Linux計算機(jī)。從I2C TCS34725顏色傳感器中獲取顏色值。

其他擴(kuò)展的PinPong庫示例包括從I2C TCS34725顏色傳感器、I2C超聲波傳感器(URM09)、I2C MLX90614紅外溫度傳感器以及使用I2C讀取卡片信息的NFC模塊等讀取值的示例。

使用PinPong庫通過Python進(jìn)行的Arduino項目

自動澆水系統(tǒng)

為了確保植物的健康生長,定期澆水是必要的。然而,我們經(jīng)常會忘記給植物澆水,這可能導(dǎo)致植物枯萎。為了避免這樣的問題,我們可以設(shè)計一個自動澆水系統(tǒng)。

自動澆水系統(tǒng)的第一步: 驅(qū)動繼電器

硬件設(shè)置:

1、控制器:Arduino UNO,IO傳感器擴(kuò)展板V7.1/

2、模塊:繼電器模塊/

3、連接:Type A到B的USB電纜

4、將繼電器連接到數(shù)字引腳13

開始編碼:

繼電器通過切換數(shù)字引腳的高低狀態(tài)來控制。我們可以參考基礎(chǔ)庫的官方文檔中的“Digital Output”示例。運行這個程序會使繼電器發(fā)出咔噠聲,隨著LED的閃爍而切換。

自動澆水系統(tǒng)的第二步:使用繼電器控制水泵

為了實現(xiàn)澆水功能,我們需要使用一個水泵。然而,大多數(shù)水泵的工作電壓為12V,而Arduino UNO的輸出電壓為5V,這對直接驅(qū)動水泵來說是不足夠的。在這種情況下,我們需要使用繼電器來控制水泵。

硬件設(shè)置

1、控制器:Arduino UNO,IO傳感器擴(kuò)展板V7.1/

2、模塊:繼電器模塊,水泵,12V電源

3、連接:Type A到B的USB電纜

4、將繼電器連接到數(shù)字引腳13

5、將水泵連接到繼電器

開始編碼

您可以使用time模塊的time.strftime函數(shù)來確定時間。在示例中,它每天在15:30:10設(shè)置“Watering”。在實際使用中,您可以相應(yīng)地添加繼電器控制功能。

添加繼電器以實現(xiàn)每日定時澆水功能。

關(guān)于更多pinpong庫的介紹,您可以查看pinpong官方文檔。

總結(jié)

PinPong庫為Python開發(fā)者提供了一種便捷的方式來控制Arduino板。它簡化了與Arduino的通信過程,使得使用Python編程語言控制Arduino變得更加容易和靈活。無論是初學(xué)者還是有經(jīng)驗的開發(fā)者,PinPong庫都是一個有價值的工具,用于構(gòu)建各種物聯(lián)網(wǎng)嵌入式系統(tǒng)項目。因此,如果你是一名Python程序員,希望探索Arduino世界,本教程為你提供了一個很好的起點。

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

    關(guān)注

    88

    文章

    3614

    瀏覽量

    93686
  • IDE
    IDE
    +關(guān)注

    關(guān)注

    0

    文章

    338

    瀏覽量

    46737
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1942

    瀏覽量

    34707
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4792

    瀏覽量

    84627
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6468

    瀏覽量

    186951
收藏 人收藏

    評論

    相關(guān)推薦

    如何使用Raspberry pi和Python控制Arduino

    如果你同時擁有Arduino和Raspberry pi板,本文將向您展示如何使用Raspberry pi和Python控制Arduino。
    的頭像 發(fā)表于 11-08 16:51 ?4446次閱讀
    如何使用Raspberry pi和<b class='flag-5'>Python</b>來<b class='flag-5'>控制</b><b class='flag-5'>Arduino</b>

    什么是轉(zhuǎn)向控制?如何去編寫轉(zhuǎn)向控制Arduino代碼與?

    什么是轉(zhuǎn)向控制?如何去編寫轉(zhuǎn)向控制Arduino代碼與?什么是轉(zhuǎn)速控制?如何去編寫轉(zhuǎn)速控制
    發(fā)表于 06-28 06:08

    怎樣使用PySerial接口PythonArduino

    您還可以更改Python程序第3行和Arduino程序的第2行中的波特率,只要它們保持不變即可。程序運行后,它將打印出大多數(shù)ASCII字符。首先將它們發(fā)送到Arduino,然后將其發(fā)送回Pyt
    的頭像 發(fā)表于 11-04 11:30 ?4153次閱讀
    怎樣使用PySerial接口<b class='flag-5'>Python</b>和<b class='flag-5'>Arduino</b>

    怎樣使用Python編程和控制Arduino

    該項目是在PythonArduino板之間進(jìn)行通信的準(zhǔn)系統(tǒng)。這種方法與通常的將腳本上傳到Arduino本身的工作流程完全不同,但是它為使用該平臺開辟了一種全新的方式,尤其是在您喜歡Pytho
    的頭像 發(fā)表于 11-28 17:52 ?1.7w次閱讀

    ADM1266 Python

    ADM1266 Python
    發(fā)表于 03-23 15:47 ?1次下載
    ADM1266 <b class='flag-5'>Python</b><b class='flag-5'>庫</b>

    使用Open cv python(手勢)和arduino控制Led

    電子發(fā)燒友網(wǎng)站提供《使用Open cv python(手勢)和arduino控制Led.zip》資料免費下載
    發(fā)表于 10-28 10:19 ?6次下載
    使用Open cv <b class='flag-5'>python</b>(手勢)和<b class='flag-5'>arduino</b><b class='flag-5'>控制</b>Led

    使用Python進(jìn)行Arduino實時繪圖

    電子發(fā)燒友網(wǎng)站提供《使用Python進(jìn)行Arduino實時繪圖.zip》資料免費下載
    發(fā)表于 11-08 11:59 ?1次下載
    使用<b class='flag-5'>Python</b>進(jìn)行<b class='flag-5'>Arduino</b>實時繪圖

    使用ArduinoPython僅用雙手控制VLC媒體播放器

    電子發(fā)燒友網(wǎng)站提供《使用ArduinoPython僅用雙手控制VLC媒體播放器.zip》資料免費下載
    發(fā)表于 11-17 14:27 ?0次下載
    使用<b class='flag-5'>Arduino</b>和<b class='flag-5'>Python</b>僅用雙手<b class='flag-5'>控制</b>VLC媒體播放器

    使用ArduinoPython Tkinter進(jìn)行RGB Led控制

    電子發(fā)燒友網(wǎng)站提供《使用ArduinoPython Tkinter進(jìn)行RGB Led控制.zip》資料免費下載
    發(fā)表于 11-30 12:00 ?0次下載
    使用<b class='flag-5'>Arduino</b>和<b class='flag-5'>Python</b> Tkinter進(jìn)行RGB Led<b class='flag-5'>控制</b>

    使用arduino、mpu6050和python控制游戲

    電子發(fā)燒友網(wǎng)站提供《使用arduino、mpu6050和python控制游戲.zip》資料免費下載
    發(fā)表于 12-13 11:04 ?1次下載
    使用<b class='flag-5'>arduino</b>、mpu6050和<b class='flag-5'>python</b><b class='flag-5'>控制</b>游戲

    基于Arduino Micro的鍵盤和鼠標(biāo)控制

    電子發(fā)燒友網(wǎng)站提供《基于Arduino Micro的鍵盤和鼠標(biāo)控制.zip》資料免費下載
    發(fā)表于 12-22 15:09 ?1次下載
    基于<b class='flag-5'>Arduino</b> Micro的鍵盤和鼠標(biāo)<b class='flag-5'>控制</b><b class='flag-5'>庫</b>

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

    奇怪的編程語言組合。這個新工具套件被稱為 ArduPy(ArduinoPython 的組合),旨在通過提供一種將流行的 Arduino 轉(zhuǎn)換為 MicroPython
    的頭像 發(fā)表于 12-30 09:40 ?5173次閱讀

    如何安裝常用Python

    Python作為一種流行的編程語言,擁有豐富的第三方資源,這些可以幫助開發(fā)者輕松實現(xiàn)各種功能,從數(shù)據(jù)分析到Web開發(fā),從機(jī)器學(xué)習(xí)到圖像處理,涵蓋了各個領(lǐng)域。在Python的開發(fā)過程
    的頭像 發(fā)表于 04-14 12:11 ?1156次閱讀

    Python3與Arduino通信

    電子發(fā)燒友網(wǎng)站提供《Python3與Arduino通信.zip》資料免費下載
    發(fā)表于 06-26 14:39 ?0次下載
    <b class='flag-5'>Python</b>3與<b class='flag-5'>Arduino</b>通信

    python讀取數(shù)據(jù)數(shù)據(jù) python查詢數(shù)據(jù) python數(shù)據(jù)連接

    python讀取數(shù)據(jù)數(shù)據(jù) python查詢數(shù)據(jù) python數(shù)據(jù)連接
    的頭像 發(fā)表于 08-28 17:09 ?1813次閱讀
    主站蜘蛛池模板: 亚洲精品久久无码AV片银杏| 中国农村妇女真实BBWBBWBBW| 欧美video巨大粗暴18| 色橹| 中文在线日韩亚洲制服| 国产激情文学| 嫩草影院地址一二三| 亚洲乱码国产乱码精品精98| 成人免费肉动漫无遮网站| 国产精品av| 欧洲电影巜肉欲丛林| 伊人久久国产| 国产欧美第一页| 日韩AV片无码一区二区三区不卡| 在线视频 日韩视频二区 | 国产亚洲精品久久久久久一区二区 | 微拍秒拍99福利精品小视频| 99久久99久久久精品齐齐鬼色| 红桃传媒少妇人妻网站无码抽插| 酒色.com| 亚洲蜜芽在线观看精品一区 | 5G在线观看免费年龄确认| 好男人在线视频| 天龙八部慕容属性加点| 不卡无线在一二三区| 猛烈抽插H1V1| 香蕉99久久久久成人麻豆| 成人无码在线视频区| 欧美xxxxb| 51久久夜色精品国产| 久久久亚洲国产精品主播| 亚洲黄色在线视频| 国产色婷亚洲99精品AV在线| 色婷婷欧美在线播放内射| yin荡体育课羞耻play双性| 蜜桃无码AV视频在线观看| 中文字幕一区中文亚洲| 久久精品18| 在线观看黄色小说| 久久精品国产亚洲AV麻豆欧美玲 | 国内精品自产拍在线少密芽|