Commit Graph

39 Commits

Author SHA1 Message Date
77cb0bbad0 cossin: refactor and tweak
* shrink the LUT by another bit
* correctly use the octant bit to offset the dphi to LUT entry midpoint
* add more diagnistics to the unittest and rewrite it in relative units
* MSB-align phase and output to match the PLL data, dynamic range and
  remove the need for roudning bias.
* clean up the build.rs table generator a bit
2020-12-10 16:56:13 +01:00
Matt Huszagh
a82b0f3e90 trig: fix formatting 2020-12-09 15:53:56 -08:00
Matt Huszagh
4add34cf9a add cossin LUT 2020-12-09 15:40:18 -08:00
2ae0bdfd8d unwrap: comments, names 2020-12-06 17:07:38 +01:00
4cfe6ba416 pll: add note on dithering 2020-12-05 13:18:02 +01:00
974fa6e220 unwrap: clean up docs and names 2020-12-05 12:55:22 +01:00
526fea8e23 unwrap: more tests 2020-12-05 12:32:27 +01:00
941a94bbf6 dsp/pll: style 2020-12-05 11:44:09 +01:00
47806a155d
Merge branch 'master' into feature/unwrap 2020-12-05 09:58:15 +01:00
2179560a3c unwrap: add phase unwrapping tools 2020-12-05 09:56:41 +01:00
628845d356 pll: rename to just PLL 2020-12-05 08:12:07 +01:00
0072cda85f pll: add convergence test 2020-12-04 23:13:22 +01:00
Matt Huszagh
43a760e57a dsp testing: improve api for tolerance checking 2020-12-04 09:16:10 -08:00
Matt Huszagh
55e7f1f0db dsp: fix small comment grammar error 2020-12-04 09:16:10 -08:00
Matt Huszagh
0cca4589fd lockin: compute reference period from the closest 2 timestamps to the ADC sample 2020-12-04 09:16:10 -08:00
Matt Huszagh
277a5d2d81 dsp: move common test code to testing.rs file 2020-12-04 09:16:09 -08:00
Matt Huszagh
260206e4f0 dsp: implement Complex as type alias for tuple 2020-12-04 09:15:33 -08:00
Matt Huszagh
d1b7efad48 dsp: replace in_phase and quadrature with Complex 2020-12-04 09:15:13 -08:00
Matt Huszagh
fcdfcb0be7 lockin: use single iir instance for both in-phase and quadrature signals 2020-12-04 09:14:39 -08:00
Matt Huszagh
785c98f93d lockin: remove TIMESTAMP_BUFFER_SIZE constant 2020-12-04 09:14:39 -08:00
Matt Huszagh
90ef9f1e6a lockin: borrow adc samples and timestamps as slices 2020-12-04 09:14:39 -08:00
Matt Huszagh
f259d6cf65 lockin: minor variable name changes 2020-12-04 09:14:39 -08:00
Matt Huszagh
9592bb74a7 lockin: change zip order in decimate for clarity 2020-12-04 09:14:39 -08:00
Matt Huszagh
4edda09d86 lockin: change demodulate to return result instead of option 2020-12-04 09:14:39 -08:00
Matt Huszagh
da4430e912 lockin: add documentation explaining timestamp decrement 2020-12-04 09:14:39 -08:00
Matt Huszagh
3c4e83bf0f lockin: move fifo trait before use
This clarifies what it means to "push" to an array.
2020-12-04 09:14:39 -08:00
Matt Huszagh
8806feb423 lockin_low_pass: compute magnitude noise analytically 2020-12-04 09:14:39 -08:00
Matt Huszagh
8ae20009d7 add lock-in low-pass integration tests 2020-12-04 09:14:39 -08:00
Matt Huszagh
85adc8b1e1 add lockin module 2020-12-04 09:14:37 -08:00
644d85c115 pll: init 2020-12-04 10:53:36 +01:00
74349e5d68 iir: more generic math helpers, use core::intrinsics 2020-11-27 10:36:30 +01:00
ea3e343c39 cargo fmt [nfc] 2020-11-26 14:30:09 +01:00
468929690d iir: vminnm/vmaxnm 2020-11-26 14:26:44 +01:00
cc64f47004 iir: fmt [nfc] 2020-11-25 18:55:07 +01:00
38dfd48c14 iir: fix comment [nfc] 2020-11-25 17:57:24 +01:00
d9e4f6a052 iir: copy_within is better than rotate_right 2020-11-25 17:24:49 +01:00
6808d32e0f iir: document 2020-11-23 08:49:30 +01:00
Matt Huszagh
d24dfb302e dsp crate: drop version dependency and remove boilerplate from cargo 2020-11-22 10:32:40 -08:00
Matt Huszagh
3eb43c6b99 move iir to new dsp crate 2020-11-22 07:59:12 -08:00