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

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

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

怎樣使用PySerial接口Python和Arduino

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2019-11-04 11:30 ? 次閱讀

步驟1:安裝

怎樣使用PySerial接口Python和Arduino

下載后,打開終端并輸入:

tar xfvz /Users/*Account*/Downloads/pyserial-2.6.tar.gz

cd pyserial-2.6

sudo python setup.py install

為確保所有安裝正確的設(shè)備都打開空閑并輸入在“導(dǎo)入序列號(hào)”中。如果沒有錯(cuò)誤出現(xiàn),則一切正常。

您可以通過

ls /dev/tty.*

行檢查可用的端口,步驟2:對(duì)Arduino進(jìn)行編程

現(xiàn)在進(jìn)行測(cè)試,將以下草圖上傳到Arduino。我不知道這在Arduino克隆上將如何工作。

void setup() {

Serial.begin(9600); // set the baud rate

Serial.println(“Ready”); // print “Ready” once

}

void loop() {

char inByte = ‘ ’;

if(Serial.available()){ // only send data back if data has been sent

char inByte = Serial.read(); // read the incoming data

Serial.println(inByte); // send the data back in a new line so that it is not all one long line

}

delay(100); // delay for 1/10 of a second

}

步驟3:程序空閑

下一步在Idle中創(chuàng)建一個(gè)新窗口并創(chuàng)建以下程序。

from time import sleep

import serial

ser = serial.Serial(‘/dev/tty.usbmodem1d11’, 9600) # Establish the connection on a specific port

counter = 32 # Below 32 everything in ASCII is gibberish

while True:

counter +=1

ser.write(str(chr(counter))) # Convert the decimal number to ASCII then send it to the Arduino

print ser.readline() # Read the newest output from the Arduino

sleep(.1) # Delay for one tenth of a second

if counter == 255:

counter = 32

請(qǐng)記住兩點(diǎn)。要確定您的Arduino連接了哪個(gè)串行端口,請(qǐng)查看Arduino草圖的右下角。不管是什么,都應(yīng)該是Python程序第3行中的引號(hào)。

您還可以更改Python程序第3行和Arduino程序的第2行中的波特率,只要它們保持不變即可。程序運(yùn)行后,它將打印出大多數(shù)ASCII字符。首先將它們發(fā)送到Arduino,然后將其發(fā)送回Python,然后打印出來的計(jì)算機(jī)。
責(zé)任編輯:wv

聲明:本文內(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

    文章

    4806

    瀏覽量

    84934
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6477

    瀏覽量

    187556
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    華為云 Flexus X 實(shí)例下的場(chǎng)景體驗(yàn)——小企業(yè)使用 Python 語言——超迅速搭建簡(jiǎn)單公網(wǎng) API 接口服務(wù)

    ? 前言 小企業(yè)為了快速搞定一些接口功能如果不使用 Python 的話相對(duì)來說復(fù)雜度還是很高的,這里我來通過【華為云 Flexus X 實(shí)例】來迅速的搭建一個(gè) Python 的 WebApi 示例
    的頭像 發(fā)表于 12-27 13:46 ?144次閱讀
    華為云 Flexus X 實(shí)例下的場(chǎng)景體驗(yàn)——小企業(yè)使用 <b class='flag-5'>Python</b> 語言——超迅速搭建簡(jiǎn)單公網(wǎng) API <b class='flag-5'>接口</b>服務(wù)

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

    ,這些是常見的CAN控制器芯片,可以通過SPI接口Arduino通信。 CAN總線轉(zhuǎn)接板 :用于將CAN控制器芯片與Arduino連接。 CAN總線終端電阻 :通常需要在
    的頭像 發(fā)表于 12-23 09:06 ?402次閱讀

    使用Python進(jìn)行串口通信的案例

    當(dāng)然!以下是一個(gè)使用Python進(jìn)行串口通信的簡(jiǎn)單示例。這個(gè)示例展示了如何配置串口、發(fā)送數(shù)據(jù)以及接收數(shù)據(jù)。我們將使用 pyserial 庫(kù),這是一個(gè)非常流行的用于串口通信的Python庫(kù)。 首先,你
    的頭像 發(fā)表于 11-22 09:11 ?385次閱讀

    stm32與Arduino的比較

    高級(jí)通信接口(如CAN、以太網(wǎng))。 STM32微控制器適用于需要高性能和復(fù)雜功能的應(yīng)用。 ArduinoArduino基于AVR或ARM Cort
    的頭像 發(fā)表于 11-19 15:45 ?1444次閱讀

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

    可以通過SPI接口Arduino通信。 CAN總線轉(zhuǎn)接板 :用于將CAN總線模塊與Arduino連接。 跳線 :用于連接Arduino和CAN總線模塊。 電源 :A
    的頭像 發(fā)表于 11-12 10:09 ?1269次閱讀

    怎樣Arduino測(cè)試鋰電池容量

    本文詳細(xì)介紹了如何用Arduino測(cè)量鋰電池的容量。并附有電路圖和Arduino的程序代碼。
    的頭像 發(fā)表于 07-30 09:14 ?990次閱讀
    <b class='flag-5'>怎樣</b>用<b class='flag-5'>Arduino</b>測(cè)試鋰電池容量

    opencv-python和opencv一樣嗎

    是OpenCV的一個(gè)Python語言接口,它允許開發(fā)者使用Python語言來調(diào)用OpenCV庫(kù)的功能。 雖然OpenCV和OpenCV-Python在功能上有很多相似之處,但它們之間還
    的頭像 發(fā)表于 07-16 10:38 ?1329次閱讀

    ESP32使用Arduino啟用藍(lán)牙后編譯固件過大,怎樣縮減大小呢?

    ESP32使用Arduino啟用藍(lán)牙后編譯固件過大,怎樣縮減大小,日志級(jí)別已經(jīng)最低了,分區(qū)不能動(dòng),已經(jīng)是1.9M的OTA分區(qū)配置了,怎樣還能縮減大小,藍(lán)牙功能能否裁剪
    發(fā)表于 06-28 11:27

    esp32在Arduino IDE中可以實(shí)現(xiàn)調(diào)用百度智能云接口嗎?

    esp32在Arduino IDE中可以實(shí)現(xiàn)調(diào)用百度智能云接口嗎?涉及到http協(xié)議,想知道能不能不用esp-idf
    發(fā)表于 06-28 06:52

    Arduino怎樣配置LVGL8.1.0訪問spiffs里面的字庫(kù)或圖片?

    抱歉把Arduino的內(nèi)容發(fā)在這個(gè)版塊了. 在Arduino的示例中LITTLEFS_test.ino SPIFFS_Test.ino FFat_Test.ino已經(jīng)測(cè)試成功, 并且使用ESP32
    發(fā)表于 06-19 06:15

    使用idf.py命令方式編譯,怎樣才能編譯arduino的庫(kù),并且在項(xiàng)目中可調(diào)用?

    在編譯過程中,提示找不到對(duì)應(yīng)的頭文件。 請(qǐng)問使用idf.py命令方式編譯,怎樣才能編譯arduino的庫(kù),并且在項(xiàng)目中可調(diào)用。
    發(fā)表于 06-13 06:56

    idf-arduino component組件怎么設(shè)置 ?

    menuconfig 根據(jù) 文檔里面的 教程 ,設(shè)置 就是這個(gè)報(bào)錯(cuò) 。 idf.py add-dependency \"espressif/arduino-esp32^2.0.7\" 或者是在vscode 里面 用 python 腳本然后編譯工程也是 一樣的報(bào)錯(cuò)。
    發(fā)表于 06-12 07:27

    求助,在esp-idf中使用arduino作為組件后怎樣使用arduino的庫(kù)?

    在esp-idf中使用arduino作為組件后怎樣使用arduino的庫(kù),例如我此時(shí)需要使用arduino的第三方庫(kù)blinker,怎樣使用
    發(fā)表于 06-12 07:21

    Pyserial庫(kù)來進(jìn)行與stm32的串口通信,用write方法給32發(fā)數(shù)據(jù)時(shí)會(huì)出現(xiàn)數(shù)據(jù)的錯(cuò)誤和缺失怎么解決?

    我使用的是Pyserial庫(kù)來進(jìn)行與stm32的串口通信,python可以很好地接收32發(fā)來的數(shù)據(jù),但是我用write方法給32發(fā)數(shù)據(jù)時(shí)會(huì)出現(xiàn)數(shù)據(jù)的錯(cuò)誤和缺失,同樣的32程序我用串口調(diào)試助手能夠成功
    發(fā)表于 03-12 07:32

    2023年Arduino開放原碼報(bào)告:持續(xù)茁壯的Arduino生態(tài)系!

    所謂出錢就是買一片Arduino開發(fā)板或是付費(fèi)訂閱Arduino Cloud云端服務(wù),或單純資金贊助;出力就是撰寫Arduino相關(guān)的程序并無私的分享程序代碼或回報(bào)錯(cuò)誤或投入翻譯等,筆者即有若干翻譯新版
    的頭像 發(fā)表于 01-25 16:45 ?1542次閱讀
    2023年<b class='flag-5'>Arduino</b>開放原碼報(bào)告:持續(xù)茁壯的<b class='flag-5'>Arduino</b>生態(tài)系!