arduino串口绘图_arduino 串口实时绘图(以mpu9250为例)

本文通过Arduino读取MPU9250传感器数据,使用C++编码并通过串口将数据发送到Python环境。Python端采用matplotlib库进行实时绘图,展示传感器的加速度、陀螺仪和磁力计数据。虽然发现Python读取串口数据效率不高,可能会导致卡顿,但作为演示方案仍有效。下篇文章将探讨使用Processing进行数据可视化的应用。
摘要由CSDN通过智能技术生成

兴趣之余,利用晚上的时间,做一些个人兴趣方面的开发. 之前没接触过 arduino, 无意之中买了个开发板做一些小开发, 这里利用python 读取 mpu9250 数据实时绘图.

下位机代码 C++

void Serial_SendDataPython( int16_t *sendData, uint8_t lens )

{

uint8_t tmpData[32] = {0}; //tmpData lens >= 2 * lens + 4

uint8_t *ptrData =tmpData;

uint8_t dataBytes= lens << 1;

uint8_t dataLens= dataBytes + 4;

uint8_t count= 0;

uint16_t tmpSum= 0;

tmpData[0] = 'S';while(count > 1]);//tmpData[count+2] = Byte8L(sendData[count >> 1]);

tmpData[count+1] = (sendData[count >> 1])>>8;

tmpData[count+2] = (sendData[count >> 1])&0x00ff; ;

count= count + 2;

}for(uint8_t i = 0; i < dataBytes; i++)

tmpSum+= tmpData[i+1];

tmpData[dataLens- 3] = (uint8_t)(tmpSum & 0x00FF);

tmpData[dataLens- 2] = '\r';

tmpData[dataLens- 1] = '\n';do{//Serial_SendByte(*ptrData++);

Serial.write(*ptrData++);

}while(--dataLens);

}

....................................

IMU_Buf[0] = testLostRate++;

MU_Buf[1] = ax/2;

IMU_Buf[2] = ay/2;

IMU_Buf[3] = az/2;

IMU_Buf[4] = gx/2;

IMU_Buf[5] = gy/2;

IMU_Buf[6] = gz/2;

IMU_Buf[7] =

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值