我想在f2808芯片上做一个滤掉三次谐波的陷波器,如果用浮点进行运算则输出没有问题,如果用定点运算,输出就为0
#define lB0 16560587
#define lB1 -33075803
#define lB2 16560587
#define lA1 -33075803
#define lA2 16343958
long long lBalanceBRFXn;
long long lBalanceBRFYn;
long long lBalanceBRFXn_1;
long long lBalanceBRFXn_2;
long long lBalanceBRFYn_1;
long long lBalanceBRFYn_2;
lBalanceBRFYn = (lBalanceBRFXn * lB0)>>24 + (lBalanceBRFXn_1 * lB1)>>24 + (lBalanceBRFXn_2 * lB2)>>24
- (lBalanceBRFYn_1 *lA1)>>24 - (lBalanceBRFYn_2 * lA2)>>24;
//
lBalanceBRFYn_2 = lBalanceBRFYn_1;
lBalanceBRFYn_1 = lBalanceBRFYn;
lBalanceBRFXn_2 = lBalanceBRFXn_1;
lBalanceBRFXn_1 = lBalanceBRFXn;