|
调用过程参考:
- void write_eeprom(uint8_t temp)
- {
- uint8_t i;
- WP_L;
- if(temp == 1){
- i2c.tmp = 0;
- I2C_SendData(0xA2, 0x0000, HAV_H, i2c.arry, 4);
-
- }
- I2C_ReceiveData(0xA2, 0x0000, HAV_H, i2c.arry, 4);
- if(i2c.tmp != 123456)
- {
- //int class
- i2c.tmp = 123456;
- I2C_SendData(0xA2, 0x0000, HAV_H, i2c.arry, 4);
-
- i2c.tmp = 0; //P00
- I2C_SendData(0xA2, 0x0004, HAV_H, i2c.arry, 4);//int
-
- i2c_2.tmp = 9.0; //motor_x1
- I2C_SendData(0xA2, 0x0008, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 36.0; //motor_z1
- I2C_SendData(0xA2, 0x000C, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 2.4; //motor_p1
- I2C_SendData(0xA2, 0x0010, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 3.0; //motor_n
- I2C_SendData(0xA2, 0x0014, HAV_H, i2c_2.arry, 4);//float
-
-
- i2c_2.tmp = 48.0; //motor_x2
- I2C_SendData(0xA2, 0x0018, HAV_H, i2c_2.arry, 4);//float
- i2c_2.tmp = 62.0; //motor_y2
- I2C_SendData(0xA2, 0x001C, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 35.0; //motor_z2
- I2C_SendData(0xA2, 0x0020, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 0.1; //motor_p2
- I2C_SendData(0xA2, 0x0024, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 1.92; //motor_p3
- I2C_SendData(0xA2, 0x0028, HAV_H, i2c_2.arry, 4);//float
- i2c_2.tmp = 5.0; //motor_p4
- I2C_SendData(0xA2, 0x002C, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 24.0; //motor_p5
- I2C_SendData(0xA2, 0x0030, HAV_H, i2c_2.arry, 4);//float
-
- i2c_2.tmp = 21.0; //motor_x3
- I2C_SendData(0xA2, 0x0034, HAV_H, i2c_2.arry, 4);//float
-
-
- i2c_2.tmp = 25.0; //set_t1
- I2C_SendData(0xA2, 0x0038, HAV_H, i2c_2.arry, 4);//float
-
- i2c.tmp = 0;//t1_enable_flag
- I2C_SendData(0xA2, 0x003C, HAV_H, i2c.arry, 1);//u8
-
- i2c.tmp = 0;//t2_enable_flag
- I2C_SendData(0xA2, 0x003D, HAV_H, i2c.arry, 1);//u8
-
-
-
- i2c.tmp = 2;//xspeed
- I2C_SendData(0xA2, 0x0040, HAV_H, i2c.arry, 1);//u8
-
- i2c.tmp = 2;//yspeed
- I2C_SendData(0xA2, 0x0041, HAV_H, i2c.arry, 1);//u8
- i2c.tmp = 5;//zspeed
- I2C_SendData(0xA2, 0x0042, HAV_H, i2c.arry, 1);//u8
-
- i2c.tmp = 2;//pspeed
- I2C_SendData(0xA2, 0x0043, HAV_H, i2c.arry, 1);//u8
-
-
- }
- WP_H;
- }
- //
- //
- void read_eeprom(void)
- {
- uint8_t i;
- WP_L; //保存校准值到eeprom
- i2c.tmp = 0; //P00
- I2C_ReceiveData(0xA2, 0x0004, HAV_H, i2c.arry, 4);//int
- // ipara_p00=i2c.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0008, HAV_H, i2c_2.arry, 4);//float
- motor_x1=i2c_2.tmp;
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x000C, HAV_H, i2c_2.arry, 4);//float
- motor_z1=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0010, HAV_H, i2c_2.arry, 4);//float
- motor_p1=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0014, HAV_H, i2c_2.arry, 4);//float
- motor_n=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0018, HAV_H, i2c_2.arry, 4);//float
- motor_x2=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x001C, HAV_H, i2c_2.arry, 4);//float
- motor_y2=i2c_2.tmp;
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0020, HAV_H, i2c_2.arry, 4);//float
- motor_z2=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0024, HAV_H, i2c_2.arry, 4);//float
- motor_p2=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0028, HAV_H, i2c_2.arry, 4);//float
- motor_p3=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x002C, HAV_H, i2c_2.arry, 4);//float
- motor_p4=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0030, HAV_H, i2c_2.arry, 4);//float
- motor_p5=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0034, HAV_H, i2c_2.arry, 4);//float
- motor_x3=i2c_2.tmp;
-
- i2c_2.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0038, HAV_H, i2c_2.arry, 4);//float
- set_t1=i2c_2.tmp;
-
- i2c.tmp = 0;
- I2C_ReceiveData(0xA2, 0x003C, HAV_H, i2c.arry, 1);//u8
- t1_enable_flag=i2c.tmp;
-
- i2c.tmp = 0;
- I2C_ReceiveData(0xA2, 0x003D, HAV_H, i2c.arry, 1);//u8
- t2_enable_flag=i2c.tmp;
- i2c.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0040, HAV_H, i2c.arry, 1);//u8
- xspeed=i2c.tmp;
- i2c.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0041, HAV_H, i2c.arry, 1);//u8
- yspeed=i2c.tmp;
- i2c.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0042, HAV_H, i2c.arry, 1);//u8
- zspeed=i2c.tmp;
- i2c.tmp = 0;
- I2C_ReceiveData(0xA2, 0x0043, HAV_H, i2c.arry, 1);//u8
- pspeed=i2c.tmp;
-
- WP_H;
- }
-
复制代码
|
|