智能车制作

标题: 直立 陀螺仪 [打印本页]

作者: gzf    时间: 2015-4-7 22:31
标题: 直立 陀螺仪
怎么通过AD将陀螺仪的原始数据读取出来???

作者: zty562694497    时间: 2015-4-7 23:02
用AD采集模拟信号,通过串口显示到上位机
作者: gzf    时间: 2015-4-7 23:19
zty562694497 发表于 2015-4-7 23:02
用AD采集模拟信号,通过串口显示到上位机

我用AD通过下载器可以得到X轴 Y轴的值  还可以显示Z T值 但是不稳定  哪个是陀螺仪原始值??
还有 最近几天在搞SCI模块  怎么都实现不了数据发送和接收。。。而且 usb串口端口好烫手  尤其是晶振
请问 这是什么原因??

作者: zty562694497    时间: 2015-4-8 00:42
猜测你使用陀螺仪+加速度计集成模块。那么如果调直立,,你需要用加速度计的Z轴。。。陀螺仪原始的值,我的陀螺仪标识为Gyro。
SCI模块我没玩过,usb串口端口好烫手的问题我也不清楚呢。。。
作者: gzf    时间: 2015-4-8 12:08
zty562694497 发表于 2015-4-8 00:42
猜测你使用陀螺仪+加速度计集成模块。那么如果调直立,,你需要用加速度计的Z轴。。。陀螺仪原始的值,我的 ...

嗯  我是用128调直立的  现在卡在串口通信这块了  数据达不到发送与接收。。
那个陀螺仪原始值怎么读取??

作者: zty562694497    时间: 2015-4-8 17:02
gzf 发表于 2015-4-8 12:08
嗯  我是用128调直立的  现在卡在串口通信这块了  数据达不到发送与接收。。
那个陀螺仪原始值怎么读取? ...

...直接用AD读取阿。。。
作者: gzf    时间: 2015-4-8 22:16
zty562694497 发表于 2015-4-8 17:02
...直接用AD读取阿。。。

哦哦 但是我的串口通信不知道为什么 接收的数据老是乱码。。。

作者: zty562694497    时间: 2015-4-9 16:05
gzf 发表于 2015-4-8 22:16
哦哦 但是我的串口通信不知道为什么 接收的数据老是乱码。。。

你或许可以看看有没有勾选16进制显示这个选项......虽然觉得你应该勾选了。。。

作者: gzf    时间: 2015-4-9 19:45
zty562694497 发表于 2015-4-9 16:05
你或许可以看看有没有勾选16进制显示这个选项......虽然觉得你应该勾选了。。。

勾了  还是一直显示乱码BBBBBB.....或者(((((((((((((((((((((((((((...或者?????????????.....什么原因?

作者: zty562694497    时间: 2015-4-9 23:53
gzf 发表于 2015-4-9 19:45
勾了  还是一直显示乱码BBBBBB.....或者(((((((((((((((((((((((((((...或者?????????????.....什么原因? ...

没有遇到过。。。。我用的上位机是山外的多功能调试助手,你可以试试

作者: 余晖。。    时间: 2015-4-10 15:51
亲  我的也没解决   你的解决没  SCI 模块
作者: gzf    时间: 2015-4-10 19:26
zty562694497 发表于 2015-4-9 23:53
没有遇到过。。。。我用的上位机是山外的多功能调试助手,你可以试试

哦哦  好吧。。。
那个在哪里可以下载?

作者: gzf    时间: 2015-4-10 19:27
余晖。。 发表于 2015-4-10 15:51
亲  我的也没解决   你的解决没  SCI 模块

还没呢  不知道问题出在哪里了。。。

作者: 余晖。。    时间: 2015-4-10 21:30
额   恩恩  加油吧  你用的蓝轴的还是谁的程序、//、????
作者: zty562694497    时间: 2015-4-10 21:52
gzf 发表于 2015-4-10 19:26
哦哦  好吧。。。
那个在哪里可以下载?

。。。山外论坛。。
顺带一说。。论坛里还有教我们如何使用多功能调试助手的帖子

作者: gzf    时间: 2015-4-10 22:08
zty562694497 发表于 2015-4-10 21:52
。。。山外论坛。。
顺带一说。。论坛里还有教我们如何使用多功能调试助手的帖子

哦哦  谢谢哈  我去看看
作者: gzf    时间: 2015-4-10 22:09
余晖。。 发表于 2015-4-10 21:30
额   恩恩  加油吧  你用的蓝轴的还是谁的程序、//、????

自己写啊  你用的是谁的?

作者: wy941016    时间: 2015-4-11 09:09
楼主,我也有同样的问题。我用的也是128的,能给我看看你的AD采集,SCI模块怎么写的吗?或许能看出问题
作者: 余晖。。    时间: 2015-4-11 11:58
自己写的 。,,,,就是不好使
作者: gzf    时间: 2015-4-11 14:39
余晖。。 发表于 2015-4-11 11:58
自己写的 。,,,,就是不好使

你自己写的程序  把sci搞出来了??

作者: gzf    时间: 2015-4-11 14:58
wy941016 发表于 2015-4-11 09:09
楼主,我也有同样的问题。我用的也是128的,能给我看看你的AD采集,SCI模块怎么写的吗?或许能看出问题

你先说说你是怎么解决的???

作者: wy941016    时间: 2015-4-11 15:31
gzf 发表于 2015-4-11 14:58
你先说说你是怎么解决的???

#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */
#include "pll.h"
#include "AD.h"
float AD_data=0;

/*************************************************************/
/*                      初始化AD模块                         */
/*************************************************************/
void INIT_AD(void)
{
ATD0CTL2 = 0xc0;  //启动A/D模块,快速清零,禁止中断  一样  
//delay(1);
// ATD0CTL1=0x60;  //选用12位模数转换

ATD0CTL3 = 0x88;   //每次只转换一个通道 右对齐转换1个序列长度
ATD0CTL4 = 0x0F;   //AD模块时钟频率为2MHz
ATD0CTL5 = 0x20;    //连续转换
ATD0CTL1 = 0x4F;  
}

/*void ADC0_Init(void)     
{

    ATD0CTL4 = 0x04;                    // Set sample time and prescaler
    ATD0CTL3 = 0x88;                    // Right justified data,Conversion Sequence Length = 1
    ATD0CTL0 = 0x0F;                    // Set wrap around ///an15翻转通道
    ATD0CTL1 = 0x4F;                    // 12-bit data ///12位分辨率 外部触发源是an15 采样前不放电
    ATD0CTL2 = 0x40;                    // Fast Flag Clear ///快速清除标志位

} */
/*************************************************************/
/*                        起动AD转换                         */
/*************************************************************/
float AD_capture(unsigned char chanel)
{  
switch(chanel)
{
case 0:
    ATD0CTL1=0x0f;
    ATD0CTL5 = 0x00;    //转换AD00
     ATD0CTL3 =0X88;
     ATD0CTL2 = 0XC0;
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break;

  /*case 1:
    ATD0CTL1=0x0f;      ////选用8位模数转换
    ATD0CTL5 = 0x01;    //转换AD01
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break; */

  case 2:
  ATD0CTL1=0x60;
    ATD0CTL5 = 0x02;    //转换AD02
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break;

   case 3:
   ATD0CTL1=0x60;
    ATD0CTL5 = 0x03;    //转换AD03
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break;

  case 4:
  ATD0CTL1=0x60;
    ATD0CTL5 = 0x04;    //转换AD04
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break;

  case 5:
    ATD0CTL5 = 0x05;    //转换AD05
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break;

  case 6:
    ATD0CTL5 = 0x06;    //转换AD06
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 7:
    ATD0CTL5 = 0x07;    //转换AD07
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 8:
    ATD0CTL5 = 0x08;    //转换AD08
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 9:
    ATD0CTL5 = 0x09;    //转换AD09
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 10:
    ATD0CTL5 = 0x0a;    //转换AD10
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 11:
    ATD0CTL5 = 0x0b;    //转换AD11
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 12:
    ATD0CTL5 = 0x0c;    //转换AD12
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 13:
    ATD0CTL5 = 0x0d;    //转换AD13
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 14:
    ATD0CTL5 = 0x0e;    //转换AD14
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;

  case 15:
    ATD0CTL5 = 0x0f;    //转换AD15
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0L;
    break;
}
return(AD_data);
}


OutData[0]=GravityAngle; //加速度计GravityAngle;// OutData[1]=car_angle;   //融合后的波OutData[2]=gyroscopeAngleSpeed;   //陀螺仪OutData[3] =g_fCarSpeed;            //车速
OutPut_Data();  就是用AD采集后,有串口显示,我放在中断程序中的        


作者: 余晖。。    时间: 2015-4-11 15:36
没解决  

作者: 余晖。。    时间: 2015-4-11 15:36
我的跟上边那个人的一样

作者: gzf    时间: 2015-4-11 15:55
wy941016 发表于 2015-4-11 15:31
#include       /* common defines and macros */
#include "derivative.h"      /* derivative-specifi ...

方便加QQ好友么?
作者: wy941016    时间: 2015-4-12 19:41
gzf 发表于 2015-4-11 15:55
方便加QQ好友么?

我的QQ493265093





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2