RichieHard

Untitled

Mar 18th, 2020
239
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. #include <Sparkfun_DRV2605L.h> //SparkFun Haptic Motor Driver Library
  2. #include <Wire.h> //I2C library
  3.  
  4. SFE_HMD_DRV2605L HMD; //Create haptic motor driver object
  5.  
  6. #define SDA_2 4
  7. #define SCL_2 17
  8.  
  9. void setup()
  10. {
  11. Serial.begin(9600);
  12. Serial.println("DRV test");
  13.  
  14. Wire.begin();
  15. Wire1.begin(SDA_2, SCL_2);
  16.  
  17. HMD.begin();
  18. //HMD.begin(0x5A, &Wire1);
  19.  
  20. HMD.Mode(0); // Internal trigger input mode -- Must use the GO() function to trigger playback.
  21. HMD.MotorSelect(0x36); // ERM motor, 4x Braking, Medium loop gain, 1.365x back EMF gain
  22. HMD.Library(2); //1-5 & 7 for ERM motors, 6 for LRA motors
  23.  
  24. }
  25. void loop()
  26. {
  27. int seq = 0; //There are 8 sequence registers that can queue up to 8 waveforms
  28. for(int wave = 1; wave <=123; wave++) //There are 123 waveform effects
  29. {
  30. HMD.Waveform(seq, wave);
  31. HMD.go();
  32. delay(600); //give enough time to play effect
  33. Serial.print("Waveform Sequence: ");
  34. Serial.println(seq);
  35. Serial.print("Effect No.: ");
  36. Serial.println(wave);
  37.  
  38. if (wave%8==0) //Each Waveform register can queue 8 effects
  39. {
  40. seq=seq+1;
  41. }
  42. if (wave%64==0) // After the last register is used start over
  43. {
  44. seq=0;
  45. }
  46. }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment