
lab 1 code
Dependencies: CMSIS-DSP_for_STM32F746G BSP_DISCO_F746NG
Diff: signal_processing.cpp
- Revision:
- 30:debea332cdfe
- Parent:
- 29:7d3fff4ac41b
- Child:
- 31:5a0235b66851
--- a/signal_processing.cpp Wed Jan 01 23:20:43 2020 +0000 +++ b/signal_processing.cpp Fri Jan 03 20:15:03 2020 +0000 @@ -31,74 +31,75 @@ #define mic_distance 0.0211 // [m] Distance between microphones on ST32F746G #define c_sound 344 // [m/s] Speed of sound at 71 deg Fahrenheit #define Omega_S (2*PI*16000) // [rad Hz] Sample rate -#define Omega_C (2*PI*500) // [rad Hz] Carrier frequency +#define Omega_C (2*PI*2000) // [rad Hz] Carrier frequency #define omega_c 2*PI*Omega_C/Omega_S // Hilbert Transform Frequency /* ---------------------------------------------------------------------- ** FIR Coefficients buffer generated using fdatool MATLAB function. -** Fpass = 100 -** Fstop = 400 +** Fpass = 10 +** Fstop = 100 ** Order = 255 ** Type = equiripple ** Precision = Single-precision floating point ** ------------------------------------------------------------------- */ const float32_t LPF_coeffs[256] = { - -0.0007800915628,-0.0001674496889,-0.0001849002729,-0.0002029328898,-0.0002218717564, - -0.0002413307957,-0.0002615691628,-0.0002821780508,-0.0003034212859,-0.000324951252, - -0.0003471312812,-0.000369623187,-0.000392670423,-0.0004156443756,-0.0004385936772, - -0.0004611753393,-0.0004842103226,-0.0005074346554,-0.0005290624686,-0.0005512404023, - -0.0005724770599,-0.0005929443287,-0.0006127390661,-0.0006314100465,-0.0006491405657, - -0.0006653870223,-0.000680299243,-0.0006933949771,-0.0007049014093,-0.0007143636467, - -0.0007218476967,-0.0007267798646,-0.0007293550298,-0.0007292577648,-0.0007265052409, - -0.0007203418063,-0.0007115086773,-0.0006989029353,-0.0006829997874,-0.0006631698925, - -0.000639601436,-0.0006118300371,-0.0005799498758,-0.0005434799823,-0.0005025339779, - -0.0004567068536,-0.0004061603686,-0.0003504161141,-0.0002896062215,-0.0002233447594, - -0.0001518396166,-7.459068001e-05,8.225716556e-06,9.678629431e-05,0.0001911890868, - 0.0002915640071,0.0003978571913,0.0005103156436,0.0006287195138,0.0007533723838, - 0.00088403275, 0.00102098356, 0.001163926558, 0.001313094515, 0.001468220609, - 0.00162948342, 0.001796556171, 0.00196959055, 0.002148323692, 0.002332823817, - 0.002522682771, 0.002718108008, 0.002918580314, 0.003124272451, 0.003334705485, - 0.003549913643, 0.003769469913, 0.003993340768, 0.004221097566, 0.00445264997, - 0.004687562119, 0.004925743211, 0.005166693125, 0.005410279613, 0.00565600628, - 0.005903759971, 0.006152981427, 0.006403496955, 0.006654826459, 0.006906681694, - 0.007158623077, 0.00741035305, 0.007661380339, 0.007911451161, 0.00816002395, - 0.008406852372, 0.008651374839, 0.008893367834, 0.009132288396, 0.009367863648, - 0.00959957391, 0.00982714165, 0.01005008724, 0.01026809961, 0.01048072334, - 0.01068769302, 0.01088850573, 0.01108295284, 0.01127053425, 0.01145104971, - 0.01162407082, 0.01178936474, 0.01194655988, 0.01209541038, 0.01223561913, - 0.01236695051, 0.01248912979, 0.01260196976, 0.01270521339, 0.01279872097, - 0.01288224943, 0.01295570657, 0.01301891916, 0.01307178196, 0.01311419997, - 0.01314606518, 0.01316735335, 0.01317800116, 0.01317800116, 0.01316735335, - 0.01314606518, 0.01311419997, 0.01307178196, 0.01301891916, 0.01295570657, - 0.01288224943, 0.01279872097, 0.01270521339, 0.01260196976, 0.01248912979, - 0.01236695051, 0.01223561913, 0.01209541038, 0.01194655988, 0.01178936474, - 0.01162407082, 0.01145104971, 0.01127053425, 0.01108295284, 0.01088850573, - 0.01068769302, 0.01048072334, 0.01026809961, 0.01005008724, 0.00982714165, - 0.00959957391, 0.009367863648, 0.009132288396, 0.008893367834, 0.008651374839, - 0.008406852372, 0.00816002395, 0.007911451161, 0.007661380339, 0.00741035305, - 0.007158623077, 0.006906681694, 0.006654826459, 0.006403496955, 0.006152981427, - 0.005903759971, 0.00565600628, 0.005410279613, 0.005166693125, 0.004925743211, - 0.004687562119, 0.00445264997, 0.004221097566, 0.003993340768, 0.003769469913, - 0.003549913643, 0.003334705485, 0.003124272451, 0.002918580314, 0.002718108008, - 0.002522682771, 0.002332823817, 0.002148323692, 0.00196959055, 0.001796556171, - 0.00162948342, 0.001468220609, 0.001313094515, 0.001163926558, 0.00102098356, - 0.00088403275,0.0007533723838,0.0006287195138,0.0005103156436,0.0003978571913, - 0.0002915640071,0.0001911890868,9.678629431e-05,8.225716556e-06,-7.459068001e-05, - -0.0001518396166,-0.0002233447594,-0.0002896062215,-0.0003504161141,-0.0004061603686, - -0.0004567068536,-0.0005025339779,-0.0005434799823,-0.0005799498758,-0.0006118300371, - -0.000639601436,-0.0006631698925,-0.0006829997874,-0.0006989029353,-0.0007115086773, - -0.0007203418063,-0.0007265052409,-0.0007292577648,-0.0007293550298,-0.0007267798646, - -0.0007218476967,-0.0007143636467,-0.0007049014093,-0.0006933949771,-0.000680299243, - -0.0006653870223,-0.0006491405657,-0.0006314100465,-0.0006127390661,-0.0005929443287, - -0.0005724770599,-0.0005512404023,-0.0005290624686,-0.0005074346554,-0.0004842103226, - -0.0004611753393,-0.0004385936772,-0.0004156443756,-0.000392670423,-0.000369623187, - -0.0003471312812,-0.000324951252,-0.0003034212859,-0.0002821780508,-0.0002615691628, - -0.0002413307957,-0.0002218717564,-0.0002029328898,-0.0001849002729,-0.0001674496889, - -0.0007800915628 + 0.007104042452,0.0006973274867,0.0007323734462,0.0007667868049,0.0008037738735, + 0.0008398960927,0.0008782913792,0.0009155147709,0.0009549160604,0.0009931699606, + 0.001033760724, 0.001073651598, 0.001116432832, 0.001159087871, 0.001204611151, + 0.001248990768, 0.001294256072, 0.001336314948, 0.001380768954, 0.00143639138, + 0.001479929546, 0.001529163332, 0.001579547534, 0.001628990169, 0.001680716057, + 0.001731572906, 0.001784725231, 0.001837128773, 0.001891752472, 0.001945362659, + 0.002000829903, 0.002055054298, 0.002111451235, 0.002167258877, 0.002225656994, + 0.00228298991, 0.002341142856, 0.002397627104, 0.002459470183, 0.002516909502, + 0.002577944659, 0.002637568163, 0.002699105535, 0.002759578172, 0.002821756992, + 0.002882712055, 0.002945428248, 0.003007095773, 0.003070619656, 0.00313297566, + 0.003196678124, 0.003258993849, 0.003322744276, 0.003385637654, 0.003450219054, + 0.003513017204, 0.003576596035, 0.003640421201, 0.003704034258, 0.003767020069, + 0.003830909962, 0.00389353768, 0.00395733444, 0.004019823391, 0.004083196633, + 0.004145130981, 0.004207855556, 0.004269362427, 0.004331791773, 0.004392801784, + 0.004454457201, 0.004514472093, 0.004575279541, 0.004634896293, 0.004694812, + 0.004752826411, 0.004812198691, 0.004869329743, 0.004927231465, 0.004983349238, + 0.005039713811, 0.00509452261, 0.005149625242, 0.005203116219, 0.005256726872, + 0.005308494903, 0.005360371433, 0.005410598125, 0.005460814573, 0.00550937932, + 0.0055576046, 0.005604189355, 0.005650800653, 0.005695586558, 0.005739701446, + 0.005782630295, 0.005824764259, 0.00586552918, 0.005905705504, 0.005944130477, + 0.005981951021, 0.00601811707, 0.006053663325, 0.00608762214, 0.006120662671, + 0.006152128801, 0.006182731595, 0.006211698055, 0.00623987196, 0.006266170647, + 0.006291479338, 0.006315360311, 0.006338228006, 0.006359170191, 0.006379307248, + 0.00639748713, 0.006414768752, 0.006430387963, 0.00644480763, 0.006457572803, + 0.006469102111, 0.006479041651, 0.006487841718, 0.006494853646, 0.006500702817, + 0.00650490867, 0.00650779251, 0.006509374361, 0.006509374361, 0.00650779251, + 0.00650490867, 0.006500702817, 0.006494853646, 0.006487841718, 0.006479041651, + 0.006469102111, 0.006457572803, 0.00644480763, 0.006430387963, 0.006414768752, + 0.00639748713, 0.006379307248, 0.006359170191, 0.006338228006, 0.006315360311, + 0.006291479338, 0.006266170647, 0.00623987196, 0.006211698055, 0.006182731595, + 0.006152128801, 0.006120662671, 0.00608762214, 0.006053663325, 0.00601811707, + 0.005981951021, 0.005944130477, 0.005905705504, 0.00586552918, 0.005824764259, + 0.005782630295, 0.005739701446, 0.005695586558, 0.005650800653, 0.005604189355, + 0.0055576046, 0.00550937932, 0.005460814573, 0.005410598125, 0.005360371433, + 0.005308494903, 0.005256726872, 0.005203116219, 0.005149625242, 0.00509452261, + 0.005039713811, 0.004983349238, 0.004927231465, 0.004869329743, 0.004812198691, + 0.004752826411, 0.004694812, 0.004634896293, 0.004575279541, 0.004514472093, + 0.004454457201, 0.004392801784, 0.004331791773, 0.004269362427, 0.004207855556, + 0.004145130981, 0.004083196633, 0.004019823391, 0.00395733444, 0.00389353768, + 0.003830909962, 0.003767020069, 0.003704034258, 0.003640421201, 0.003576596035, + 0.003513017204, 0.003450219054, 0.003385637654, 0.003322744276, 0.003258993849, + 0.003196678124, 0.00313297566, 0.003070619656, 0.003007095773, 0.002945428248, + 0.002882712055, 0.002821756992, 0.002759578172, 0.002699105535, 0.002637568163, + 0.002577944659, 0.002516909502, 0.002459470183, 0.002397627104, 0.002341142856, + 0.00228298991, 0.002225656994, 0.002167258877, 0.002111451235, 0.002055054298, + 0.002000829903, 0.001945362659, 0.001891752472, 0.001837128773, 0.001784725231, + 0.001731572906, 0.001680716057, 0.001628990169, 0.001579547534, 0.001529163332, + 0.001479929546, 0.00143639138, 0.001380768954, 0.001336314948, 0.001294256072, + 0.001248990768, 0.001204611151, 0.001159087871, 0.001116432832, 0.001073651598, + 0.001033760724,0.0009931699606,0.0009549160604,0.0009155147709,0.0008782913792, + 0.0008398960927,0.0008037738735,0.0007667868049,0.0007323734462,0.0006973274867, + 0.007104042452 }; + /* ------------------------------------------------------------------- * Declare State buffer of size (numTaps + blockSize - 1) * ------------------------------------------------------------------- */