void f3d_nunchuk_init(void) { uint8_t realb = 0x00; uint8_t buf = 0x55; uint8_t buf2 = 0x00; // Use for factory Wii Nunchuk controllers // f3d_i2c1_write(NUNCHUK_ADDRESS,0x40,&realb); // Use for 3 party nunchuks like we have in the lab f3d_i2c1_write(NUNCHUK_ADDRESS,0xf0,&buf); f3d_i2c1_write(NUNCHUK_ADDRESS,0xfb,&buf2); }
void f3d_accel_init() { // Accelerometer I2C Address = 0x32 uint8_t value = 0; value = 0x40|0x07; // Normal Power Mode, All Axis Enable (X,Y,Z) f3d_i2c1_write(0x32, 0x20, &value); // Accel (0x32), Ctrl Reg1 (0x20) value = 0x08; // Continuous Update, Little Endian, 2G Sensitivity, High Resolution Mode f3d_i2c1_write(0x32, 0x23, &value); // Accel (0x32, Ctrl Reg4 (0x23) value = 0x10 | 0x80; // HPF Cutoff 16, High Pass Filter Normal Mode, AO1/AO1 Disable f3d_i2c1_write(0x32, 0x21, &value); // Accel (0x32, Ctrl Reg2 (0x21) }