智能车制作

 找回密码
 注册

扫一扫,访问微社区

123
返回列表 发新帖
楼主: gzf
打印 上一主题 下一主题

直立 陀螺仪

  [复制链接]

13

主题

171

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1030
威望
455
贡献
267
兑换币
279
注册时间
2014-7-26
在线时间
154 小时
21#
 楼主| 发表于 2015-4-11 14:58:49 | 只看该作者
wy941016 发表于 2015-4-11 09:09
楼主,我也有同样的问题。我用的也是128的,能给我看看你的AD采集,SCI模块怎么写的吗?或许能看出问题

你先说说你是怎么解决的???
回复 支持 反对

使用道具 举报

1

主题

34

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
307
QQ
威望
154
贡献
83
兑换币
102
注册时间
2015-1-22
在线时间
35 小时
毕业学校
安徽师范大学
22#
发表于 2015-4-11 15:31:37 | 只看该作者
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采集后,有串口显示,我放在中断程序中的        

回复 支持 反对

使用道具 举报

12

主题

176

帖子

0

精华

高级会员

Rank: 4

积分
952
威望
480
贡献
316
兑换币
304
注册时间
2014-11-6
在线时间
78 小时
23#
发表于 2015-4-11 15:36:00 | 只看该作者
没解决  
回复 支持 反对

使用道具 举报

12

主题

176

帖子

0

精华

高级会员

Rank: 4

积分
952
威望
480
贡献
316
兑换币
304
注册时间
2014-11-6
在线时间
78 小时
24#
发表于 2015-4-11 15:36:26 | 只看该作者
我的跟上边那个人的一样
回复 支持 反对

使用道具 举报

13

主题

171

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1030
威望
455
贡献
267
兑换币
279
注册时间
2014-7-26
在线时间
154 小时
25#
 楼主| 发表于 2015-4-11 15:55:35 | 只看该作者
wy941016 发表于 2015-4-11 15:31
#include       /* common defines and macros */
#include "derivative.h"      /* derivative-specifi ...

方便加QQ好友么?
回复 支持 反对

使用道具 举报

1

主题

34

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
307
QQ
威望
154
贡献
83
兑换币
102
注册时间
2015-1-22
在线时间
35 小时
毕业学校
安徽师范大学
26#
发表于 2015-4-12 19:41:56 | 只看该作者
gzf 发表于 2015-4-11 15:55
方便加QQ好友么?

我的QQ493265093
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-2-24 03:27 , Processed in 0.044782 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表