Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. //*******************************************************************************
  2. float IIR_LPF_10(float xv)
  3. {
  4. // CHEBY LOW, order 9, R = 1.0, 1.075000e+01 BPM
  5. static float G1 = 0.0325847;
  6. static float b1[] = {1.0000000, 1.0346697, 0.0000000};
  7. static float a1[] = {1.0000000, -0.9822926, 0.0000000};
  8. static float G2 = 0.0010618;
  9. static float b2[] = {1.0000000, 2.0524836, 1.0536768};
  10. static float a2[] = {1.0000000, -1.9648932, 0.9666716};
  11. static float G3 = 0.0010618;
  12. static float b3[] = {1.0000000, 2.0108794, 1.0120511};
  13. static float a3[] = {1.0000000, -1.9675276, 0.9730169};
  14. static float G4 = 0.0010618;
  15. static float b4[] = {1.0000000, 1.9653564, 0.9665046};
  16. static float a4[] = {1.0000000, -1.9724589, 0.9821895};
  17. static float G5 = 0.0010618;
  18. static float b5[] = {1.0000000, 1.9366110, 0.9377444};
  19. static float a5[] = {1.0000000, -1.9812539, 0.9938168};
  20.  
  21. {float declarations}
  22.  
  23. y1M2 = y1M1; y1M1 = y1M0; x1M2 = x1M1; x1M1 = x1M0, x1M0 = G1*xv;
  24. yv = -a1[2]*y1M2 - a1[1]*y1M1 + b1[2]*x1M2 + b1[1]*x1M1 + b1[0]*x1M0;
  25. y1M0 = yv;
  26.  
  27. y2M2 = y2M1; y2M1 = y2M0; x2M2 = x2M1; x2M1 = x2M0, x2M0 = G2*yv;
  28. yv = -a2[2]*y2M2 - a2[1]*y2M1 + b2[2]*x2M2 + b2[1]*x2M1 + b2[0]*x2M0;
  29. y2M0 = yv;
  30.  
  31. y3M2 = y3M1; y3M1 = y3M0; x3M2 = x3M1; x3M1 = x3M0, x3M0 = G3*yv;
  32. yv = -a3[2]*y3M2 - a3[1]*y3M1 + b3[2]*x3M2 + b3[1]*x3M1 + b3[0]*x3M0;
  33. y3M0 = yv;
  34.  
  35. y4M2 = y4M1; y4M1 = y4M0; x4M2 = x4M1; x4M1 = x4M0, x4M0 = G4*yv;
  36. yv = -a4[2]*y4M2 - a4[1]*y4M1 + b4[2]*x4M2 + b4[1]*x4M1 + b4[0]*x4M0;
  37. y4M0 = yv;
  38.  
  39. y5M2 = y5M1; y5M1 = y5M0; x5M2 = x5M1; x5M1 = x5M0, x5M0 = G5*yv;
  40. yv = -a5[2]*y5M2 - a5[1]*y5M1 + b5[2]*x5M2 + b5[1]*x5M1 + b5[0]*x5M0;
  41. y5M0 = yv;
  42.  
  43. return yv;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement