智能车学习(十一)——陀螺仪学习

一、学习说明

     感觉就是配置I2C通信,然后直接移植51代码。。。

 

二、代码分享:

1、头文件:

#ifndef I2C_GYRO_H_
#define I2C_GYRO_H_



/***********函数声明***********/

extern  void Gyro_Init(void);
extern  void Read_GY(void);

/*****************************/


/***********全局变量声明***********/

extern float Gyro_X ;
extern float Gyro_Y ;
extern float Gyro_Z ;

/*********************************/

#endif

 

2、源文件:

#include "include.h"
#include "common.h"
#include "gpio.h"
#include "I2C_GYRO.h"
#include "lptmr.h"


/***********管脚声明***********/

#define L3G_S_I2C_SDA       (PTE21)//(PTB3)//(PTE0) //(PTE22)//(PTC1)//                     
#define L3G_S_I2C_SCL       (PTE5)//(PTB2)//(PTE1)//(PTE20)//(PTC0)//

/*****************************/


//IO方向设置
#define L3G_I2C_SDA_IN()   DDRE21 = 0//输入模式
#define L3G_I2C_SDA_OUT()  DDRE21 = 1//输出模式


//IO操作函数     
#define L3G_I2C_SCL        PTE5_OUT //SCL
#define L3G_I2C_SDA        PTE21_OUT //SDA     
#define L3G_I2C_READ_SDA   PTE21_IN  //输入SDA 

/***********全局变量声明***********/
float Gyro_X = 0;
float Gyro_Y = 0;
float Gyro_Z = 0;
/********************************/



//**********L3G4200D内部寄存器地址*********
#define L3G_WHO_AM_I 0x0F
#define L3G_CTRL_REG1 0x20
#define L3G_CTRL_REG2 0x21
#define L3G_CTRL_REG3 0x22
#define L3G_CTRL_REG4 0x23
#define L3G_CTRL_REG5 0x24
#define L3G_REFERENCE 0x25
#define L3G_OUT_TEMP 0x26
#define L3G_STATUS_REG 0x27
#define L3G_OUT_X_L 0x28
#define L3G_OUT_X_H 0x29
#define L3G_OUT_Y_L 0x2A
#define L3G_OUT_Y_H 0x2B
#define L3G_OUT_Z_L 0x2C
#define L3G_OUT_Z_H 0x2D
#define L3G_FIFO_CTRL_REG 0x2E
#define L3G_FIFO_SRC_REG 0x2F
#define L3G_INT1_CFG 0x30
#define L3G_INT1_SRC 0x31
#define L3G_INT1_TSH_XH 0x32
#define L3G_INT1_TSH_XL 0x33
#define L3G_INT1_TSH_YH 0x34
#define L3G_INT1_TSH_YL 0x35
#define L3G_INT1_TSH_ZH 0x36
#define L3G_INT1_TSH_ZL 0x37
#define L3G_INT1_DURATION 0x38
//****************************************
#define    L3G_SlaveAddress   0xD2      //定义器件在IIC总线中的从地址,根据ALT  ADDRESS地址引脚不同修改
#define    L3G_SlaveAddfire   0x69      //定义器件在IIC总线中的从地址,根据ALT  ADDRESS地址引脚不同修改


//========================================================
  • 5
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值