两个arduino串口通信例子
    在Arduino编程中,串口通信被广泛应用于传输数据。本例演示如何使用两个Arduino板实现串口通信。
    硬件需求:
    - 两个Arduino板(这里我们使用Arduino Uno)
    - USB电缆
    - 两个面包板
    - 两个LED
    - 杜邦线
    步骤:
    1. 连接一个Arduino板,并上传以下代码:
    ```
    void setup() {
    Serial.begin(9600);
    }
    void loop() {
    Serial.println('Hello from Arduino 1!');
    delay(1000);
    }
    ```
    这个程序每秒钟发送一条包含“Hello from Arduino 1!”的消息到串口。
    2. 连接另一个Arduino板,并上传以下代码:
python怎么读取串口数据
    ```
    void setup() {
    Serial.begin(9600);
    pinMode(LED_BUILTIN, OUTPUT);
    }
    void loop() {
    if (Serial.available() > 0) {
    String message = adStringUntil('
    ');
    if (message == 'Hello from Arduino 1!') {
    digitalWrite(LED_BUILTIN, HIGH);
    delay(1000);
    digitalWrite(LED_BUILTIN, LOW);
    }
    }
    }
    ```
    这个程序等待从串口接收到来自另一个Arduino板的消息。如果消息是“Hello from Arduino 1!”则点亮板上的LED一秒钟。
    3. 使用USB电缆将两个Arduino板连接在一起。将一个板连接到计算机,打开串口监视器。在另一个板上按下复位按钮。您应该能够看到串口监视器中发送和接收的消息。
    2. 实现Arduino与Python之间的串口通信
    Python是一种广泛使用的编程语言,用于各种计算机应用程序。本例演示如何使用Python与Arduino板进行串口通信。
    硬件需求:
    - 一个Arduino板(这里我们使用Arduino Uno)
    - USB电缆
    - 一个LED
    - 一个220欧姆电阻
    - 杜邦线
    步骤:
    1. 连接Arduino板,并上传以下代码:
    ```
    void setup() {
    Serial.begin(9600);
    pinMode(LED_BUILTIN, OUTPUT);
    }
    void loop() {
    if (Serial.available() > 0) {
    String message = adStringUntil('
    ');
    if (message == 'on') {
    digitalWrite(LED_BUILTIN, HIGH);
    } else if (message == 'off') {
    digitalWrite(LED_BUILTIN, LOW);
    }
    }
    }
    ```
    这个程序等待从串口接收到来自Python程序的消息。如果消息是“on”,则点亮板上的LED,如果是“off”,则关闭它。
    2. 在计算机上安装Python,并使用以下代码:
    ```
    import serial
    import time
    arduino = serial.Serial('/dev/ttyACM0', 9600, timeout=.1)
    time.sleep(2)
    print('Sending 'on' ')
    arduino.write(b'on')
    time.sleep(2)
    print('Sending 'off' ')
    arduino.write(b'off')
    time.sleep(2)
    arduino.close()
    ```
    这个程序连接到Arduino板的串口,发送“on”消息,然后等待2秒钟,然后发送“off”消息。
    3. 将Arduino板连接到计算机并运行Python程序。您应该能够在串口监视器中看到LED在打开和关闭时变亮和变暗。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。