两个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小时内删除。
发表评论