# Arduino Uno连接Razor IMU时串口数据乱码

> 原文链接：https://robotics.hellobike.com/pitfalls/2022-10-12-robotics-se-1864
> 频道：pitfalls | 更新日期：2022-10-12 | 标签：auto, stackexchange, arduino, imu
> 核心摘要：Razor 9DOF IMU用Uno的SoftwareSerial会乱码，可改用交叉接线或用Mega的Serial3。

# Arduino Uno连接Razor IMU时串口数据乱码

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[Razor IMU Arduino interfacing](https://robotics.stackexchange.com/questions/1864/razor-imu-arduino-interfacing)（Robotics Stack Exchange #1864）

**状态**：已解决

## 问题

Sparkfun Razor IMU示例主要面向电脑串口连接；在Arduino Uno上尝试用`SoftwareSerial`接收文本或二进制输出时只能收到乱码。

## 环境

Sparkfun Razor 9DOF IMU；Arduino Uno；Arduino MEGA；串口速率`57600`。

## 解决办法

1. 先按`razor-9dof-ahrs`教程让IMU本身正常工作。
2. 若用Arduino Uno，按原文链接的配置接线，但注意`TX`应接`RX`、`RX`应接`TX`，图中`Rx to Rx`和`Tx to Tx`说明是错的。
3. 若可使用Arduino MEGA，使用额外硬件串口，例如用`Serial3`从IMU读取、`Serial`向PC输出，答案中的代码基于`TextFinder(Serial3)`解析形如`H 12.00,-345.00,678.00`的数据。

原问题作者：David；采纳答案作者：user2035。原内容依 CC BY-SA 4.0 授权，本页摘要同样依 CC BY-SA 4.0 授权。
:::

## 原始参考来源 (Sources)

- [Robotics Stack Exchange #1864：Razor IMU Arduino interfacing](https://robotics.stackexchange.com/questions/1864/razor-imu-arduino-interfacing)