单片机串口通讯协议代码
时间: 2024-09-16 14:05:57 浏览: 139
单片机串口通信是一种常见的数字通信方式,在许多电子设备中广泛应用,比如Arduino、Raspberry Pi等微控制器上。它通常使用异步串行通信(ASCI,如UART),其中最常见的是RS-232、RS-485和SPI协议。这里简单介绍一下基本的串口通讯代码示例:
假设我们使用的是ATmega328P(Arduino Uno板上的MCU)和软件Serial(因为硬件Serial已经占用了一个端口):
```c
#include <SoftwareSerial.h>
// 创建软件串口对象
SoftwareSerial mySerial(2, 3); // RX (pin 0), TX (pin 1)
void setup() {
Serial.begin(9600); // 初始化标准串口作为调试工具
mySerial.begin(9600); // 设置软件串口的波特率
}
void loop() {
if (mySerial.available()) { // 如果串口有数据可用
char incomingChar = mySerial.read(); // 读取数据
Serial.println("Received: " + String(incomingChar)); // 打印接收到的数据
}
// 发送数据的例子
delay(1000);
mySerial.print("Hello from MCU!"); // 发送字符串
}
```
这段代码首先初始化了两个串口,一个是标准的硬件串口(用于与电脑通信),另一个是软件串口。然后在`loop`循环中,每当软件串口有数据到来,就从串口读取并打印接收的内容;同时,每秒发送一次字符串“Hello from MCU!”到另一台连接的设备。
阅读全文