微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于ADXL345采集的加速度数值的问题

关于ADXL345采集的加速度数值的问题

时间:10-02 整理:3721RD 点击:
小弟新人,最近因课题需要,在做一个振动无线监测节点,我采用的是CC2530+ADXL345。cc2530读取ADXL345的数据如下。我是这么想的:当把传感器水平放置不动时,应该只有z轴有数值,且数值应该为g。但结果显示z轴是024、025左右的值。这是怎么回事呢? 还请前辈指点一下我!感谢!


  1. char display[]={"0123456789."};         //将数字变成字符串的形式才能显示         i对应diaplay[i]
  2. char Txdata[4];
  3. char Txdata1[2];

  4. BYTE BUF[8];                         //接收数据缓存区             
  5. uchar ge,shi,bai,qian,wan;           //显示变量
  6. int  dis_data;                       //变量

  7. void conversion(uint temp_data)  
  8. {  
  9.     wan=temp_data/10000+0x30 ;
  10.     temp_data=temp_data%10000;   //取余运算
  11.     qian=temp_data/1000+0x30 ;
  12.     temp_data=temp_data%1000;    //取余运算
  13.     bai=temp_data/100+0x30   ;
  14.     temp_data=temp_data%100;     //取余运算
  15.     shi=temp_data/10+0x30    ;
  16.     temp_data=temp_data%10;      //取余运算
  17.     ge=temp_data+0x30;        
  18. }

  19. /显示x轴
  20. *******************************************************/
  21. void display_x()
  22. {     
  23.     dis_data=(BUF[1]<<8)+BUF[0];  //合成数据   
  24.     Txdata1[0]='x';
  25.     Txdata1[1]=':';
  26.     SeriPushSend(Txdata1,2);   
  27.     conversion(dis_data);
  28.    
  29.     Txdata[0] = qian;
  30.     Txdata[1] = bai;
  31.     Txdata[2] = shi;
  32.     Txdata[3] = ' ';
  33.    
  34.     SeriPushSend(Txdata,4);  
  35. }

复制代码

已解决!需要把传感器数据转换一下!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top